Class: CyberSourceMergedSpec::CreditController

Inherits:
BaseController show all
Defined in:
lib/cyber_source_merged_spec/controllers/credit_controller.rb

Overview

CreditController

Constant Summary

Constants inherited from BaseController

BaseController::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseController

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseController

#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters

Constructor Details

This class inherits a constructor from CyberSourceMergedSpec::BaseController

Instance Method Details

#create_credit(create_credit_request) ⇒ ApiResponse

POST to the credit resource to credit funds to a specified credit card. TODO: type description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/cyber_source_merged_spec/controllers/credit_controller.rb', line 13

def create_credit(create_credit_request)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/pts/v2/credits',
                                 Server::DEFAULT)
               .body_param(new_parameter(create_credit_request)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(PtsV2CreditsPost201Response.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Invalid request.',
                             PtsV2CreditsPost400ResponseException)
                .local_error('502',
                             'Unexpected system error or system timeout.',
                             PtsV2CreditsPost502ResponseException))
    .execute
end