ParentChildMap
Implementação padrão de IParentChildMap. Maps pai IDs de assinatura para filhos IDs de assinatura.
Implementa: IParentChildMap
Métodos
public void AddMapping(long childId, ISubscriptionMessage parentMsg, IMessageAdapter adapter)
parentChildMap.AddMapping(childId, parentMsg, adapter)
Adicionar mapeamento pai- filho.
- childId
- Identificação da assinatura de uma criança.
- parentMsg
- Mensagem de subscrição dos pais.
- adapter
- O adaptador atribuído a esta criança.
public void Clear()
parentChildMap.Clear()
Limpa todos os estados do adaptador e repõe o estado atual para Desligado.
public IDictionary<long, IMessageAdapter> GetChild(long parentId)
result = parentChildMap.GetChild(parentId)
Obter todas as assinaturas de filhos ativos para um pai.
- parentId
- Identificação da subscrição dos pais.
Retorna: Dicionário de childId → adaptador.
public long? ProcessChildFinish(long childId, bool needParentResponse)
result = parentChildMap.ProcessChildFinish(childId, needParentResponse)
Processar um final de assinatura infantil.
- childId
- Identificação da assinatura de uma criança.
- needParentResponse
- Se uma resposta deve ser enviada para o pai.
Retorna: ID da assinatura pai, ou nulo se não for encontrado.
public long? ProcessChildOnline(long childId, bool needParentResponse)
result = parentChildMap.ProcessChildOnline(childId, needParentResponse)
Processe uma notificação online de assinatura de criança.
- childId
- Identificação da assinatura de uma criança.
- needParentResponse
- Se uma resposta deve ser enviada para o pai.
Retorna: ID da assinatura pai, ou nulo se não for encontrado.
public long? ProcessChildResponse(long childId, Exception error, bool needParentResponse, bool allError, IEnumerable<Exception> innerErrors)
result = parentChildMap.ProcessChildResponse(childId, error, needParentResponse, allError, innerErrors)
Processe uma resposta de assinatura infantil.
- childId
- Identificação da assinatura de uma criança.
- error
- Erro se houver.
- needParentResponse
- Se uma resposta deve ser enviada para o pai.
- allError
- Se todas as crianças têm erros.
- innerErrors
- Todos os erros recolhidos.
Retorna: ID da assinatura pai, ou nulo se não for encontrado.
public bool RemoveMapping(long childId)
result = parentChildMap.RemoveMapping(childId)
Remover um mapeamento de crianças.
- childId
- ID da assinatura de criança a remover.
Retorna: se removido.
public int RemoveMappings(long parentId)
result = parentChildMap.RemoveMappings(parentId)
Remover todos os mapeamentos de filhos para o pai indicado.
- parentId
- Identificação da subscrição dos pais.
Retorna: Número de mapeamentos removidos.
public bool TryGetParent(long childId, long parentId)
result = parentChildMap.TryGetParent(childId, parentId)
Tente obter o ID dos pais para uma assinatura de filhos.
- childId
- Identificação da assinatura de uma criança.
- parentId
- ID da assinatura- pai, se for encontrado.
Retorna: se encontrado.