Classe RealmObject
Nesta página
io.realm
Interfaces implementadas:
No Realm, você define suas classes RealmObject subclassificando RealmObject e adicionando campos para serem persistidos. Em seguida, você cria seus objetos dentro de um Realm e usa suas subclasses personalizadas em vez de usar a classe RealmObject diretamente. Um processador de anotações criará uma classe proxy para sua subclasse do RealmObject.
Os seguintes tipos de dados de campo são aceitos:
boolean/Boolean
curto/curto
int/Integer
longo/longo
flutuar/flutuar
duplo/duplo
byte[]
String
Data
UUID
org.bson.types.Decimal128
org.bson.types.ObjectId
Qualquer subclasse de RealmObject
Lista de domínios
Dicionário Realm
Os tipos short
, int
e long
são mapeados para long
ao armazenar dentro de um Realm.
A única restrição que um RealmObject tem é que os campos não podem ser finais ou temporários. Qualquer método, bem como campos públicos, são permitidos. Ao fornecer construtores personalizados, um construtor público sem argumentos deve ser declarado.
Os campos anotados com io.realm.annotations.Ignore não têm essas restrições e não exigem um getter ou setter.
O Realm criará índices para campos anotados com io.realm.annotations.Index . Isso acelerará as query, mas terá um impacto negativo nas inserções e atualizações.
Um RealmObject não pode ser passado entre threads diferentes.
Construtores
Construtor e descrição |
---|
RealmObject () |
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
public static void | Adiciona um ouvinte de alterações a um RealmObject que será acionado se qualquer campo de valor ou campo RealmObject referenciado for alterado ou se o próprio campo RealmList for alterado. |
public static void | Adiciona um ouvinte de alterações a um RealmObject para obter informações detalhadas sobre as alterações. |
public final void | Adiciona um ouvinte de alterações a esse RealmObject que será acionado se qualquer campo de valor ou campo RealmObject referenciado for alterado ou se o próprio campo RealmList for alterado. |
public final void | Adiciona um ouvinte de alterações a este RealmObject para obter informações detalhadas sobre as alterações. |
public static <any> | Retorna um Rx Observable que monitora as alterações neste RealmObject. |
public final <any> | asChangesetObservable <E >() Retorna um Rx Observable que monitora as alterações neste RealmObject. |
public static <any> | Retorna um RxJava Flowable que monitora as alterações neste RealmObject. |
public final <any> | asFlowable <E >() Retorna um RxJava Flowable que monitora as alterações neste RealmObject. |
public static void | Exclui o objeto do Realm com o qual ele está associado no momento. |
public final void | Exclui o objeto do Realm ao qual está associado no momento. |
public static E | Retorna um snapshot congelado deste objeto. |
public final E | freeze <E >() Retorna um snapshot congelado deste objeto. |
public static Realm | retorna a Instância de Realm onde o |
getRealm () Retorna a instância do Realm onde este RealmObject pertence. | |
public static boolean | Retorna se este RealmObject está congelado ou não. |
public final boolean | isFrozen () Retorna se este RealmObject está congelado ou não. |
public static boolean | Verifica se a query usada para localizar este RealmObject foi concluída. |
public final boolean | isLoaded () Verifica se a query usada para localizar este RealmObject foi concluída. |
public static boolean | Verifica se este objeto é managed pelo Realm. |
booleanopúblico | isManaged () Verifica se este objeto é managed pelo Realm. |
public static boolean | Verifica se o RealmObject ainda é válido para uso, ou seja, o RealmObject não foi excluído nem o io.realm.Realm foi fechado. |
public final boolean | isValid () Verifica se o RealmObject ainda é válido para uso, ou seja, o RealmObject não foi excluído nem o io.realm.Realm foi fechado. |
public static boolean | Cria um bloqueio de query assíncrono. |
public final boolean | load () Cria um bloqueio de query assíncrono. |
public static void | Remove todos os ouvintes registrados do RealmObject fornecido. |
public final void | Remove todos os ouvintes registrados. |
public static void | Remove um ouvinte registrado anteriormente no RealmObject fornecido. |
public static void | Remove um ouvinte registrado anteriormente no RealmObject fornecido. |
public final void | Remove um ouvinte registrado anteriormente. |
public final void | Remove um ouvinte registrado anteriormente. |
Métodos herdados
Métodos herdados da classe java.lang.Object :
getClass
,hashCode
,equals
,clone
,toString
,notify
,notifyAll
,wait
,wait
,wait
,finalize
Detalhes do construtor
public RealmObject () |
---|
Detalhes do método
addChangeListener
Adiciona um ouvinte de alterações a um RealmObject que será acionado se qualquer campo de valor ou campo RealmObject referenciado for alterado, ou o próprio campo RealmList for alterado.O registro de um ouvinte de alterações não impedirá que o RealmObject subjacente seja coletado o lixo. Se o RealmObject for coletado como lixo, o ouvinte de alterações deixará de ser acionado. Para evitar isso, mantenha uma referência forte pelo tempo apropriado, por exemplo, em uma variável de classe.
Parâmetros
Lança
|
Adiciona um ouvinte de alterações a um RealmObject para obter informações detalhadas sobre as alterações. O ouvinte será acionado se qualquer campo de valor ou campo RealmObject referenciado for alterado, ou o próprio campo RealmList for alterado.O registro de um ouvinte de alterações não impedirá que o RealmObject subjacente seja coletado o lixo. Se o RealmObject for coletado como lixo, o ouvinte de alterações deixará de ser acionado. Para evitar isso, mantenha uma referência forte pelo tempo apropriado, por exemplo, em uma variável de classe.
Parâmetros
Lança
|
Adiciona um ouvinte de alterações a esse RealmObject que será acionado se qualquer campo de valor ou campo RealmObject referenciado for alterado, ou o próprio campo RealmList for alterado.O registro de um ouvinte de alterações não impedirá que o RealmObject subjacente seja coletado o lixo. Se o RealmObject for coletado como lixo, o ouvinte de alterações deixará de ser acionado. Para evitar isso, mantenha uma referência forte pelo tempo apropriado, por exemplo, em uma variável de classe.
Parâmetros
Lança
|
Adiciona um ouvinte de alterações a este RealmObject para obter informações detalhadas sobre as alterações. O ouvinte será acionado se qualquer campo de valor ou campo RealmObject referenciado for alterado, ou o próprio campo RealmList for alterado.O registro de um ouvinte de alterações não impedirá que o RealmObject subjacente seja coletado o lixo. Se o RealmObject for coletado como lixo, o ouvinte de alterações deixará de ser acionado. Para evitar isso, mantenha uma referência forte pelo tempo apropriado, por exemplo, em uma variável de classe.
Parâmetros
Lança
|
asChangesetObservable
Retorna um Rx Observable que monitora as alterações neste RealmObject. Ele emitirá o RealmObject atual quando for assinado. Para cada atualização do RealmObject, um par que consiste no RealmObject e no ObjectChangeSet será enviado. O changeset será O RealmObject será emitido continuamente à medida que for atualizado - Itens emitidos a partir de Realm Observables são congelados (consulte congelar() . Isso significa que eles são imutáveis e podem ser lidos em qualquer thread. Realm Observables sempre emitem itens do thread que contém o Realm ativo. Isso significa que, se você precisar fazer processamento adicional, é recomendável observar os valores em um agendador de computação:
Parâmetros
Devoluções RxJava Observable que chama apenas Lança
|
public final <any> asChangesetObservable <E >() | |||||
---|---|---|---|---|---|
Retorna um Rx Observable que monitora as alterações neste RealmObject. Ele emitirá o RealmObject atual quando for assinado. Para cada atualização do RealmObject, um par que consiste no RealmObject e no ObjectChangeSet será enviado. O changeset será O RealmObject será emitido continuamente à medida que for atualizado - Itens emitidos a partir de Realm Observables são congelados (consulte congelar() . Isso significa que eles são imutáveis e podem ser lidos em qualquer thread. Realm Observables sempre emitem itens do thread que contém o Realm ativo. Isso significa que, se você precisar fazer processamento adicional, é recomendável observar os valores em um agendador de computação:
Devoluções RxJava Observable que chama apenas Lança
|
asFlowable
Retorna um RxJava Flowable que monitora as alterações neste RealmObject. Ele emitirá o objeto atual quando for assinado. As atualizações de objetos serão emitidas continuamente à medida que o RealmObject for atualizado - Ao encadear um RealmObject observável, use Itens emitidos de Realm Flowables são congelados (consulte congelar() . Isso significa que eles são imutáveis e podem ser lidos em qualquer thread. Os Realm Flowables sempre emitem itens do tópico que contém o Realm ativo. Isso significa que, se você precisar fazer processamento adicional, é recomendável observar os valores em um agendador de computação:
Se você quiser que o
Parâmetros
Devoluções RxJava Observable que chama apenas Lança
|
public final <any> asFlowable <E >() | |||||||||
---|---|---|---|---|---|---|---|---|---|
Retorna um RxJava Flowable que monitora as alterações neste RealmObject. Ele emitirá o objeto atual quando for assinado. As atualizações de objetos serão emitidas continuamente à medida que o RealmObject for atualizado - Ao encadear um RealmObject, use Itens emitidos de Realm Flowables são congelados (consulte congelar() . Isso significa que eles são imutáveis e podem ser lidos em qualquer thread. Os Realm Flowables sempre emitem itens do tópico que contém o Realm ativo. Isso significa que, se você precisar fazer processamento adicional, é recomendável observar os valores em um agendador de computação:
Se você quiser que o
Parâmetros de tipo
Devoluções RxJava Observable que chama apenas Lança
|
deleteFromRealm
Exclui o objeto do Realm com o qual está associado no momento. Após esse método ser chamado, o objeto será inválido e qualquer operação (leitura ou gravação) executada nele falhará com uma IllegalStateException. Lança |
public final void deleteFromRealm () |
---|
Exclui o objeto do Realm ao qual está associado no momento. Após esse método ser chamado, o objeto será inválido e qualquer operação (leitura ou gravação) executada nele falhará com uma IllegalStateException. Lança |
congelar
Retorna um snapshot congelado deste objeto. A cópia congelada pode ser lida e consultada de qualquer tópico sem lançar um IllegalStateException . Congelar um RealmObject também cria um Realm congelado que tem seu próprio ciclo de vida, mas se o Realm que gerou a collection original estiver totalmente fechado (ou seja, todas as instâncias em todos os threads estão fechadas), o Realm e o objeto congelados também serão fechados. Objetos congelados podem ser consultados normalmente, mas tentar alterá-lo de qualquer forma ou tentar registrar um ouvinte criará uma IllegalStateException . Observação: manter um grande número de objetos congelados com diferentes versões vivos pode ter um impacto negativo no tamanho do arquivo do Realm. Para evitar tal situação, é possível definir RealmConfiguration.Builder.maxNumberOfAtiveVersions(long) . Devoluções uma cópia congelada deste objeto. Lança |
public final E freeze <E >() |
---|
Retorna um snapshot congelado deste objeto. A cópia congelada pode ser lida e consultada de qualquer tópico sem lançar um IllegalStateException . Congelar um RealmObject também cria um Realm congelado que tem seu próprio ciclo de vida, mas se o Realm que gerou a collection original estiver totalmente fechado (ou seja, todas as instâncias em todos os threads estão fechadas), o Realm e o objeto congelados também serão fechados. Objetos congelados podem ser consultados normalmente, mas tentar alterá-lo de qualquer forma ou tentar registrar um ouvinte criará uma IllegalStateException . Observação: manter um grande número de objetos congelados com diferentes versões vivos pode ter um impacto negativo no tamanho do arquivo do Realm. Para evitar tal situação, é possível definir RealmConfiguration.Builder.maxNumberOfAtiveVersions(long) . Devoluções uma cópia congelada deste objeto. Lança |
getRealm
retorna a Instância de Realm onde o Você não deve chamar Realm.close() em relação à instância retornada. Parâmetros
Devoluções Instância de realm onde o Lança
|
Retorna a instância do Realm onde este RealmObject pertence. Você não deve chamar Realm.close() em relação à instância retornada. Devoluções Instância de domínio onde este objeto pertence ou Lança
|
IsFrozen
Retorna se este RealmObject está congelado ou não. Devoluções
|
public final boolean isFrozen () |
---|
Retorna se este RealmObject está congelado ou não. Devoluções
|
isLoaded
Verifica se a query usada para localizar este RealmObject foi concluída.Métodos Async como RealmQuery.findFirstAsync() retornam um RealmObject que representa o resultado futuro do RealmQuery . Pode ser considerado semelhante a um java.util.concurrent.Future a este respeito. Depois que Objetos "Null" representa
Os RealmObjects síncronos são, por definição, bloqueantes, portanto, este método sempre retornará Parâmetros
Devoluções
|
public final boolean isLoaded () | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Verifica se a query usada para localizar este RealmObject foi concluída.Métodos Async como RealmQuery.findFirstAsync() retornam um RealmObject que representa o resultado futuro do RealmQuery . Pode ser considerado semelhante a um java.util.concurrent.Future a este respeito. Depois que Objetos "Null" representa
Os RealmObjects síncronos são, por definição, bloqueantes, portanto, este método sempre retornará Devoluções
|
isManaged
Verifica se este objeto é gerenciado pelo Realm. Um objeto gerenciado é apenas um invólucro em torno dos dados no arquivo Realm subjacente. Nas threads Looper, um objeto gerenciado será atualizado ao vivo para que sempre aponte para os dados mais recentes. É possível registrar um ouvinte de alterações usando addChangeListener(RealmModel, RealmChangeListener) para ser notificado quando as alterações acontecerem. Objetos gerenciados são confinados à thread para que não possam ser acessados de outras threads além daquele que os criou. Se este método retornar É possível criar um managed objeto a partir de um objeto não gerenciado usando Realm.copyToRealm(RealmModel, ImportFlag...) . Um objeto não gerenciado pode ser criado a partir de um objeto gerenciado usando Realm.copyFromRealm(RealmModel) . Devoluções
|
public boolean isManaged () |
---|
Verifica se o objeto é gerenciado pelo Realm. Um objeto gerenciado é apenas um wrapper em torno dos dados no Arquivo de Realm subjacente. Nas threads Looper, um objeto gerenciado será atualizado ao vivo para que sempre aponte para os dados mais recentes. É possível registrar um ouvinte de alterações usando addChangeListener(RealmChangeListener) para ser notificado quando as alterações acontecerem. Objetos gerenciados são confinados à thread para que não possam ser acessados de outras threads além daquele que os criou. Se este método retornar É possível criar um managed objeto a partir de um objeto não gerenciado usando Realm.copyToRealm(RealmModel, ImportFlag...) . Um objeto não gerenciado pode ser criado a partir de um objeto gerenciado usando Realm.copyFromRealm(RealmModel) . Devoluções
|
é válido
Verifica se o RealmObject ainda é válido para uso, ou seja, o RealmObject não foi excluído nem o io.realm.Realm foi fechado. Ele sempre retornará Parâmetros
Devoluções
|
public final boolean isValid () | |||
---|---|---|---|
Verifica se o RealmObject ainda é válido para uso, ou seja, o RealmObject não foi excluído nem o io.realm.Realm foi fechado. Ele sempre retornará Note que isto pode ser utilizado para verificar a validade de certas condições como ser
Devoluções
|
carregar
Cria um bloqueio de query assíncrono. Isso também trigger os ouvintes registrados.Observação: Retornará Parâmetros
Devoluções
|
public final boolean load () |
---|
Cria um bloqueio de query assíncrono. Isso também trigger os ouvintes registrados.Observação: Retornará Devoluções
|
Remover todos os ouvintes de alterações
Remove todos os ouvintes registrados do RealmObject fornecido. Parâmetros
Lança
|
public final void removeAllChangeListeners () |
---|
Remove todos os ouvintes registrados. |
removeChangeListener
Remove um ouvinte registrado anteriormente no RealmObject fornecido. Parâmetros
Lança
|
Remove um ouvinte registrado anteriormente no RealmObject fornecido. Parâmetros
Lança
|
Remove um ouvinte registrado anteriormente. Parâmetros
Lança
|
Remove um ouvinte registrado anteriormente. Parâmetros
Lança
|