Menu Docs
Página inicial do Docs
/ /
Atlas Device SDKs
/ / /

Class SyncSession

Nesta página

  • io.realm.mongodb.sync
  • Resumo da classe aninhada
  • Resumo do método
  • Métodos herdados
  • Detalhes do método
  • addConnectionChangeListener
  • addDownloadProgressListener
  • addUploadProgressListener
  • downloadAllServerChanges
  • getConfiguration
  • getConnectionState
  • getServerUrl
  • Obter estado
  • getUser
  • isConnected
  • removeConnectionChangeListener
  • removeProgressListener
  • iniciar
  • parar
  • uploadAllLocalChanges
java.lang.Object
io.realm.mongodb.sync.SyncSession

Uma sessão controla como os dados são sincronizados entre um único Realm no dispositivo e o servidor Realm no servidor de objetos de Realm. Uma sessão é criada abrindo uma instância de Realm usando uma SyncConfiguration . Depois que uma sessão for criada, ela continuará a existir até que o aplicativo seja fechado ou que todos os threads que usam essa SyncConfiguration fechem seus respectivos Realm s.

Uma sessão é controlada pelo Realm, mas pode fornecer informações adicionais em caso de erros. Estes erros são repassados no SyncSession.ErrorHandler .

Ao criar uma sessão, o Realm estabelecerá uma conexão com o servidor. Esta conexão é controlada pelo Realm e pode ser compartilhada entre várias sessões. É possível obter informações sobre a conexão usando addConnectionChangeListener(ConnectionListener) e isConnected() .

A sessão em si tem um ciclo de vida diferente da conexão subjacente. O estado da sessão pode ser encontrado usando getState() .

O objeto SyncSession é seguro para thread.

Modificador e tipo
Classe e descrição
public static final
public static interface
public static interface
Modificador e tipo
Método e descrição
public synchronized void

Adiciona um ouvinte rastreando alterações na conexão apoiando esta sessão.

public synchronized void

Adiciona um ouvinte de progresso rastreando as alterações que precisam ser baixadas do servidor de Objeto de Realm.

public synchronized void

Adiciona um ouvinte de progresso rastreando as alterações que precisam ser carregadas do dispositivo para o servidor de Objeto de Realm.

booleanopúblico

A chamada desse método será bloqueada até que todas as alterações remotas conhecidas tenham sido baixadas e aplicadas ao Realm ou até que o tempo limite especificado seja atingido.

public void

A chamada desse método será bloqueada até que todas as alterações remotas conhecidas tenham sido baixadas e aplicadas ao Realm.

Retorna a SyncConfiguration responsável por controlar a sessão.

estado de conexãopública

Obtenha o estado atual da conexão usada pela sessão, conforme definido em ConnectionState .

URIpública

Retorna o URI descrevendo o Realm remoto ao qual esta sessão se conecta e sincroniza as alterações.

Obtenha o estado da sessão atual, conforme definido em SyncSession.State .

usuáriopúblico

Retorna o usuário definido pela SyncConfiguration que é usada para se conectar ao MongoDB Realm.

booleanopúblico

Verifica se a sessão está conectada ao servidor e pode sincronizar dados.

public synchronized void

Remove um ConnectionListener registrado anteriormente.

public synchronized void

Remove um ouvinte de progresso.

public synchronized void

Tenta iniciar a sessão e habilitar a sincronização com o servidor de Objeto de Realm.

public synchronized void
stop ()

Interrompe qualquer sincronização com o servidor de Objeto de Realm até que o Realm seja reaberto depois de fechá-lo completamente.

booleanopúblico
long timeout,
)

A chamada desse método será bloqueada até que todas as alterações locais conhecidas sejam carregadas no servidor ou que o tempo limite especificado seja atingido.

public void

A chamada desse método será bloqueada até que todas as alterações locais conhecidas tenham sido carregadas no servidor.

  • Métodos herdados da classe java.lang.Object : getClass , hashCode , equals , clone , toString , notify , notifyAll , wait , wait , wait , finalize

public synchronized void addConnectionChangeListener (
)

Adiciona um ouvinte rastreando alterações na conexão apoiando esta sessão. Consulte ConnectionState para obter mais detalhes.

Parâmetros

  • listener - o ouvinte a se registrar.

Lança

Dica

Veja também:

public synchronized void addDownloadProgressListener (
)

Adiciona um ouvinte de progresso rastreando alterações que precisam ser baixadas do servidor de Objeto de Realm. O ProgressListener será acionado imediatamente quando registrado e periodicamente depois.

Parâmetros

  • mode - tipo de modo usado. Consulte ProgressMode para obter mais informações.

  • listener - o ouvinte a se registrar.

public synchronized void addUploadProgressListener (
)

Adiciona um ProgressListener rastreando alterações que precisam ser carregadas do dispositivo para o servidor Objeto de Realm. O ProgressListener será acionado imediatamente quando registrado e periodicamente depois.

