Class: Mongo::Crypt::ExplicitDecryptionContext Private

Inherits:
Context
  • Object
show all
Defined in:
lib/mongo/crypt/explicit_decryption_context.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

A Context object initialized for explicit decryption

Instance Attribute Summary

Attributes inherited from Context

#ctx_p

Instance Method Summary collapse

Methods inherited from Context

#run_state_machine, #state

Constructor Details

#initialize(mongocrypt, io, doc) ⇒ ExplicitDecryptionContext

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Create a new ExplicitDecryptionContext object



34
35
36
37
38
39
40
# File 'lib/mongo/crypt/explicit_decryption_context.rb', line 34

def initialize(mongocrypt, io, doc)
  super(mongocrypt, io)

  # Initialize the underlying mongocrypt_ctx_t object to perform
  # explicit decryption
  Binding.ctx_explicit_decrypt_init(self, doc)
end

Instance Method Details

#bson_modeSymbol?

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Which BSON mode to use when creating documents from the outcome of the state machine. The returned value is based on the Mongo::Config.csfle_convert_to_ruby_types option.



47
48
49
# File 'lib/mongo/crypt/explicit_decryption_context.rb', line 47

def bson_mode
  Mongo::Config.csfle_convert_to_ruby_types ? nil : :bson
end