Class: Mongo::Crypt::KmsContext
Relationships & Source Files | |
Inherits: | Object |
Defined in: | lib/mongo/crypt/kms_context.rb |
Overview
Wraps a libmongocrypt mongocrypt_kms_ctx_t object. Contains information about making an HTTP request to fetch information about a KMS
data key.
Class Method Summary
-
.new(kms_ctx) ⇒ KmsContext
constructor
Create a new
KmsContext
object.
Instance Attribute Summary
-
#kms_ctx_p ⇒ FFI::Pointer
readonly
Return the pointer to the underlying mongocrypt_kms_ctx_t object.
Instance Method Summary
-
#bytes_needed ⇒ Integer
Return the number of bytes still needed by libmongocrypt to complete the request for information about the AWS data key.
-
#endpoint ⇒ String
Return the endpoint at which to make the HTTP request.
-
#feed(data)
Feed a response from the HTTP request to libmongocrypt.
-
#message ⇒ String
Return the HTTP message to send to fetch information about the relevant
KMS
data key.
Constructor Details
.new(kms_ctx) ⇒ KmsContext
Create a new KmsContext
object.
# File 'lib/mongo/crypt/kms_context.rb', line 30
def initialize(kms_ctx) @kms_ctx_p = kms_ctx end
Instance Attribute Details
#kms_ctx_p ⇒ FFI::Pointer
(readonly)
Return the pointer to the underlying mongocrypt_kms_ctx_t object.
# File 'lib/mongo/crypt/kms_context.rb', line 37
attr_reader :kms_ctx_p
Instance Method Details
#bytes_needed ⇒ Integer
Return the number of bytes still needed by libmongocrypt to complete the request for information about the AWS data key.
# File 'lib/mongo/crypt/kms_context.rb', line 58
def bytes_needed Binding.kms_ctx_bytes_needed(self) end
#endpoint ⇒ String
Return the endpoint at which to make the HTTP request.
# File 'lib/mongo/crypt/kms_context.rb', line 42
def endpoint Binding.kms_ctx_endpoint(self) end
#feed(data)
Feed a response from the HTTP request to libmongocrypt.
# File 'lib/mongo/crypt/kms_context.rb', line 65
def feed(data) Binding.kms_ctx_feed(self, data) end
#message ⇒ String
Return the HTTP message to send to fetch information about the relevant KMS
data key.
# File 'lib/mongo/crypt/kms_context.rb', line 50
def Binding. (self) end