class Tinypass::ClientBuilder

Constants

ENCODING_AES
ENCODING_OPEN
OPEN_ENC
STD_ENC
TYPE_JSON
ZIP_ENC

Public Class Methods

new(settings = '') click to toggle source
# File lib/tinypass/builder/client_builder.rb, line 12
def initialize(settings = '')
  @private_key = Tinypass.private_key
  @mask = '{'

  @builder = JsonMsgBuilder.new
  @mask << TYPE_JSON

  if settings[2] == ENCODING_OPEN
    @encoder = OpenEncoder.new
    @mask << ENCODING_OPEN
  else
    @encoder = SecureEncoder.new(@private_key)
    @mask << ENCODING_AES
  end

  @mask << 'x}'
end

Public Instance Methods

build_access_tokens(tokens) click to toggle source
# File lib/tinypass/builder/client_builder.rb, line 30
def build_access_tokens(tokens)
  tokens = AccessTokenList.new(tokens) if tokens.kind_of?(AccessToken)
  @mask + @encoder.encode(@builder.build_access_tokens(tokens))
end
build_purchase_request(requests) click to toggle source
# File lib/tinypass/builder/client_builder.rb, line 35
def build_purchase_request(requests)
  requests = Array(requests)
  @mask + @encoder.encode(@builder.build_purchase_requests(requests))
end