Um identificador exclusivo (UID) é associado a cada chamada no gerenciador de plug-in.
O UID facilita a criação de log, a detecção de recursão infinito e a preservação de estado entre as chamadas de método preExit e postExit, conforme ilustrado no cenário mostrado a seguir.
Este cenário mostra uma ocorrência de recursão infinito:
Entretanto, na primeira etapa, o método preExit do gerenciador de plug-in insere um UID no objeto Context do objeto de dados. O valor do UID é um objeto List ao qual um novo UID é anexado durante a segunda chamada.
Os assinantes são responsáveis por verificar para evitar recursão infinito pelas seguintes razões:
É possível usar o mesmo UID para a preservação de estado entre várias chamadas do assinante. Se o assinante chamar um novo emissor de tópico, você deverá copiar o UID de volta no novo objeto de dados para evitar recursão infinito. A preservação de estado permite a um assinante correlacionar a chamada de método preExit com a chamada de método postExit.