DurableOrchestrationContext class
Fornece funcionalidade para código de aplicativo implementando uma operação de orquestração.
Propriedades
| current |
Obtém a data/hora atual de uma forma segura para uso pelas funções do orquestrador. Esse valor de data/hora é derivado do histórico de orquestração. Ele sempre retorna o mesmo valor em pontos específicos no código de função do orquestrador, tornando-o determinístico e seguro para reprodução. |
| custom |
Status personalizado para a orquestração |
| instance |
A ID da instância de orquestração atual. O ID da instância é gerado e corrigido quando a função orchestrator é agendada. Ele pode ser gerado automaticamente, caso em que é formatado como um GUID, ou pode ser especificado pelo usuário com qualquer formato. |
| is |
Obtém um valor que indica se a função orchestrator está sendo reproduzida no momento. Essa propriedade é útil quando há lógica que precisa ser executada somente quando a função orchestrator não está replaying. Por exemplo, certos tipos de log de aplicativos podem se tornar muito barulhentos quando duplicados como parte da repetição da função do orquestrador. O código do orquestrador pode verificar se a função está sendo reproduzida e, em seguida, emitir as instruções de log quando esse valor for |
| parent |
A ID da orquestração pai da instância de suborquestração atual. O valor estará disponível apenas em sub-orquestrações. O ID da instância pai é gerado e corrigido quando a função do orquestrador pai é agendada. Ele pode ser gerado automaticamente, caso em que é formatado como um GUID, ou pode ser especificado pelo usuário com qualquer formato. |
| Task | Ponto de entrada para métodos para lidar com coleções de ações pendentes representadas por instâncias de de tarefas. Para uso em operações de paralelização. |
Métodos
| call |
Programa uma função de atividade chamada |
| call |
Programa uma função de atividade chamada |
| call |
Chama uma operação em uma entidade, passando um argumento, e aguarda que ela seja concluída. |
| call |
Programa uma chamada HTTP durável para o ponto de extremidade especificado. |
| call |
Programa uma função de orquestração chamada |
| call |
Programa uma função de orquestrador chamada |
| continue |
Reinicia a orquestração limpando sua história. |
| create |
Cria um temporizador durável que expira em um momento especificado. Todos os temporizadores duráveis criados usando esse método devem expirar ou ser cancelados usando |
| get |
Obtém a entrada da função orquestrador atual como um valor desserializado. |
| new |
Cria um novo GUID que é seguro para reprodução dentro de uma orquestração ou operação. A implementação padrão desse método cria um UUID baseado em nome usando o algoritmo da RFC 4122 §4.3. A entrada de nome usada para gerar esse valor é uma combinação do ID da instância de orquestração e um número de sequência gerenciado internamente. |
| set |
Define o status serializável em JSON da função orquestradora atual. O valor O valor |
| signal |
Envie uma operação de sinal para uma Entidade Durável, passando um argumento, sem esperar por uma resposta. Uma operação de fogo e esquecimento. |
| wait |
Aguarda de forma assíncrona que um evento seja gerado com o nome Os clientes externos podem elevar eventos para uma instância de orquestração em espera usando |
Detalhes de Propriedade
currentUtcDateTime
Obtém a data/hora atual de uma forma segura para uso pelas funções do orquestrador.
Esse valor de data/hora é derivado do histórico de orquestração. Ele sempre retorna o mesmo valor em pontos específicos no código de função do orquestrador, tornando-o determinístico e seguro para reprodução.
currentUtcDateTime: Date
Valor de Propriedade
Date
customStatus
Status personalizado para a orquestração
customStatus: unknown
Valor de Propriedade
unknown
instanceId
A ID da instância de orquestração atual.
O ID da instância é gerado e corrigido quando a função orchestrator é agendada. Ele pode ser gerado automaticamente, caso em que é formatado como um GUID, ou pode ser especificado pelo usuário com qualquer formato.
instanceId: string
Valor de Propriedade
string
isReplaying
Obtém um valor que indica se a função orchestrator está sendo reproduzida no momento.
Essa propriedade é útil quando há lógica que precisa ser executada somente quando a função orchestrator não está replaying. Por exemplo, certos tipos de log de aplicativos podem se tornar muito barulhentos quando duplicados como parte da repetição da função do orquestrador. O código do orquestrador pode verificar se a função está sendo reproduzida e, em seguida, emitir as instruções de log quando esse valor for false.
isReplaying: boolean
Valor de Propriedade
boolean
parentInstanceId
A ID da orquestração pai da instância de suborquestração atual. O valor estará disponível apenas em sub-orquestrações.
O ID da instância pai é gerado e corrigido quando a função do orquestrador pai é agendada. Ele pode ser gerado automaticamente, caso em que é formatado como um GUID, ou pode ser especificado pelo usuário com qualquer formato.
parentInstanceId: undefined | string
Valor de Propriedade
undefined | string
Task
Ponto de entrada para métodos para lidar com coleções de ações pendentes representadas por instâncias de de tarefas. Para uso em operações de paralelização.
Task: { all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }
Valor de Propriedade
{ all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }
Detalhes de Método
callActivity(string, unknown)
Programa uma função de atividade chamada name para execução.
function callActivity(name: string, input?: unknown): Task
Parâmetros
- name
-
string
O nome da função de atividade a ser chamada.
- input
-
unknown
A entrada serializável por JSON para passar para a função de atividade.
Devoluções
Uma Tarefa Durável que é concluída quando a função de atividade chamada é concluída ou falha.
callActivityWithRetry(string, RetryOptions, unknown)
Programa uma função de atividade chamada name para execução com opções de repetição.
function callActivityWithRetry(name: string, retryOptions: RetryOptions, input?: unknown): Task
Parâmetros
- name
-
string
O nome da função de atividade a ser chamada.
- retryOptions
- RetryOptions
As opções de repetição para a função de atividade.
- input
-
unknown
A entrada serializável por JSON para passar para a função de atividade.
Devoluções
callEntity(EntityId, string, unknown)
Chama uma operação em uma entidade, passando um argumento, e aguarda que ela seja concluída.
function callEntity(entityId: EntityId, operationName: string, operationInput?: unknown): Task
Parâmetros
- entityId
- EntityId
A entidade de destino.
- operationName
-
string
O nome da operação.
- operationInput
-
unknown
A entrada para a operação.
Devoluções
callHttp(CallHttpOptions)
Programa uma chamada HTTP durável para o ponto de extremidade especificado.
function callHttp(options: CallHttpOptions): Task
Parâmetros
- options
- CallHttpOptions
O objeto de opções HTTP
Devoluções
callSubOrchestrator(string, unknown, string)
Programa uma função de orquestração chamada name para execução.
function callSubOrchestrator(name: string, input?: unknown, instanceId?: string): Task
Parâmetros
- name
-
string
O nome da função orquestradora a ser chamada.
- input
-
unknown
A entrada serializável em JSON para passar para a função de orquestrador.
- instanceId
-
string
Um ID exclusivo a ser usado para a instância de suborquestração.
Se instanceId não for especificado, a extensão gerará um id no formato <calling orchestrator instance ID>:<#>
Devoluções
callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)
Programa uma função de orquestrador chamada name para execução com opções de repetição.
function callSubOrchestratorWithRetry(name: string, retryOptions: RetryOptions, input?: unknown, instanceId?: string): Task
Parâmetros
- name
-
string
O nome da função orquestradora a ser chamada.
- retryOptions
- RetryOptions
As opções de repetição para a função orchestrator.
- input
-
unknown
A entrada serializável em JSON para passar para a função de orquestrador.
- instanceId
-
string
Um ID exclusivo a ser usado para a instância de suborquestração.
Devoluções
continueAsNew(unknown)
Reinicia a orquestração limpando sua história.
function continueAsNew(input: unknown)
Parâmetros
- input
-
unknown
Os dados serializáveis em JSON com os quais reinicializar a instância.
createTimer(Date)
Cria um temporizador durável que expira em um momento especificado.
Todos os temporizadores duráveis criados usando esse método devem expirar ou ser cancelados usando TimerTask.cancel() antes que a função orchestrator seja concluída. Caso contrário, a estrutura subjacente manterá a instância ativa até que o temporizador expire.
function createTimer(fireAt: Date): TimerTask
Parâmetros
- fireAt
-
Date
A hora em que o temporizador deve expirar.
Devoluções
Um TimerTask que é concluído quando o temporizador durável expira.
getInput<T>()
Obtém a entrada da função orquestrador atual como um valor desserializado.
function getInput<T>(): T
Devoluções
T
newGuid(string)
Cria um novo GUID que é seguro para reprodução dentro de uma orquestração ou operação.
A implementação padrão desse método cria um UUID baseado em nome usando o algoritmo da RFC 4122 §4.3. A entrada de nome usada para gerar esse valor é uma combinação do ID da instância de orquestração e um número de sequência gerenciado internamente.
function newGuid(input: string): string
Parâmetros
- input
-
string
usado para gerar o GUID exclusivo
Devoluções
string
setCustomStatus(unknown)
Define o status serializável em JSON da função orquestradora atual.
O valor customStatusObject é serializado para JSON e será disponibilizado para as APIs de consulta de status de orquestração. O valor JSON serializado não deve exceder 16 KB de texto codificado UTF-16.
O valor customStatusObject serializado será disponibilizado para as APIs acima mencionadas após a próxima instrução yield ou return.
function setCustomStatus(customStatusObject: unknown)
Parâmetros
- customStatusObject
-
unknown
O valor serializável por JSON a ser usado como status personalizado da função orchestrator.
signalEntity(EntityId, string, unknown)
Envie uma operação de sinal para uma Entidade Durável, passando um argumento, sem esperar por uma resposta. Uma operação de fogo e esquecimento.
function signalEntity(entityId: EntityId, operationName: string, operationInput?: unknown)
Parâmetros
- entityId
- EntityId
ID da entidade de destino.
- operationName
-
string
O nome da operação.
- operationInput
-
unknown
(opcional) entrada para a operação.
waitForExternalEvent(string)
Aguarda de forma assíncrona que um evento seja gerado com o nome name e retorna os dados do evento.
Os clientes externos podem elevar eventos para uma instância de orquestração em espera usando raiseEvent().
function waitForExternalEvent(name: string): Task
Parâmetros
- name
-
string
O nome do evento externo a ser aguardado.
Devoluções
uma Tarefa que é concluída quando um evento externo do nome especificado é recebido