module Aws::RpcV2
@api private
Public Class Methods
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 37 def decode(bytes) bytes.force_encoding(Encoding::BINARY) @engine.decode(bytes) end
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 33 def encode(data) @engine.encode(data) end
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 28 def engine set_default_engine unless @engine @engine end
@return [Class] Returns the default engine.
One of: * {CborEngine}
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 19 def engine=(engine) @engine = Class === engine ? engine : load_engine(engine) end
@param [Symbol,Class] engine
Must be one of the following values: * :cbor
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 42 def set_default_engine [:cbor].each do |name| @engine ||= try_load_engine(name) end unless @engine raise 'Unable to find a compatible cbor library.' end end
Private Class Methods
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 54 def load_engine(name) require "aws-sdk-core/rpc_v2/#{name}_engine" const_name = name[0].upcase + name[1..-1] + 'Engine' const_get(const_name) end
Source
# File lib/aws-sdk-core/rpc_v2.rb, line 60 def try_load_engine(name) load_engine(name) rescue LoadError false end