Stomp::commit

stomp_commit

(PECL stomp >= 0.1.0)

Stomp::commit -- stomp_commitValidar una transacción en curso

Descripción

Estilo orientado a objetos (método):

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

Estilo procedimental:

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

Valida una transacción en curso.

Parámetros

link

Estilo procedimental únicamente: El identificador stomp devuelto por la funciónstomp_connect().

transaction_id

La identificación de la transacción.

headers

Array asociativo que contiene los encabezados adicionales (ejemplo: receipt).

Valores devueltos

Esta función retorna true en caso de éxito o false si ocurre un error.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php

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

/* iniciar una transacción */
$stomp->begin('t1');

/* enviar un mensaje a la cola */
$stomp->send('/queue/foo', 'bar', array('transaction' => 't1'));

/* validar */
$stomp->commit('t1');

/* cerrar la conexión */
unset($stomp);

?>

Ejemplo #2 Estilo procedimental

<?php

/* conexión */
$link = stomp_connect('tcp://localhost:61613');

/* comprobar la conexión */
if (!$link) {
die(
'Connection failed: ' . stomp_connect_error());
}

/* iniciar una transacción */
stomp_begin($link, 't1');

/* enviar un mensaje a la cola 'foo' */
stomp_send($link, '/queue/foo', 'bar', array('transaction' => 't1'));

/* validar */
stomp_commit($link, 't1');

/* cerrar la conexión */
stomp_close($link);

?>

Notas

Sugerencia

Stomp es, por naturaleza, asíncrono. Una comunicación síncrona puede ser implementada añadiendo un encabezado receipt. Esto hará que los métodos no devuelvan nada hasta que el mensaje de confirmación no haya sido recibido o hasta que el tiempo de espera no sea alcanzado.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top