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á.
Iterar eventos para entidades assinadas
Use AllSubscriptionEvents()
para obter uma lista de eventos para entidades assinadas (entidades na área de assinatura do aplicativo). A função possui a assinatura a seguir:
Result<SubscriptionChangeList> AllSubscriptionEvents(Transaction& txn)
Faça a iteração das entidades com um loop, conforme demonstrado no exemplo a seguir.
exemplo Exemplo
WEAVERRUNTIME_TRY(Api::SubscriptionChangeList subscriptionChangeList, Api::AllSubscriptionEvents(transaction)); for (const Api::SubscriptionEvent& event : subscriptionChangeList.changes) { Api::Entity entity = event.entity; Api::ChangeListAction action = event.action; switch (action) { case Api::ChangeListAction::None: // insert code to handle the event break; case Api::ChangeListAction::Remove: // insert code to handle the event break; case Api::ChangeListAction::Add: // insert code to handle the event break; case Api::ChangeListAction::Update: // insert code to handle the event break; case Api::ChangeListAction::Reject: // insert code to handle the event break; } }
Tipos de eventos
None
: a entidade está na área e os dados de posição e campo não foram modificados.Remove
: a entidade foi removida da área.Add
: a entidade foi adicionada à área.Update
: a entidade está na área e foi modificada.Reject
: o aplicativo falhou ao remover a entidade da área.
nota
No caso de um evento Reject
, o aplicativo tentará a transferência novamente na próxima marcação.