Parâmetros

  • mode - tipo de modo usado. Consulte ProgressMode para obter mais informações.

  • listener - o ouvinte a se registrar.

public boolean downloadAllServerChanges (
long timeout,
)

A chamada desse método será bloqueada até que todas as alterações remotas conhecidas tenham sido baixadas e aplicadas ao Realm ou até que o tempo limite especificado seja atingido. Isso envolverá acesso à rede, portanto, a chamada desse método só deve ser feita a partir de um thread que não seja da interface do usuário. Esse método não pode ser chamado antes que o Realm seja aberto.

Devoluções

true se os dados foram baixados antes do tempo-limite. false se a operação expirou ou falhou.

Lança

A chamada desse método será bloqueada até que todas as alterações remotas conhecidas tenham sido baixadas e aplicadas ao Realm. Isso envolverá acesso à rede, portanto, a chamada desse método só deve ser feita a partir de um thread que não seja da interface do usuário.Se o dispositivo estiver off-line, esse método poderá nunca retornar.

Este método não pode ser chamado antes que a sessão tenha sido iniciada.

Lança

Retorna a SyncConfiguration responsável por controlar a sessão.

Devoluções

SyncConfiguration que define e controla esta sessão.

Obtenha o estado atual da conexão usada pela sessão, conforme definido em ConnectionState .

Devoluções

o estado da conexão usado pela sessão.

Dica

Veja também:

public URI getServerUrl ()

Retorna o URI descrevendo o Realm remoto ao qual esta sessão se conecta e sincroniza as alterações.

Devoluções

URI descrevendo o Realm remoto.

Obtenha o estado da sessão atual, conforme definido em SyncSession.State .

Observe que o estado pode mudar após esse método retornar.

Devoluções

o estado da sessão.

Dica

Veja também:

public User getUser ()

Retorna o usuário definido pela SyncConfiguration que é usada para se conectar ao MongoDB Realm.

Devoluções

O usuário costumava autenticar a sessão no MongoDB Realm.

public boolean isConnected ()

Verifica se a sessão está conectada ao servidor e pode sincronizar dados. Este é o melhor esforço de suposição. Para conservar bateria, a implementação subjacente usa pulsações para detectar se a conexão ainda está disponível. Portanto, se nenhum dado estiver sendo sincronizado ativamente e tiver passado algum tempo desde a última pulsação, a conexão poderá ter sido interrompida, mas esse método ainda retornará true .

Devoluções

true se a sessão estiver conectada e pronta para sincronizar os dados, false caso contrário, ou se estiver em processo de conexão.

public synchronized void removeConnectionChangeListener (
)

Remove um ConnectionListener registrado anteriormente.

Parâmetros

  • listener - ouvinte para remover

Lança

public synchronized void removeProgressListener (
)

Remove um ouvinte de progresso. Se o ouvinte não tiver sido registrado, esse método não fará nada.

Parâmetros

  • listener - ouvinte a ser removido.

public synchronized void start ()

Tenta iniciar a sessão e habilitar a sincronização com o Servidor de objetos de Realm . Isso acontece automaticamente ao abrir a Instância de Realm, portanto, fazê-lo manualmente só deve ser necessário se a sessão tiver sido interrompida usando stop() .

Se a sessão já tiver sido iniciada, chamar esse método não fará nada.

Uma sessão é considerada iniciada se getState() retornar State.ACTIVE . Se a sessão for State.DYING , a sessão será movida de volta para State.ACTIVE .

Dica

Veja também:

public synchronized void stop ()

Interrompe qualquer sincronização com o servidor de objetos de Realm até que o Realm seja reaberto após fechá-lo totalmente.A sincronização pode ser reativada chamando start() novamente.

Se a sessão já estiver interrompida, chamar esse método não fará nada.

public boolean uploadAllLocalChanges (
long timeout,
)

A chamada desse método será bloqueada até que todas as alterações locais conhecidas sejam carregadas no servidor ou que o tempo limite especificado seja atingido. Isso envolverá acesso à rede, portanto, a chamada desse método só deve ser feita a partir de um thread que não seja da interface do usuário. Esse método não pode ser chamado antes que o Realm seja aberto.

Devoluções

true se os dados foram carregados antes do tempo-limite. false se a operação expirou ou falhou.

Lança

public void uploadAllLocalChanges ()

A chamada desse método será bloqueada até que todas as alterações locais conhecidas tenham sido carregadas no servidor. Isso envolverá acesso à rede, portanto, a chamada desse método só deve ser feita a partir de um thread que não seja da interface do usuário.Se o dispositivo estiver off-line, esse método poderá nunca retornar.

Este método não pode ser chamado antes que o Realm seja aberto.

Lança

Voltar

SyncConfiguration.InitialFlexibleSyncSubscriptions