Class: CyberSourceMergedSpec::MerchantDefinedFieldsController

Inherits:
BaseController
  • Object
show all
Defined in:
lib/cyber_source_merged_spec/controllers/merchant_defined_fields_controller.rb

Overview

MerchantDefinedFieldsController

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_merchant_defined_field_definition(reference_type, merchant_defined_field_definition_request) ⇒ ApiResponse

Create merchant defined field for a given reference type type for which merchant defined fields are to be fetched. Available values are Invoice, Purchase, Donation merchant_defined_field_definition_request Required parameter: TODO: type description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/cyber_source_merged_spec/controllers/merchant_defined_fields_controller.rb', line 43

def create_merchant_defined_field_definition(reference_type,
                                             merchant_defined_field_definition_request)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/invoicing/v2/{referenceType}/merchantDefinedFields',
                                 Server::DEFAULT)
               .template_param(new_parameter(reference_type, key: 'referenceType')
                                .is_required(true)
                                .should_encode(true))
               .body_param(new_parameter(merchant_defined_field_definition_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(CreateMerchantDefinedFieldDefinitionResponse.method(:from_hash))
                .is_api_response(true)
                .is_response_array(true)
                .local_error('400',
                             'MerchantDefinedData definition is already updated or Merchant'\
                              ' Defined Data Index is already assigned',
                             CreateMerchantDefinedFieldDefinitionException)
                .local_error('409',
                             'MerchantDefinedData definition is already updated or Merchant'\
                              ' Defined Data Index is already assigned',
                             CreateMerchantDefinedFieldDefinitionException)
                .local_error('412',
                             'Merchant has exceeded limit for type {referenceType}',
                             CreateMerchantDefinedFieldDefinitionException))
    .execute
end

#delete_merchant_defined_fields_definitions(reference_type, id) ⇒ ApiResponse

Delete a MerchantDefinedField by ID description here

Parameters:

  • reference_type (ReferenceType)

    Required parameter: TODO: type

  • id (Integer)

    Required parameter: TODO: type description here

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/cyber_source_merged_spec/controllers/merchant_defined_fields_controller.rb', line 121

def delete_merchant_defined_fields_definitions(reference_type,
                                               id)
  @api_call
    .request(new_request_builder(HttpMethodEnum::DELETE,
                                 '/invoicing/v2/{referenceType}/merchantDefinedFields/{id}',
                                 Server::DEFAULT)
               .template_param(new_parameter(reference_type, key: 'referenceType')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(id, key: 'id')
                                .is_required(true)
                                .should_encode(true))
               .header_param(new_parameter('application/json', key: 'accept')))
    .response(new_response_handler
                .is_response_void(true)
                .is_api_response(true))
    .execute
end

#get_merchant_defined_fields_definitions(reference_type) ⇒ ApiResponse

Get all merchant defined fields for a given reference type type for which merchant defined fields are to be fetched. Available values are Invoice, Purchase, Donation

Parameters:

  • reference_type (ReferenceType)

    Required parameter: The reference

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



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

def get_merchant_defined_fields_definitions(reference_type)
  @api_call
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/invoicing/v2/{referenceType}/merchantDefinedFields',
                                 Server::DEFAULT)
               .template_param(new_parameter(reference_type, key: 'referenceType')
                                .is_required(true)
                                .should_encode(true))
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .header_param(new_parameter('application/json', key: 'accept')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(GetMerchantDefinedFieldsDefinitionsResponse.method(:from_hash))
                .is_api_response(true)
                .is_response_array(true)
                .local_error('404',
                             'Merchant defined fields not found',
                             GetMerchantDefinedFieldsDefinitionsException))
    .execute
end

#put_merchant_defined_fields_definitions(reference_type, id, merchant_defined_field_core) ⇒ ApiResponse

Update a MerchantDefinedField by ID description here parameter: TODO: type description here

Parameters:

  • reference_type (ReferenceType)

    Required parameter: TODO: type

  • id (Integer)

    Required parameter: TODO: type description here

  • merchant_defined_field_core (MerchantDefinedFieldCore)

    Required

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/cyber_source_merged_spec/controllers/merchant_defined_fields_controller.rb', line 83

def put_merchant_defined_fields_definitions(reference_type,
                                            id,
                                            merchant_defined_field_core)
  @api_call
    .request(new_request_builder(HttpMethodEnum::PUT,
                                 '/invoicing/v2/{referenceType}/merchantDefinedFields/{id}',
                                 Server::DEFAULT)
               .template_param(new_parameter(reference_type, key: 'referenceType')
                                .is_required(true)
                                .should_encode(true))
               .template_param(new_parameter(id, key: 'id')
                                .is_required(true)
                                .should_encode(true))
               .body_param(new_parameter(merchant_defined_field_core)
                            .is_required(true))
               .header_param(new_parameter('application/json; charset=utf-8', 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(PutMerchantDefinedFieldsDefinitionsResponse.method(:from_hash))
                .is_api_response(true)
                .is_response_array(true)
                .local_error('400',
                             'Wrong referenceType in the path',
                             PutMerchantDefinedFieldsDefinitionsException)
                .local_error('409',
                             'MerchantDefinedData definition is already updated or Merchant'\
                              ' Defined Data Index is already assigned',
                             PutMerchantDefinedFieldsDefinitionsException))
    .execute
end