Conjunto de assinaturas de interface

  • Todas as interfaces:
    Iterable<Subscription>
    Todas as subinterfaces conhecidas:
    MutableSubscriptionSet

    public interface SubscriptionSet
    extends Iterable<Subscription>
    Um conjunto de assinaturas é uma visão imutável de todos os Subscriptions atuais para um determinado Realm que foi configurado para Flexible Sync.

    A Flexible Sync é uma maneira de definir quais dados são sincronizados de e para o dispositivo usando RealmQuerys. A query e seus metadados são representados por um Subscription.

    Um conjunto de assinaturas define assim todos os dados que estão disponíveis para o dispositivo e sendo sincronizados com o servidor. Se o conjunto de assinaturas encontrar um erro, por exemplo, contendo uma query inválida, todo o conjunto de assinaturas entrará em um estado SubscriptionSet.State.ERROR e nenhuma sincronização ocorrerá até que o erro seja corrigido.

    Se uma assinatura for removida, os dados correspondentes também serão, mas ela será removida apenas do dispositivo. Ele não é excluído no servidor.

    É possível modificar um conjunto de assinaturas enquanto estiver offline, mas a modificação não será aceita pelo servidor antes que getState() retorne SubscriptionSet.State.COMPLETE .

    É possível forçar o conjunto de assinaturas a ser sincronizado com o servidor usando waitForSynchronization() e suas variantes.

    • Detalhes do método

      • find

        @Nullable
        Descoberta de assinatura (query RealmQuery )
        Encontre a primeira assinatura que contém a query fornecida. É possível que várias assinaturas nomeadas contenham a mesma query.
        Parâmetros:
        query - query para pesquisar.
        Retorna:
        a primeira assinatura contendo a query ou null se nenhuma correspondência foi encontrada.
      • find

        @Nullable
        Assinatura encontrada (nome da string )
        Encontre a assinatura com um nome fornecido.
        Parâmetros:
        name - nome da assinatura a ser pesquisada.
        Retorna:
        a assinatura correspondente ou null se nenhuma assinatura com esse nome foi encontrada.
      • Tamanho

        int size()
        Retorna quantas assinaturas estão atualmente neste conjunto de assinaturas.
        Retorna:
        o número de assinaturas no conjunto de assinaturas.
      • Aguarde a sincronização

        boolean waitForSynchronization()
        Aguarde o conjunto de subscrições sincronizar com o servidor. Ele retornará quando o servidor aceitar o conjunto de query e tiver baixado dados para elas, ou se ocorrer um erro. Observe que você precisará chamar manualmente BaseRealm.refresh() ou aguardar que os ouvintes de alterações trigger para ver os dados baixados. Se ocorreu um erro, o motivo subjacente pode ser encontrado por meio getErrorMessage().
        Retorna:
        true se todas as assinaturas atuais foram aceitas pelo servidor e os dados foram baixados, ou false se ocorreu um erro.
      • Aguarde a sincronização

        boolean waitForSynchronization (Long timeOut, unidade TimeUnit )
        Aguarde o conjunto de subscrições sincronizar com o servidor. Ele retornará quando o servidor aceitar o conjunto de query e tiver baixado dados para elas, ou se ocorrer um erro. Observe que você precisará chamar manualmente BaseRealm.refresh() ou aguardar que os ouvintes de alterações trigger para ver os dados baixados. Se ocorreu um erro, o motivo subjacente pode ser encontrado por meio getErrorMessage().
        Parâmetros:
        timeOut - quanto tempo esperar para que a sincronização seja bem-sucedida ou falhe.
        unit - unidade de tempo usada para o tempo limite.
        Retorna:
        true se todas as assinaturas atuais foram aceitas pelo servidor e os dados foram baixados, ou false se ocorreu um erro.
        Lançamentos:
        RuntimeException - se o tempo limite for excedido.
      • waitForSynchronizationAsync

        RealmAsyncTask waitForSynchronizationAsync (subscriptionSet.StateChangeCallback chamada de resposta)
        Aguarde de forma assíncrona o conjunto de assinaturas sincronizar com o servidor. Ele invocará a chamada de resposta quando o servidor aceitar o conjunto de queries e tiver baixado dados para elas, ou se ocorrer um erro. Observe que você precisará chamar manualmente BaseRealm.refresh() ou aguardar que os ouvintes de alterações trigger para ver os dados baixados. Se ocorreu um erro, o motivo subjacente pode ser encontrado por meio getErrorMessage().
        Parâmetros:
        callback - chamada de resposta para acionar quando a sincronização for bem-sucedida ou falhar. Os resultados serão relatados no thread da UI.
        Retorna:
        true se todas as assinaturas atuais foram aceitas pelo servidor e os dados foram baixados, ou false se ocorreu um erro.
      • waitForSynchronizationAsync

        RealmAsyncTask waitForSynchronizationAsync (Long timeOut, unidade TimeUnit , chamada de resposta SubscriptionSet.StateChangeCallback )
        Aguarde de forma assíncrona o conjunto de assinaturas sincronizar com o servidor. A chamada de resposta é invocada quando o servidor aceita o conjunto de query e baixou dados para elas, ou se ocorrer um erro. Observe que você precisará chamar manualmente BaseRealm.refresh() ou aguardar que os ouvintes de alterações trigger para ver os dados baixados. Se ocorreu um erro, o motivo subjacente pode ser encontrado por meio getErrorMessage().
        Parâmetros:
        timeOut - quanto tempo esperar para que a sincronização seja bem-sucedida ou falhe.
        unit - unidade de tempo usada para o tempo limite.
        callback - chamada de resposta para acionar quando a sincronização for bem-sucedida ou falhar. Os resultados serão relatados no thread da UI.
        Retorna:
        true se todas as assinaturas atuais foram aceitas pelo servidor e os dados foram baixados, ou false se ocorreu um erro.
      • update

        Atualização do SubscriptionSet (ação SubscriptionSet.UpdateCallback )
        Modifique o conjunto de assinaturas. Se uma exceção for lançada durante a atualização, nenhuma alteração será aplicada. Se a atualização for bem-sucedida, esse conjunto de assinaturas será atualizado com o estado modificado.
        Parâmetros:
        action - o bloco que modifica o conjunto de assinaturas. Ele será executado no tópico do chamador.
        Retorna:
        este conjunto de assinaturas, que agora foi atualizado.
        Lançamentos:
        Exception - qualquer exceção lançada durante a atualização será propagada de volta.
      • updateAsync

        RealmAsyncTask updateAsync(Chamada de retorno SubscriptionSet.UpdateAsyncCallback )
        Modifique de forma assíncrona o conjunto de assinaturas. Se uma exceção for lançada durante a atualização, nenhuma alteração será aplicada. *
        Parâmetros:
        callback - chamada de resposta que controla a solicitação assíncrona. Sucesso ou fracasso será relatado aqui.
        Retorna:
        tarefa que controla a execução assíncrona.