Classe: Mongo::Crypt::Status Private
- Herda:
-
Objeto
- Objeto
- Mongo::Crypt::Status
- Definido em:
- lib/mongo/crypt/status.rb
Visão geral
Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.
Um wrapper em torno de mongocrypt_status_t, representando o status de um identificador mongocrypt_t.
Recolhimento do Resumo do método de classe
-
.from_pointer(pointer) ➤ Mongo::Crypt::Status
privado
Inicialize um objeto Status de um ponteiro existente para um objeto mongocrypt_status_t.
Recolhimento do Resumo do método de instância
-
#code ➤ inteiro
privado
Retornar o código inteiro associado ao status.
-
#initialize(pointer: nil) ➤ Status
construtor
privado
Crie um novo objeto Status.
-
#label ⇒ Symbol
privado
Retornar o rótulo do status.
-
#mensagem ➤ string
privado
Retornar a mensagem de status.
-
#ok? ➤ Booleano
privado
Verifica se o status está rotulado como :ok.
-
#create_crypt_error(KMS: false) ➤ Objeto
privado
Cria um Mongo::Error:CryptError correspondente às informações armazenadas neste status.
-
#ref ➤ FFI::Pointer
privado
Retorna a referência ao objeto mongocrypt_status_t subjacente.
-
#update(label, code, message) ➤ Mongo::Crypt::Status
privado
Defina um rótulo, código e mensagem no Status.
Detalhes do construtor
#initialize(pointer: nil) ➤ Status
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Ao inicializar um objeto Status com um ponteiro, é
Criar um novo objeto Status
recomendado que você use o #auto.from_pointer método
33 34 35 36 37 38 39 40 41 42 43 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 33 def inicializar(ponteiro: nada) # Se um ponteiro for passado, esta classe não será responsável por # destruindo esse ponteiro e desalocando dados. # # O FFI::AutoPointer usa uma estratégia de liberação personalizada para liberar automaticamente # o ponteiro quando esse objeto sair do escopo @status = pointer || FFI::AutoPointer.Novo( Vinculação.mongocrypt_status_new, Vinculação.Método(:mongocrypt_status_destroy) ) end |
Detalhes do método de classe
.from_pointer(pointer) ➤ Mongo::Crypt::Status
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Inicialize um objeto Status de um ponteiro existente para um objeto mongocrypt_status_t.
52 53 54 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 52 def auto.from_pointer(pointer) Novo(ponteiro: pointer) end |
Detalhes do método de instância
#code ➤ inteiro
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Retornar o código inteiro associado ao status
88 89 90 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 88 def código Vinculação.mongocrypt_status_code(@status) end |
#rótulo ➤ Símbolo
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Retornar o rótulo do status
81 82 83 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 81 def etiqueta Vinculação.mongocrypt_status_type(@status) end |
#mensagem ➤ string
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Retornar a mensagem de status
95 96 97 98 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 95 def = Vinculação.(@status, nada) || '' end |
#ok? ➤ Booleano
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Verifica se o status está rotulado como :ok
103 104 105 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 103 def tudo bem? Vinculação.mongocrypt_status_ok(@status) end |
#create_crypt_error(KMS: false) ➤ Objeto
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Se o parâmetro KMS for falso, o erro ainda pode ter origem em um KMS. O parâmetro KMS simplesmente força todos os erros a serem tratados como erros KMS .
Cria um Mongo::Error:CryptError correspondente às informações armazenadas neste status
Não faz nada se self.ok? é verdade
125 126 127 128 129 130 131 132 133 134 135 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 125 def create_crypt_error(KMS: false) Método se tudo bem? Erro = se KMS || etiqueta == :error_kms Erro::KmsError.Novo(, código: código) mais Erro::Criptografia de erro.Novo(, código: código) end aumentar Erro end |
#ref ➤ FFI::Pointer
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Retorna a referência ao objeto mongocrypt_status_t subjacente
111 112 113 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 111 def ref @status end |
#update(label, code, message) ➤ Mongo::Crypt::Status
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Definir um rótulo, código e mensagem no Status
63 64 65 66 67 68 69 70 71 72 73 74 75 |
# Arquivo 'lib/mongo/crypt/status.rb', linha 63 def update(etiqueta, código, ) a menos que %i[OK error_client error_kms].incluir?(etiqueta) aumentar ArgumentError.Novo( "#{rótulo} é um valor inválido para um rótulo Mongo::Crypt::Status. " + ' Aetiqueta deve ter um dos seguintes valores::ok,:error_client,:error_kms ' ) end = ? .bytesize + 1 : 0 Vinculação.mongocrypt_status_set(@status, etiqueta, código, , ) auto end |