Class: CyberSourceMergedSpec::Company
- Defined in:
- lib/cyber_source_merged_spec/models/company.rb
Overview
Company Model.
Instance Attribute Summary collapse
-
#address1 ⇒ String
First line in the street address of the company purchasing the product.
-
#address2 ⇒ String
Additional address information for the company purchasing the product.
-
#administrative_area ⇒ String
State or province in the address of the company purchasing the product.
-
#country ⇒ String
Country in the address of the company purchasing the product.
-
#locality ⇒ String
City in the address of the company purchasing the product.
-
#name ⇒ String
Name of the customer’s company.
-
#postal_code ⇒ String
Postal code in the address of the company purchasing the product.
Class Method Summary collapse
- .from_element(root) ⇒ Object
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(name: SKIP, address1: SKIP, address2: SKIP, locality: SKIP, administrative_area: SKIP, postal_code: SKIP, country: SKIP, additional_properties: nil) ⇒ Company
constructor
A new instance of Company.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
- #to_xml_element(doc, root_name) ⇒ Object
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(name: SKIP, address1: SKIP, address2: SKIP, locality: SKIP, administrative_area: SKIP, postal_code: SKIP, country: SKIP, additional_properties: nil) ⇒ Company
Returns a new instance of Company.
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 96 def initialize(name: SKIP, address1: SKIP, address2: SKIP, locality: SKIP, administrative_area: SKIP, postal_code: SKIP, country: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @name = name unless name == SKIP @address1 = address1 unless address1 == SKIP @address2 = address2 unless address2 == SKIP @locality = locality unless locality == SKIP @administrative_area = administrative_area unless administrative_area == SKIP @postal_code = postal_code unless postal_code == SKIP @country = country unless country == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#address1 ⇒ String
First line in the street address of the company purchasing the product.
27 28 29 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 27 def address1 @address1 end |
#address2 ⇒ String
Additional address information for the company purchasing the product.
31 32 33 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 31 def address2 @address2 end |
#administrative_area ⇒ String
State or province in the address of the company purchasing the product. Use the State, Province, and Territory Codes for the United States and Canada.
41 42 43 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 41 def administrative_area @administrative_area end |
#country ⇒ String
Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickre f/countries_alpha_list.pdf).
63 64 65 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 63 def country @country end |
#locality ⇒ String
City in the address of the company purchasing the product.
35 36 37 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 35 def locality @locality end |
#name ⇒ String
Name of the customer’s company. CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks.
23 24 25 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 23 def name @name end |
#postal_code ⇒ String
Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits. When the company country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits]
Example
12345-6789
When the company country is Canada, the 6-digit postal code must follow
this format:
[alpha][numeric][alpha][space][numeric][alpha][numeric]
Example
A1B 2C3
56 57 58 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 56 def postal_code @postal_code end |
Class Method Details
.from_element(root) ⇒ Object
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 144 def self.from_element(root) name = XmlUtilities.from_element(root, 'name', String) address1 = XmlUtilities.from_element(root, 'address1', String) address2 = XmlUtilities.from_element(root, 'address2', String) locality = XmlUtilities.from_element(root, 'locality', String) administrative_area = XmlUtilities.from_element(root, 'administrativeArea', String) postal_code = XmlUtilities.from_element(root, 'postalCode', String) country = XmlUtilities.from_element(root, 'country', String) new(name: name, address1: address1, address2: address2, locality: locality, administrative_area: administrative_area, postal_code: postal_code, country: country, additional_properties: additional_properties) end |
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 113 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. name = hash.key?('name') ? hash['name'] : SKIP address1 = hash.key?('address1') ? hash['address1'] : SKIP address2 = hash.key?('address2') ? hash['address2'] : SKIP locality = hash.key?('locality') ? hash['locality'] : SKIP administrative_area = hash.key?('administrativeArea') ? hash['administrativeArea'] : SKIP postal_code = hash.key?('postalCode') ? hash['postalCode'] : SKIP country = hash.key?('country') ? hash['country'] : SKIP # 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. Company.new(name: name, address1: address1, address2: address2, locality: locality, administrative_area: administrative_area, postal_code: postal_code, country: country, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 66 def self.names @_hash = {} if @_hash.nil? @_hash['name'] = 'name' @_hash['address1'] = 'address1' @_hash['address2'] = 'address2' @_hash['locality'] = 'locality' @_hash['administrative_area'] = 'administrativeArea' @_hash['postal_code'] = 'postalCode' @_hash['country'] = 'country' @_hash end |
.nullables ⇒ Object
An array for nullable fields
92 93 94 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 92 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 79 def self.optionals %w[ name address1 address2 locality administrative_area postal_code country ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
191 192 193 194 195 196 197 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 191 def inspect class_name = self.class.name.split('::').last "<#{class_name} name: #{@name.inspect}, address1: #{@address1.inspect}, address2:"\ " #{@address2.inspect}, locality: #{@locality.inspect}, administrative_area:"\ " #{@administrative_area.inspect}, postal_code: #{@postal_code.inspect}, country:"\ " #{@country.inspect}, additional_properties: #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
183 184 185 186 187 188 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 183 def to_s class_name = self.class.name.split('::').last "<#{class_name} name: #{@name}, address1: #{@address1}, address2: #{@address2}, locality:"\ " #{@locality}, administrative_area: #{@administrative_area}, postal_code: #{@postal_code},"\ " country: #{@country}, additional_properties: #{@additional_properties}>" end |
#to_xml_element(doc, root_name) ⇒ Object
165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 |
# File 'lib/cyber_source_merged_spec/models/company.rb', line 165 def to_xml_element(doc, root_name) root = doc.create_element(root_name) XmlUtilities.add_as_subelement(doc, root, 'name', name) XmlUtilities.add_as_subelement(doc, root, 'address1', address1) XmlUtilities.add_as_subelement(doc, root, 'address2', address2) XmlUtilities.add_as_subelement(doc, root, 'locality', locality) XmlUtilities.add_as_subelement(doc, root, 'administrativeArea', administrative_area) XmlUtilities.add_as_subelement(doc, root, 'postalCode', postal_code) XmlUtilities.add_as_subelement(doc, root, 'country', country) XmlUtilities.add_as_subelement(doc, root, 'additional_properties', additional_properties) root end |