ILookupTrackingManagerState
Armazenamento de estado para LookupTrackingMessageAdapter. Armazena pedidos de pesquisa ativos, buscas em fila e rastreamento de tempo.
Propriedades
public DateTime PreviousTime { get; set; }
value = iLookupTrackingManagerState.PreviousTime
iLookupTrackingManagerState.PreviousTime = value
Hora anterior para o cálculo do diff.
Métodos
public void AddLookup(long transactionId, ISubscriptionMessage subscription, TimeSpan timeout)
iLookupTrackingManagerState.AddLookup(transactionId, subscription, timeout)
Adiciona uma pesquisa com tempo limite.
- transactionId
- ID da transação.
- subscription
- Mensagem de assinatura (clonada).
- timeout
- Tempo de espera.
public void IncreaseTimeOut(long[] subscriptionIds)
iLookupTrackingManagerState.IncreaseTimeOut(subscriptionIds)
Aumente o tempo de espera para as assinaturas que receberam dados.
- subscriptionIds
- IDs de assinatura que receberam dados.
public IEnumerable<ValueTuple<ISubscriptionMessage, Message>> ProcessTimeouts(TimeSpan diff, long[] ignoreIds)
result = iLookupTrackingManagerState.ProcessTimeouts(diff, ignoreIds)
O tempo de processo decorrido e as verificações de tempo- limite de retorno. Remove as entradas de tempo- limite do seguimento.
- diff
- Tempo decorrido desde a última verificação.
- ignoreIds
- IDs de assinatura a ignorar (eles apenas receberam dados).
Retorna: Procuras cronometradas.
public void RemoveLookup(long transactionId)
iLookupTrackingManagerState.RemoveLookup(transactionId)
Remova uma pesquisa de localização.
- transactionId
- ID da transação.
public Message TryDequeueFromAnyType(long removingId)
result = iLookupTrackingManagerState.TryDequeueFromAnyType(removingId)
Tente desmarcar de qualquer fila de tipos após remover o ID especificado.
- removingId
- ID de transação a remover.
Retorna: Próxima mensagem em fila, ou nula.
public Message TryDequeueNext(MessageTypes type, long removingId)
result = iLookupTrackingManagerState.TryDequeueNext(type, removingId)
Tente desmarcar a próxima assinatura do tipo indicado após remover o ID especificado.
- type
- Tipo de mensagem.
- removingId
- ID de transação a remover da fila.
Retorna: Próxima mensagem em fila, ou nula.
public bool TryEnqueue(MessageTypes type, long transactionId, ISubscriptionMessage message)
result = iLookupTrackingManagerState.TryEnqueue(type, transactionId, message)
Tente colocar uma assinatura na fila por tipo.
- type
- Tipo de mensagem.
- transactionId
- ID da transação.
- message
- Mensagem de assinatura (clonada).
Retorna: Verdadeiro se a assinatura foi em fila de espera (não a primeira na fila), false se ela deve prosseguir imediatamente.
public bool TryGetAndRemoveLookup(long transactionId, ISubscriptionMessage subscription)
result = iLookupTrackingManagerState.TryGetAndRemoveLookup(transactionId, subscription)
Tente obter e remover uma pesquisa rastreada.
- transactionId
- ID da transação.
- subscription
- Encontrada assinatura, ou nula.
Retorna: Verdadeiro se encontrado e removido.