Utilice la anotación @MessageBrokerLocalEnvironmentTransform para modificar el comportamiento del método de evaluación en una clase PHP.
La anotación @MessageBrokerLocalEnvironmentTransform es parecida a la anotación @MessageBrokerSimpleTransform, pero crea una copia del árbol de entorno local en el conjunto de salida.
Si se utiliza @MessageBrokerLocalEnvironmentTransform, los nodos posteriores al nodo PHPCompute observarán cambios en el entorno local. Si no se utiliza @MessageBrokerLocalEnvironmentTransform, el nodo todavía puede modificar el entorno local y todos los nodos en el flujo (incluido los nodos anteriores) pueden observar los cambios.
El ejemplo siguiente rellena dos nuevas carpetas en el árbol de entorno local y copia el subárbol Wildcard del entorno local en el mensaje de salida:
<?php
class LocalEnvironmentTest {
/**
* Probar mensajes de entorno local.
*
* @MessageBrokerSimpleTransform
* @MessageBrokerLocalEnvironmentTransform
*/
function evaluate($output_assembly, $input_assembly) {
$output_assembly[MB_LOCAL_ENVIRONMENT]->Folder1 = 'una serie';
$output_assembly[MB_LOCAL_ENVIRONMENT]->Folder2->SubFolder =
'otra serie';
$output_assembly->XMLNSC->Message->InputLocalEnvironment =
$input_assembly[MB_LOCAL_ENVIRONMENT]->Wildcard;
}
}
?>