Stomp::abort
PHP Manual
PHP Manual»Stomp»Stomp::abort

Stomp::abort

stomp_abort

(PECL stomp >= 0.1.0)

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

Опис

Об'єктно-орієнтований стиль (method):

public function Stomp::abort(string $transaction_id, array $headers = ?): bool

Процедурний стиль:

function stomp_abort(resource $link, string $transaction_id, array $headers = ?): bool

Rolls back a transaction in progress.

Параметри

link

Тільки процедурний стиль: Ідентифікатор з'єднання Stomp, якого повертає функція stomp_connect().

transaction_id
The transaction to abort.
headers

Асоціативний масив, що містить додаткові заголовки (наприклад: "receipt").

Значення, що повертаються

Повертає true у разі успіху або false в разі помилки.

Приклади

Приклад #1 Об'єктно-орієнтований стиль

<?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);
?>

Приклад #2 Процедурний стиль

<?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);

?>

Примітки

Підказка

Stomp за своєю суттю є асинхронним. Синхронні з'єднання можна встановлювати, додавши заголовок "receipt". Це призведе до того, що методи нічого не повертатимуть, доки сервер не підтвердить отримання повідомлення або доки не мине час очікування читання.

To Top