Usuário
-
Vincula o usuário atualmente autenticado a uma nova identidade, em que a identidade é definida pela credencial especificada como um parâmetro. Isso só será bem-sucedido se esse
User
for o atualmente autenticado com o cliente do qual foi criado. Em caso de sucesso, um novo usuário será retornado com as novas credenciais vinculadas. @param credenciais OCredentials
usado para vincular o usuário a uma nova identidade. @completion Uma conclusão que eventualmente retornaResult.success(User)
com os dados do usuário ouResult.failure(Error)
.Declaração
Swift
@preconcurrency func linkUser(credentials: Credentials, _ completion: @escaping @Sendable (Result<User, Error>) -> Void)
-
Vincula o usuário atualmente autenticado a uma nova identidade, em que a identidade é definida pela credencial especificada como um parâmetro. Isso só será bem-sucedido se esse
User
for o atualmente autenticado com o cliente do qual foi criado. Em caso de sucesso, um novo usuário será retornado com as novas credenciais vinculadas. @param credenciais OCredentials
usado para vincular o usuário a uma nova identidade. @returns Um editor que eventualmente retornaResult.success
ouError
.Declaração
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) func linkUser(credentials: Credentials) -> Future<User, Error>
-
linkUser(credentials:
Assíncrono) Vincula o usuário atualmente autenticado a uma nova identidade, em que a identidade é definida pela credencial especificada como um parâmetro. Isso só será bem-sucedido se esse
User
for o atualmente autenticado com o cliente do qual foi criado. Em caso de sucesso, um novo usuário será retornado com as novas credenciais vinculadas.Declaração
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) func linkUser(credentials: Credentials) async throws -> User
Parâmetros
credentials
O
Credentials
costumava vincular o usuário a uma nova identidade.Valor de retorno
Um
User
depois de atualizar com sucesso sua identidade. -
Crie uma instância de configuração de sincronização.
Declaração
Swift
@preconcurrency func configuration<T: BSON>(partitionValue: T, clientResetMode: ClientResetMode = .recoverUnsyncedChanges(beforeReset: nil, afterReset: nil), cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration
Parâmetros
partitionValue
O valor
BSON
em que o Realm é particionado.clientResetMode
Determina o comportamento de recuperação de arquivos durante um reinício do cliente.
.recoverUnsyncedChanges
por padrão.cancelAsyncOpenOnNonFatalErrors
Por padrão, Realm.asyncOpen() incorpora erros de conexão não fatais, como uma tentativa de conexão de tempo limite, e simplesmente tenta novamente até ser bem-sucedida. Se isso estiver definido como
true
, o erro será relatado à chamada de resposta e a abertura assíncrona será cancelada. -
Crie uma instância de configuração de sincronização.
Declaração
Swift
@preconcurrency func configuration(partitionValue: AnyBSON, clientResetMode: ClientResetMode = .recoverUnsyncedChanges(beforeReset: nil, afterReset: nil), cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration
Parâmetros
partitionValue
Aceita
nil
como um valor da partição.clientResetMode
Determina o comportamento de recuperação de arquivos durante um reinício do cliente.
.recoverUnsyncedChanges
por padrão.cancelAsyncOpenOnNonFatalErrors
Por padrão, Realm.asyncOpen() incorpora erros de conexão não fatais, como uma tentativa de conexão de tempo limite, e simplesmente tenta novamente até ser bem-sucedida. Se isso estiver definido como
true
, o erro será relatado à chamada de resposta e a abertura assíncrona será cancelada. -
Os dados personalizados do usuário. Isso é configurado em seu Atlas App Services App.
Declaração
Swift
var customData: Document { get }
-
Um cliente para interagir com uma instância remota do MongoDB
Declaração
Swift
func mongoClient(_ serviceName: String) -> MongoClient
Parâmetros
serviceName
O nome do serviço MongoDB
Valor de retorno
Um
MongoClient
que é usado para interagir com um serviço MongoDB remoto -
Chame uma função do Atlas App Services com o nome e os argumentos fornecidos.
user.functions.sum([1, 2, 3, 4, 5]) { sum, error in guard case let .int64(value) = sum else { print(error?.localizedDescription) } assert(value == 15) }
O nome do membro dinâmico (
sum
no exemplo acima) está diretamente associado ao nome da função. O primeiro argumento é oBSONArray
dos argumentos a serem fornecidos à função. O segundo e último argumento é o manipulador de conclusão a ser chamado quando a chamada de função estiver concluída. Este manipulador é executado em umDispatchQueue
global não principal.Declaração
Swift
var functions: Functions { get }
-
Atualize os dados personalizados de um usuário. Isso, de fato, atualizará a sessão de autenticação do usuário. @returns Um editor que eventualmente retorna
Dictionary
com os dados do usuário ouError
.Declaração
Swift
func refreshCustomData() -> Future<[AnyHashable : Any], Error>
-
Remove o usuário Isso desconecta e destrói a sessão relacionada a esse usuário. O bloco de conclusão retornará um erro se o usuário não for encontrado ou já estiver removido. @returns Um editor que eventualmente retorna
Result.success
ouError
.Declaração
Swift
func remove() -> Future<Void, Error>
-
Desconecta o usuário atual O estado do usuário será definido como
Removed
se for um usuário anônimo ouLoggedOut
se for autenticado por um nome de usuário/senha ou clientes de autenticação de terceiros/ Se a solicitação de logout falhar, esse método ainda limpar o estado de autenticação local. @returns Um editor que eventualmente retornaResult.success
ouError
.Declaração
Swift
func logOut() -> Future<Void, Error>
-
Exclui permanentemente esse usuário do seu Atlas App Services App. O estado do usuário será definido como
Removed
e a sessão será destruída. Se a solicitação de exclusão falhar, o estado de autenticação local permanecerá intocado. @returns Um editor que eventualmente retornaResult.success
ouError
.Declaração
Swift
func delete() -> Future<Void, Error>
-
Um editor que emite um vazio toda vez que o usuário muda.
Apesar do nome, isso é realmente emitido depois que o usuário muda.
Declaração
Swift
public var objectWillChange: AnyPublisher<UserPublisher.Output, UserPublisher.Failure> { get }
-
Atualize os dados personalizados de um usuário. Isso, de fato, atualizará a sessão de autenticação do usuário. @completion Uma conclusão que eventualmente retorna
Result.success(Dictionary)
com os dados do usuário ouResult.failure(Error)
.Declaração
Swift
@preconcurrency func refreshCustomData(_ completion: @escaping @Sendable (Result<[AnyHashable : Any], Error>) -> Void)
-
refreshCustomData()
AssíncronoAtualize os dados personalizados de um usuário. Isso, de fato, atualizará a sessão de autenticação do usuário.
Declaração
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) @discardableResult func refreshCustomData() async throws -> Document
-
Crie uma instância de configuração de Flexible Sync, que pode ser usada para abrir um Realm que ofereça suporte a Flexible Sync.
Não será possível combinar a Flexible Sync e a Sincronização de Partição no mesmo aplicativo, o que significa que, se você abrir um Realm com uma configuração de Flexible Sync, não poderá abrir um Realm com uma configuração PBS e o contrário.
Declaração
Swift
public func flexibleSyncConfiguration(clientResetMode: ClientResetMode = .recoverUnsyncedChanges(), cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration
Parâmetros
clientResetMode
Determina o comportamento de recuperação de arquivos durante um reinício do cliente.
.recoverUnsyncedChanges
por padrão.cancelAsyncOpenOnNonFatalErrors
Por padrão, Realm.asyncOpen() incorpora erros de conexão não fatais, como uma tentativa de conexão de tempo limite, e simplesmente tenta novamente até ser bem-sucedida. Se isso estiver definido como
true
, o erro será relatado à chamada de resposta e a abertura assíncrona será cancelada. -
flexibleSyncConfiguration(clientResetMode:
cancelAsyncOpenOnNonFatalErrors: initialSubscriptions: rerunOnOpen: ) Crie uma instância de configuração de Flexible Sync, que pode ser usada para abrir um Realm que ofereça suporte a Flexible Sync.
Não será possível combinar a Flexible Sync e a Sincronização de Partição no mesmo aplicativo, o que significa que, se você abrir um Realm com uma configuração de Flexible Sync, não poderá abrir um Realm com uma configuração PBS e o contrário.
O uso de
rerunOnOpen
abrange os casos em que você deseja executar novamente query dinâmicas, por exemplo, intervalos de tempo.var config = user.flexibleSyncConfiguration(initialSubscriptions: { subscriptions in subscriptions.append(QuerySubscription<User>() { $0.birthdate < Date() && $0.birthdate > Calendar.current.date(byAdding: .year, value: 21)! }) }, rerunOnOpen: true)
Declaração
Swift
@preconcurrency public func flexibleSyncConfiguration(clientResetMode: ClientResetMode = .recoverUnsyncedChanges(), cancelAsyncOpenOnNonFatalErrors: Bool = false, initialSubscriptions: @escaping @Sendable (SyncSubscriptionSet) -> Void, rerunOnOpen: Bool = false) -> Realm.Configuration
Parâmetros
clientResetMode
Determina o comportamento de recuperação de arquivos durante um reinício do cliente.
.recoverUnsyncedChanges
por padrão.initialSubscriptions
Um bloco que recebe uma instância de conjunto de assinaturas, que pode ser usado para adicionar um conjunto inicial de assinaturas que serão executadas quando o Realm for aberto pela primeira vez.
rerunOnOpen
Se verdadeiro, permite executar o conjunto inicial de assinaturas especificado, em cada inicialização do aplicativo. Isso pode ser usado para executar novamente intervalos de tempo dinâmicos e outras query que exigem um novo cálculo de uma variável estática.
cancelAsyncOpenOnNonFatalErrors
Por padrão, Realm.asyncOpen() incorpora erros de conexão não fatais, como uma tentativa de conexão de tempo limite, e simplesmente tenta novamente até ser bem-sucedida. Se isso estiver definido como
true
, o erro será relatado à chamada de resposta e a abertura assíncrona será cancelada.