Class: CyberSourceMergedSpec::Plan

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/cyber_source_merged_spec/models/plan.rb

Overview

Plan list.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(links: SKIP, id: SKIP, plan_information: SKIP, order_information: SKIP, additional_properties: nil) ⇒ Plan

Returns a new instance of Plan.



65
66
67
68
69
70
71
72
73
74
75
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 65

def initialize(links: SKIP, id: SKIP, plan_information: SKIP,
               order_information: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @links = links unless links == SKIP
  @id = id unless id == SKIP
  @plan_information = plan_information unless plan_information == SKIP
  @order_information = order_information unless order_information == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#idString

An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.

Returns:

  • (String)


22
23
24
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 22

def id
  @id
end

TODO: Write general description for this method

Returns:



14
15
16
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 14

def links
  @links
end

#order_informationOrderInformation49

An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.

Returns:



38
39
40
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 38

def order_information
  @order_information
end

#plan_informationPlanInformation2

An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.

Returns:



30
31
32
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 30

def plan_information
  @plan_information
end

Class Method Details

.from_element(root) ⇒ Object



104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 104

def self.from_element(root)
  links = XmlUtilities.from_element(root, 'Links1', Links1)
  id = XmlUtilities.from_element(root, 'id', String)
  plan_information = XmlUtilities.from_element(root, 'PlanInformation2',
                                               PlanInformation2)
  order_information = XmlUtilities.from_element(root, 'OrderInformation49',
                                                OrderInformation49)

  new(links: links,
      id: id,
      plan_information: plan_information,
      order_information: order_information,
      additional_properties: additional_properties)
end

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 78

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  links = Links1.from_hash(hash['_links']) if hash['_links']
  id = hash.key?('id') ? hash['id'] : SKIP
  plan_information = PlanInformation2.from_hash(hash['planInformation']) if
    hash['planInformation']
  order_information = OrderInformation49.from_hash(hash['orderInformation']) if
    hash['orderInformation']

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  Plan.new(links: links,
           id: id,
           plan_information: plan_information,
           order_information: order_information,
           additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



41
42
43
44
45
46
47
48
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 41

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['links'] = '_links'
  @_hash['id'] = 'id'
  @_hash['plan_information'] = 'planInformation'
  @_hash['order_information'] = 'orderInformation'
  @_hash
end

.nullablesObject

An array for nullable fields



61
62
63
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 61

def self.nullables
  []
end

.optionalsObject

An array for optional fields



51
52
53
54
55
56
57
58
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 51

def self.optionals
  %w[
    links
    id
    plan_information
    order_information
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



143
144
145
146
147
148
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 143

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} links: #{@links.inspect}, id: #{@id.inspect}, plan_information:"\
  " #{@plan_information.inspect}, order_information: #{@order_information.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



135
136
137
138
139
140
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 135

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} links: #{@links}, id: #{@id}, plan_information: #{@plan_information},"\
  " order_information: #{@order_information}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_xml_element(doc, root_name) ⇒ Object



119
120
121
122
123
124
125
126
127
128
129
130
131
132
# File 'lib/cyber_source_merged_spec/models/plan.rb', line 119

def to_xml_element(doc, root_name)
  root = doc.create_element(root_name)

  XmlUtilities.add_as_subelement(doc, root, 'Links1', links)
  XmlUtilities.add_as_subelement(doc, root, 'id', id)
  XmlUtilities.add_as_subelement(doc, root, 'PlanInformation2',
                                 plan_information)
  XmlUtilities.add_as_subelement(doc, root, 'OrderInformation49',
                                 order_information)
  XmlUtilities.add_as_subelement(doc, root, 'additional_properties',
                                 additional_properties)

  root
end