123456789_123456789_123456789_123456789_123456789_

Class: Mongo::Crypt::ExplicitDecryptionContext Private

Do not use. This class is for internal use only.
Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
self, Context, Forwardable
Instance Chain:
self, Context
Inherits: Mongo::Crypt::Context
Defined in: lib/mongo/crypt/explicit_decryption_context.rb

Overview

A Context object initialized for explicit decryption

Class Method Summary

Context - Inherited

.new

Create a new Context object.

Instance Attribute Summary

Context - Inherited

Instance Method Summary

  • #bson_mode ⇒ Symbol? Internal use only

    Which BSON mode to use when creating documents from the outcome of the state machine.

Context - Inherited

#bson_mode

Which BSON mode to use when creating documents from the outcome of the state machine.

#run_state_machine

Runs the mongocrypt_ctx_t state machine and handles all I/O on behalf of.

#state

Returns the state of the mongocrypt_ctx_t.

#azure_access_token

Returns an Azure access token, retrieving it if necessary.

#feed_kms,
#gcp_access_token

Retrieves a GCP access token.

#mongocrypt_done

Indicate that state machine is done feeding I/O responses back to libmongocrypt.

#mongocrypt_feed

Feeds the result of a ::Mongo operation back to libmongocrypt.

#provide_collection_info, #provide_keys, #provide_markings,
#retrieve_kms_credentials

Retrieves KMS credentials for providers that are configured for automatic credentials retrieval.

Instance Method Details

#bson_modeSymbol?

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.

Returns:

  • (Symbol, nil)

    The BSON mode.

[ GitHub ]

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

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