Classe RealmConfiguration.Builder
Nesta página
- io.realm
- Construtores
- Resumo do método
- Métodos herdados
- Detalhes do construtor
- Detalhes do método
- addModule
- allowQueriesOnUiThread
- allowWritesOnUiThread
- ativoFile
- COMPILAR
- compactaOnLaunch
- deleteRealm IfMigrationNeeded
- Diretório
- encryptionKey
- flowFactory
- inMemory
- initialData
- maxNumberOfAtiveVersions
- migration
- módulos
- name
- Somente leitura
- rxFactory
- Versão do esquema
io.realm
Classe anexa:
RealmConfiguration.Builder usado para construir instâncias de um RealmConfiguration de forma fluente.
Construtores
Construtor e descrição |
---|
Builder () Cria uma instância do Construtor para o RealmConfiguration. |
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
public final RealmConfiguration.Builder | |
public RealmConfiguration.Builder | Define se um RealmQuery pode ou não ser iniciado a partir do thread da UI. |
public RealmConfiguration.Builder | Define se as chamadas para Realm.executeTransaction são permitidas ou não a partir do thread da UI. |
public RealmConfiguration.Builder | |
configuração pública do Realm | build () Cria o RealmConfiguration com base nos parâmetros do construtor. |
public RealmConfiguration.Builder | Define isso para determinar se o Arquivo de Realm deve ser compactado antes de retornar ao usuário. |
public RealmConfiguration.Builder | Definir isso fará com que o Realm compactará o Arquivo de Realm se o Arquivo de Realm ficar muito grande e uma quantidade significativa de espaço puder ser recuperada. |
public RealmConfiguration.Builder | Definir isso mudará o comportamento de como as exceções de migração são tratadas. |
public RealmConfiguration.Builder | |
public RealmConfiguration.Builder | Define a chave de 64 bytes usada para criptografar e descriptografar o Arquivo de Realm. |
public RealmConfiguration.Builder | Define o FlowFactory usado para criar fluxos de corrotina a partir de Objeto de Realm. |
public RealmConfiguration.Builder | inMemory () Definir isso criará um Realm na memória em vez de salvá-lo no disco. |
public RealmConfiguration.Builder | Define os dados iniciais em io.realm.Realm . |
public RealmConfiguration.Builder | Define o número máximo de versões ativas no arquivo Realm antes de uma IllegalStateException é lançado ao tentar gravar mais dados. |
public RealmConfiguration.Builder | Define o io.realm.RealmMigration a ser executado se uma migração for necessária. |
public RealmConfiguration.Builder | Substitui o(s) módulo(s) existente(s) por um ou mais RealmModule s. |
public RealmConfiguration.Builder | |
public RealmConfiguration.Builder | readOnly () Definir isso fará com que o Realm se torne somente leitura e todas as transações de gravação feitas nesse Realm falharão com uma IllegalStateException . |
public RealmConfiguration.Builder | Define o RxObservableFactory usado para criar Rx Observables a partir de objetos Realm. |
public RealmConfiguration.Builder | Define a versão do esquema do Realm. |
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 Builder () |
---|
Cria uma instância do Construtor para a RealmConfiguration. Isso usará o diretório interno do próprio aplicativo para armazenar o arquivo Realm. Isso não requer nenhuma permissão adicional. O local padrão é /data/data/<packagename>/files , mas pode mudar dependendo das implementações do fornecedor do Android. |
Detalhes do método
addModule
FIXME: Método DEBUG visível temporariamente. Adicionará um módulo condicionalmente. Adiciona um módulo a módulos já definidos. |
allowQueriesOnUiThread
Define se um RealmQuery pode ou não ser iniciado a partir do thread da UI. Por padrão, o Realm permite queries na thread principal. No entanto, ao fazer isso, seu aplicativo pode sofrer uma queda de armações ou até mesmo ANRs. Recomendamos direcionar as consultas para threads que não sejam da interface do usuário ou, alternativamente, usar RealmQuery.findAllAsync() ou RealmQuery.findFirstAsync() . |
allowWritesOnUiThread
Define se as chamadas para Realm.executeTransaction são permitidas ou não a partir do thread da UI. AVISO: o Realm não permite que transações síncronas sejam executadas na thread principal, a menos que os usuários optem explicitamente por esse método. Recomendamos redirecionar chamadas para |
ativoFile
Copia o Arquivo de Realm do caminho do arquivo de ativo fornecido. Ao abrir o Realm pela primeira vez, em vez de criar um arquivo vazio, o Arquivo de Realm será copiado do arquivo de ativo fornecido e usado em vez disso. Isso não pode ser combinado com deleteRealmIfMigrationNeeded() , pois isso resultaria na exclusão do arquivo copiado. AVISO: essa pode ser uma operação demorada e, de preferência, deve ser feita em um thread em segundo plano. Parâmetros
Lança
|
COMPILAR
public RealmConfiguration build () |
---|
Cria o RealmConfiguration com base nos parâmetros do construtor. Devoluções o RealmConfiguration criado. |
compactaOnLaunch
Define isso para determinar se o Arquivo de Realm deve ser compactado antes de retornar ao usuário. É passado o tamanho total do arquivo (dados + espaço livre) e os bytes usados pelos dados no arquivo. Parâmetros
|
public RealmConfiguration.Builder compactOnLaunch () |
---|
Definir isso fará com que o Realm compactará o Arquivo de Realm se o Arquivo de Realm ficar muito grande e uma quantidade significativa de espaço puder ser recuperada. Consulte DefaultCompactOnLaunchCallback para obter detalhes. |
deleteRealm IfMigrationNeeded
Definir isso mudará o comportamento de como as exceções de migração são tratadas. Em vez de lançar uma io.realm.Exceptions.RealmMigrationNeededException , o Realm no disco será limpo e recriado com o novo esquema de Realm. Não é possível configurar para ter um arquivo de ativo ao mesmo tempo, chamando ativoFile(string) , pois o arquivo de ativo fornecido será excluído nas migrações. AVISO! Isso resultará em perda de dados. Lança
|
Diretório
Especifica o diretório onde o Arquivo de Realm será salvo. O valor padrão é Parâmetros
Lança
|
encryptionKey
Sets the 64 byte key used to encrypt and decrypt the Realm file. Define a chave de bytes io.realm.Realm#ENCRYPTION_KEY_LENGTH usada para criptografar e descriptografar o Arquivo de Realm. |
flowFactory
Define o FlowFactory usado para criar fluxos de corrotina a partir de Objeto de Realm. O padrão de fábrica é o RealmFlowFactory . Parâmetros
|
inMemory
public RealmConfiguration.Builder inMemory () |
---|
Definir isso criará um Realm na memória em vez de salvá-lo no disco. Os Realms na memória ainda podem usar espaço em disco se a memória estiver fraca, mas todos os arquivos criados por um Realm na memória serão excluídos quando o Realm for fechado.Observe que, como os Realms na memória não são persistentes, você deve ter certeza de mantenha pelo menos uma referência não fechada ao objeto de Realm na memória com o nome específico, enquanto quiser que os dados durem. |
initialData
Define os dados iniciais em io.realm.Realm . Esta transação será executada somente pela primeira vez quando o arquivo de banco de dados for criado ou durante a migração dos dados quando Builder.deleteRealmIfMigrationNeeded() for definido. Parâmetros
|
maxNumberOfAtiveVersions
Define o número máximo de versões ativas no arquivo Realm antes de uma IllegalStateException é lançado ao tentar gravar mais dados. O Realm é capaz de lidar simultaneamente com muitas versões diferentes de Objeto de Realm. Isso pode, por exemplo, acontecer se você tiver um Realm aberto em muitos threads diferentes ou estiver congelando objetos enquanto os dados estão sendo gravados no arquivo. Em circunstâncias normais, isso não é um problema, mas se o número de versões ativas aumentar demais, isso terá um efeito negativo no tamanho do arquivo no disco. A definição desses parâmetros pode, portanto, ser usada para evitar usos do Realm que podem resultar em Realms muito grandes. Parâmetros
|
migration
Define o io.realm.RealmMigration a ser executado se uma migração for necessária. Se essa migração não atualizar o esquema no disco para o esquema de tempo de execução, um io.realm.Exceptions.RealmMigrationNeededException será lançado. |
módulos
Substitui o(s) módulo(s) existente(s) por um ou mais RealmModule s. A utilização deste método substituirá o esquema atual deste Realm pelo esquema definido pelos módulos fornecidos. Uma referência ao módulo Realm padrão contendo todas as classes Realm no projeto (mas não dependências), pode ser encontrada utilizando Realm.getDefaultModule() . A combinação do esquema do projeto do aplicativo e de uma dependência da biblioteca é feita com o seguinte código:
Parâmetros
Lança
|
name
Define o nome do Arquivo de Realm. |
Somente leitura
public RealmConfiguration.Builder readOnly () |
---|
Definir isso fará com que o Realm se torne somente leitura e todas as transações de gravação feitas nesse Realm falharão com uma IllegalStateException . Isso significa especificamente que initialData(Realm.Transaction) não funcionará em combinação com um Realm somente leitura, e isso resultará em uma IllegalStateException sendo jogada. Marcar um Realm como somente leitura se aplica apenas ao Realm nesse processo. Outros processos ainda podem escrever no Realm. |
rxFactory
Define o RxObservableFactory usado para criar Rx Observables a partir de Objeto de Realm. O padrão de fábrica é RealmObservableFactory . Parâmetros
|
Versão do esquema
Define a versão do esquema do Realm. Deve ser igual ou superior à versão do esquema do Arquivo de Realm existente, se houver. Se a versão do esquema for superior ao Realm já existente, uma migração será necessária.Se nenhum código de migração for fornecido, o Realm lançará um io.realm.Exceptions.RealmMigrationNeededException . |