As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Marcadores
Às vezes, você pode querer registrar informações no histórico de fluxo de trabalho de uma execução de fluxo de trabalho específica para o seu caso de uso. Marcadores permitem que você registre no histórico de execução de fluxo de trabalho informações que podem ser usadas para qualquer finalidade personalizada ou específica de um cenário.
Para usar marcadores, um decisor usa a decisão RecordMarker, nomeia o marcador, anexa os dados desejados à decisão e notifica o Amazon SWF usando a ação RespondDecisionTaskCompleted
. O Amazon SWF recebe a solicitação, registra o marcador no histórico do fluxo de trabalho e promulga quaisquer outras decisões na solicitação. A partir desse momento, os agentes de decisão podem ver o marcador no histórico de fluxo de trabalho e usá-lo de qualquer maneira que você programar.
Por si só, registrar um marcador não inicia uma tarefa de decisão. Para evitar que a execução de fluxo de trabalho fique presa, deve ocorrer algo que dê continuidade a ela. Por exemplo, isso pode incluir o agendamento de outra tarefa de atividade pelo agente de decisão, o recebimento de um sinal pela execução de fluxo de trabalho ou a conclusão de uma tarefa de atividade anteriormente agendada.
Exemplos de marcadores incluem:
-
Um contador que conta o número de loops em um fluxo de trabalho recursivo.
-
Progresso da execução de fluxo de trabalho com base nos resultados de atividades.
-
Informações resumidas de eventos de histórico de fluxo de trabalho anteriores.
No exemplo de comércio eletrônico, você poderia adicionar uma atividade que verificasse o inventário todos os dias e incrementasse a contagem em um marcador depois de cada verificação. Em seguida, você poderia adicionar uma lógica que enviasse um e-mail ao cliente ou notificasse um gerente no momento em que a contagem excedesse cinco, sem precisar rever todo o histórico.
No exemplo a seguir, o agente de decisão conclui uma tarefa de decisão e responde com uma ação RespondDecisionTaskCompleted
que contém uma decisão RecordMarker
.
https://swf.us-east-1.amazonaws.com RespondDecisionTaskCompleted { "taskToken":"12342e17-80f6-FAKE-TASK-TOKEN32f0223", "decisions":[{ "decisionType":"RecordMarker", "recordMarkerDecisionAttributes":{ "markerName":"customer elected special shipping offer" } }, ] }
Se o Amazon SWF registrar o marcador com êxito, ele retornará uma resposta HTTP bem-sucedida semelhante à seguinte.
HTTP/1.1 200 OK
Content-Length: 0
Content-Type: application/json
x-amzn-RequestId: 6c0373ce-074c-11e1-9083-8318c48dee96