Stomp::abort

stomp_abort

(PECL stomp >= 0.1.0)

Stomp::abort -- stomp_abortRolls back a transaction in progress

Descrierea

Stil obiect-orientat (method):

public Stomp::abort ( string $transaction_id [, array $headers ] ) : bool

Stil procedural:

stomp_abort ( resource $link , string $transaction_id [, array $headers ] ) : bool

Rolls back a transaction in progress.

Parametri

link

Doar stilul procedural: Identificatorul legăturii stomp întors de stomp_connect().

transaction_id

The transaction to abort.

headers

Un tablou asociativ conținând antetele suplimentare (de exemplu: receipt).

Valorile întoarse

Întoarce valoarea TRUE în cazul succesului sau FALSE în cazul eșecului.

Note

Sfat

Stomp este în mod inerent asincron. O comunicare sincronă poate fi implementată adăugând un antet cu confirmare. Aceasta va face ca metodele să nu întoarcă nimic până când serverul confirmă primirea mesajului sau până când se atinge limita maximă de timp pentru citire.

Exemple

Example #1 Stil obiect-orientat

<?php

/* connection */
try {
    
$stomp = new Stomp('tcp://localhost:61613');
} catch(
StompException $e) {
    die(
'Connection failed: ' $e->getMessage());
}

/* begin a transaction */
$stomp->begin('t1');

/* send a message to the queue */
$stomp->send('/queue/foo''bar', array('transaction' => 't1'));

/* rollback */
$stomp->abort('t1');

/* close connection */
unset($stomp);
?>

Example #2 Stil procedural

<?php

/* connection */
$link stomp_connect('tcp://localhost:61613');

/* check connection */
if (!$link) {
    die(
'Connection failed: ' stomp_connect_error());
}

/* begin a transaction */
stomp_begin($link't1');

/* send a message to the queue 'foo' */
stomp_send($link'/queue/foo''bar', array('transaction' => 't1'));

/* rollback */
stomp_abort($link't1');

/* close connection */
stomp_close($link);

?>