ysm4r 0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. data/Authors.txt +2 -0
  2. data/ChangeLog.txt +1 -0
  3. data/License.txt +13 -0
  4. data/Rakefile +209 -0
  5. data/Readme.txt +4 -0
  6. data/clean.sh +3 -0
  7. data/lib/soapex/driver.rb +13 -0
  8. data/lib/soapex/error.rb +49 -0
  9. data/lib/soapex/mapping.rb +31 -0
  10. data/lib/soapex/wsdl2ruby.rb +166 -0
  11. data/lib/ysm4r.rb +4 -0
  12. data/lib/ysm4r/client.rb +120 -0
  13. data/lib/ysm4r/service.rb +68 -0
  14. data/lib/ysm4r/v1/AccountService.rb +370 -0
  15. data/lib/ysm4r/v1/AccountServiceDriver.rb +162 -0
  16. data/lib/ysm4r/v1/AccountServiceMappingRegistry.rb +509 -0
  17. data/lib/ysm4r/v1/AdGroupService.rb +649 -0
  18. data/lib/ysm4r/v1/AdGroupServiceDriver.rb +226 -0
  19. data/lib/ysm4r/v1/AdGroupServiceMappingRegistry.rb +864 -0
  20. data/lib/ysm4r/v1/AdService.rb +533 -0
  21. data/lib/ysm4r/v1/AdServiceDriver.rb +178 -0
  22. data/lib/ysm4r/v1/AdServiceMappingRegistry.rb +753 -0
  23. data/lib/ysm4r/v1/BasicReportService.rb +259 -0
  24. data/lib/ysm4r/v1/BasicReportServiceDriver.rb +98 -0
  25. data/lib/ysm4r/v1/BasicReportServiceMappingRegistry.rb +389 -0
  26. data/lib/ysm4r/v1/BidInformationService.rb +69 -0
  27. data/lib/ysm4r/v1/BidInformationServiceDriver.rb +50 -0
  28. data/lib/ysm4r/v1/BidInformationServiceMappingRegistry.rb +135 -0
  29. data/lib/ysm4r/v1/BudgetingService.rb +161 -0
  30. data/lib/ysm4r/v1/BudgetingServiceDriver.rb +98 -0
  31. data/lib/ysm4r/v1/BudgetingServiceMappingRegistry.rb +230 -0
  32. data/lib/ysm4r/v1/CampaignService.rb +644 -0
  33. data/lib/ysm4r/v1/CampaignServiceDriver.rb +210 -0
  34. data/lib/ysm4r/v1/CampaignServiceMappingRegistry.rb +909 -0
  35. data/lib/ysm4r/v1/ExcludedWordsService.rb +294 -0
  36. data/lib/ysm4r/v1/ExcludedWordsServiceDriver.rb +122 -0
  37. data/lib/ysm4r/v1/ExcludedWordsServiceMappingRegistry.rb +469 -0
  38. data/lib/ysm4r/v1/ForecastService.rb +200 -0
  39. data/lib/ysm4r/v1/ForecastServiceDriver.rb +66 -0
  40. data/lib/ysm4r/v1/ForecastServiceMappingRegistry.rb +359 -0
  41. data/lib/ysm4r/v1/KeywordResearchService.rb +290 -0
  42. data/lib/ysm4r/v1/KeywordResearchServiceDriver.rb +66 -0
  43. data/lib/ysm4r/v1/KeywordResearchServiceMappingRegistry.rb +548 -0
  44. data/lib/ysm4r/v1/KeywordService.rb +671 -0
  45. data/lib/ysm4r/v1/KeywordServiceDriver.rb +218 -0
  46. data/lib/ysm4r/v1/KeywordServiceMappingRegistry.rb +913 -0
  47. data/lib/ysm4r/v1/LocationService.rb +53 -0
  48. data/lib/ysm4r/v1/LocationServiceDriver.rb +50 -0
  49. data/lib/ysm4r/v1/LocationServiceMappingRegistry.rb +111 -0
  50. data/lib/ysm4r/v1/MasterAccountService.rb +289 -0
  51. data/lib/ysm4r/v1/MasterAccountServiceDriver.rb +74 -0
  52. data/lib/ysm4r/v1/MasterAccountServiceMappingRegistry.rb +414 -0
  53. data/lib/ysm4r/v1/UpgradeService.rb +72 -0
  54. data/lib/ysm4r/v1/UpgradeServiceDriver.rb +58 -0
  55. data/lib/ysm4r/v1/UpgradeServiceMappingRegistry.rb +145 -0
  56. data/lib/ysm4r/v1/UserManagementService.rb +766 -0
  57. data/lib/ysm4r/v1/UserManagementServiceDriver.rb +290 -0
  58. data/lib/ysm4r/v1/UserManagementServiceMappingRegistry.rb +1057 -0
  59. data/lib/ysm4r/v1/sandbox/LocationService.rb +53 -0
  60. data/lib/ysm4r/v1/sandbox/LocationServiceDriver.rb +50 -0
  61. data/lib/ysm4r/v1/sandbox/LocationServiceMappingRegistry.rb +111 -0
  62. data/lib/ysm4r/v1/sandbox/UpgradeService.rb +72 -0
  63. data/lib/ysm4r/v1/sandbox/UpgradeServiceDriver.rb +58 -0
  64. data/lib/ysm4r/v1/sandbox/UpgradeServiceMappingRegistry.rb +145 -0
  65. data/lib/ysm4r/v2/AccountService.rb +372 -0
  66. data/lib/ysm4r/v2/AccountServiceDriver.rb +162 -0
  67. data/lib/ysm4r/v2/AccountServiceMappingRegistry.rb +510 -0
  68. data/lib/ysm4r/v2/AdGroupService.rb +649 -0
  69. data/lib/ysm4r/v2/AdGroupServiceDriver.rb +226 -0
  70. data/lib/ysm4r/v2/AdGroupServiceMappingRegistry.rb +864 -0
  71. data/lib/ysm4r/v2/AdService.rb +553 -0
  72. data/lib/ysm4r/v2/AdServiceDriver.rb +186 -0
  73. data/lib/ysm4r/v2/AdServiceMappingRegistry.rb +774 -0
  74. data/lib/ysm4r/v2/BasicReportService.rb +272 -0
  75. data/lib/ysm4r/v2/BasicReportServiceDriver.rb +98 -0
  76. data/lib/ysm4r/v2/BasicReportServiceMappingRegistry.rb +389 -0
  77. data/lib/ysm4r/v2/BidInformationService.rb +109 -0
  78. data/lib/ysm4r/v2/BidInformationServiceDriver.rb +66 -0
  79. data/lib/ysm4r/v2/BidInformationServiceMappingRegistry.rb +177 -0
  80. data/lib/ysm4r/v2/BudgetingService.rb +161 -0
  81. data/lib/ysm4r/v2/BudgetingServiceDriver.rb +98 -0
  82. data/lib/ysm4r/v2/BudgetingServiceMappingRegistry.rb +230 -0
  83. data/lib/ysm4r/v2/CampaignService.rb +644 -0
  84. data/lib/ysm4r/v2/CampaignServiceDriver.rb +210 -0
  85. data/lib/ysm4r/v2/CampaignServiceMappingRegistry.rb +909 -0
  86. data/lib/ysm4r/v2/CompanyService.rb +68 -0
  87. data/lib/ysm4r/v2/CompanyServiceDriver.rb +50 -0
  88. data/lib/ysm4r/v2/CompanyServiceMappingRegistry.rb +136 -0
  89. data/lib/ysm4r/v2/ExcludedWordsService.rb +294 -0
  90. data/lib/ysm4r/v2/ExcludedWordsServiceDriver.rb +122 -0
  91. data/lib/ysm4r/v2/ExcludedWordsServiceMappingRegistry.rb +469 -0
  92. data/lib/ysm4r/v2/ForecastService.rb +200 -0
  93. data/lib/ysm4r/v2/ForecastServiceDriver.rb +66 -0
  94. data/lib/ysm4r/v2/ForecastServiceMappingRegistry.rb +359 -0
  95. data/lib/ysm4r/v2/KeywordResearchService.rb +369 -0
  96. data/lib/ysm4r/v2/KeywordResearchServiceDriver.rb +82 -0
  97. data/lib/ysm4r/v2/KeywordResearchServiceMappingRegistry.rb +673 -0
  98. data/lib/ysm4r/v2/KeywordService.rb +691 -0
  99. data/lib/ysm4r/v2/KeywordServiceDriver.rb +226 -0
  100. data/lib/ysm4r/v2/KeywordServiceMappingRegistry.rb +934 -0
  101. data/lib/ysm4r/v2/LocationService.rb +53 -0
  102. data/lib/ysm4r/v2/LocationServiceDriver.rb +50 -0
  103. data/lib/ysm4r/v2/LocationServiceMappingRegistry.rb +111 -0
  104. data/lib/ysm4r/v2/MasterAccountService.rb +332 -0
  105. data/lib/ysm4r/v2/MasterAccountServiceDriver.rb +82 -0
  106. data/lib/ysm4r/v2/MasterAccountServiceMappingRegistry.rb +480 -0
  107. data/lib/ysm4r/v2/UpgradeService.rb +72 -0
  108. data/lib/ysm4r/v2/UpgradeServiceDriver.rb +58 -0
  109. data/lib/ysm4r/v2/UpgradeServiceMappingRegistry.rb +145 -0
  110. data/lib/ysm4r/v2/UserManagementService.rb +766 -0
  111. data/lib/ysm4r/v2/UserManagementServiceDriver.rb +290 -0
  112. data/lib/ysm4r/v2/UserManagementServiceMappingRegistry.rb +1057 -0
  113. data/lib/ysm4r/v2/sandbox/LocationService.rb +53 -0
  114. data/lib/ysm4r/v2/sandbox/LocationServiceDriver.rb +50 -0
  115. data/lib/ysm4r/v2/sandbox/LocationServiceMappingRegistry.rb +111 -0
  116. data/lib/ysm4r/v2/sandbox/UpgradeService.rb +72 -0
  117. data/lib/ysm4r/v2/sandbox/UpgradeServiceDriver.rb +58 -0
  118. data/lib/ysm4r/v2/sandbox/UpgradeServiceMappingRegistry.rb +145 -0
  119. data/setup.rb +1585 -0
  120. data/test/test_campaign_service.rb +12 -0
  121. data/test/test_keyword_research_service.rb +15 -0
  122. data/test/test_master_account_service.rb +18 -0
  123. data/ysm.properties +6 -0
  124. metadata +171 -0
@@ -0,0 +1,4 @@
1
+ require 'rubygems'
2
+ gem 'soap4r'
3
+ require 'soap/compat'
4
+ require 'ysm4r/client'
@@ -0,0 +1,120 @@
1
+ require 'soap/soap'
2
+ require 'soapex/error'
3
+ require 'soapex/driver'
4
+ require 'ysm4r/service'
5
+
6
+ module YSM
7
+
8
+ class Config
9
+ HeaderKeys = [:username, :password, :license, :masterAccountID, :accountID]
10
+ attr_reader(*HeaderKeys)
11
+ attr_reader :sandbox
12
+
13
+ def initialize(options={})
14
+ @sandbox = false
15
+ IO.foreach(filename) do |line|
16
+ next if line =~ /^#/
17
+ name, value = line.split('=')
18
+ value = (options[name] || value.strip)
19
+ instance_variable_set(atsym(name), value)
20
+ end
21
+ @sandbox = ['True', 'true', '1'].include?(@sandbox.strip)
22
+ end
23
+
24
+ def makeHeaders
25
+ HeaderKeys.map do |key|
26
+ Service::HeaderHandler.new(
27
+ key.to_s, instance_variable_get(atsym(key)))
28
+ end
29
+ end
30
+
31
+ private
32
+
33
+ def atsym(name)
34
+ ("@"+(name.to_s)).to_sym
35
+ end
36
+ def filename
37
+ gemfile = File.join(File.dirname(__FILE__), '..', '..', 'ysm.properties')
38
+ userhome = (ENV['HOME'] || ENV['USERPROFILE'])
39
+ homefile = userhome ? File.join(userhome, 'ysm.properties') : gemfile
40
+ # a config file found in user's home dir overrides the one distributed
41
+ # with the gem
42
+ FileTest.exists?(homefile) ? homefile : gemfile
43
+ end
44
+ end
45
+
46
+ class Client
47
+ attr_reader :config, :drivers, :version
48
+ @methodMap = Hash.new
49
+
50
+ def initialize(version=nil, options={})
51
+ @config = Config.new(options)
52
+ @headers = @config.makeHeaders
53
+ @version = (version || Service.getVersions.sort.last)
54
+ prepareDrivers
55
+ end
56
+
57
+ def method_missing(m, *args)
58
+ methodName = m.id2name
59
+ requestName = YSM::fix_case_up(methodName) # upper first character
60
+
61
+ if driver = @methodMap[methodName]
62
+ servicename = driver.class.name.split("::").last
63
+ #args.map! {|a| a.to_s}
64
+ req = eval("YSM::#{servicename}::#{requestName}").new(*args)
65
+ return driver.method(methodName).call(req).out
66
+ else
67
+ raise(SOAP::MultiService::UnknownAPICall,
68
+ "Unknown API Call: #{requestName}", caller)
69
+ end
70
+
71
+ # Handle YSM Application-level error
72
+ rescue SOAP::FaultError => fault
73
+ raise(SOAP::MultiService::ApiError.new(fault),
74
+ "#{methodName} Call Failed: #{fault.faultstring.to_s}", caller)
75
+ end
76
+
77
+ private
78
+
79
+ def prepareDrivers
80
+ @drivers = Hash.new
81
+ Service.doRequire(@version, @config.sandbox)
82
+
83
+ # the Location and Upgrade services provide their own
84
+ # endpoint_urls, the other services must use the endpoint
85
+ # provided by the Location service.
86
+ bootstrap = ["Location", "Upgrade"]
87
+ bootstrap.each {|driver| @drivers[driver] = makeDriver(driver)}
88
+ @methodMap = Service.getMethodMap(@drivers)
89
+ location = getMasterAccountLocation
90
+
91
+ Service.getServices(@version).each do |servicename|
92
+ next if bootstrap.include?(servicename)
93
+ endpoint = "#{location}/V#{@version}/#{servicename}Service"
94
+ @drivers[servicename] = makeDriver(servicename, endpoint)
95
+ end
96
+ @methodMap = Service.getMethodMap(@drivers)
97
+ end
98
+
99
+ def makeDriver(name, location=nil)
100
+ driver = eval("YSM::#{name}Service::#{name}Service").new
101
+ driver.prepare(@headers, location)
102
+ driver
103
+ end
104
+
105
+ end
106
+
107
+ # These class module methods are helper functions
108
+ class <<self
109
+
110
+ def fix_case_up(name)
111
+ (newname = name.dup)[0] = name[0,1].upcase # upper first character
112
+ newname
113
+ end
114
+
115
+ def fix_case_down(name)
116
+ (newname = name.dup)[0] = name[0,1].downcase
117
+ newname
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,68 @@
1
+ require 'soap/header/simplehandler'
2
+
3
+ module YSM
4
+ SandBoxServices = ['Location', 'Upgrade']
5
+
6
+ VersionServices = {
7
+ 1 => [
8
+ 'MasterAccount', 'Account', 'UserManagement', 'Location', 'Upgrade',
9
+ 'Campaign', 'AdGroup', 'Ad', 'Keyword', 'ExcludedWords',
10
+ 'BidInformation', 'Forecast', 'KeywordResearch', 'Budgeting',
11
+ 'BasicReport'],
12
+ 2 => [
13
+ 'Company', 'MasterAccount', 'Account', 'UserManagement',
14
+ 'Location', 'Upgrade', 'Campaign', 'AdGroup', 'Ad', 'Keyword',
15
+ 'ExcludedWords', 'BidInformation', 'Forecast', 'KeywordResearch',
16
+ 'Budgeting', 'BasicReport']
17
+ }
18
+
19
+
20
+ class Service
21
+
22
+ class HeaderHandler < SOAP::Header::SimpleHandler
23
+ def initialize(tag, value)
24
+ super(XSD::QName.new(nil, tag))
25
+ @tag = tag
26
+ @value = value
27
+ end
28
+
29
+ # The initial handler from the sample was wrong,
30
+ # it generated 2 level of tags
31
+ def on_simple_outbound
32
+ @value
33
+ end
34
+ end
35
+
36
+
37
+ def Service.getVersions
38
+ VersionServices.keys
39
+ end
40
+
41
+ def Service.getServices(version)
42
+ VersionServices[version]
43
+ end
44
+
45
+ def Service.doRequire(version, sandbox=false)
46
+ req = []
47
+ Service.getServices(version).each do |s|
48
+ sbox = (sandbox && SandBoxServices.include?(s)) ? "sandbox/" : ""
49
+ req << "require 'ysm4r/v#{version}/#{sbox}#{s}ServiceDriver'"
50
+ end
51
+ req.each {|r| eval(r)}
52
+ end
53
+
54
+ def Service.getService(version, method)
55
+
56
+ end
57
+
58
+ def Service.getMethodMap(drivers)
59
+ #Service.getVersions.each do |v|
60
+ methodMap = Hash.new
61
+ drivers.each_value do |d|
62
+ d.class::Methods.each {|m| methodMap[m[1]] = d}
63
+ end
64
+ methodMap
65
+ end
66
+ end
67
+
68
+ end
@@ -0,0 +1,370 @@
1
+ require 'xsd/qname'
2
+
3
+ module YSM::AccountService
4
+
5
+
6
+ # {http://marketing.ews.yahooapis.com/V1}ApiFault
7
+ class ApiFault < ::StandardError
8
+ attr_accessor :code
9
+ attr_accessor :message
10
+
11
+ def initialize(code = nil, message = nil)
12
+ @code = code
13
+ @message = message
14
+ end
15
+ end
16
+
17
+ # {http://marketing.ews.yahooapis.com/V1}ArrayOfContinent
18
+ class ArrayOfContinent < ::Array
19
+ end
20
+
21
+ # {http://marketing.ews.yahooapis.com/V1}Account
22
+ class Account
23
+ attr_accessor :iD
24
+ attr_accessor :advancedMatchON
25
+ attr_accessor :businessTypeCode
26
+ attr_accessor :contentMatchON
27
+ attr_accessor :displayURL
28
+ attr_accessor :marketID
29
+ attr_accessor :masterAccountID
30
+ attr_accessor :name
31
+ attr_accessor :nameFurigana
32
+ attr_accessor :personalID
33
+ attr_accessor :sitePassword
34
+ attr_accessor :siteUserName
35
+ attr_accessor :sponsoredSearchON
36
+ attr_accessor :vatCode
37
+ attr_accessor :websiteURL
38
+
39
+ def initialize(iD = nil, advancedMatchON = nil, businessTypeCode = nil, contentMatchON = nil, displayURL = nil, marketID = nil, masterAccountID = nil, name = nil, nameFurigana = nil, personalID = nil, sitePassword = nil, siteUserName = nil, sponsoredSearchON = nil, vatCode = nil, websiteURL = nil)
40
+ @iD = iD
41
+ @advancedMatchON = advancedMatchON
42
+ @businessTypeCode = businessTypeCode
43
+ @contentMatchON = contentMatchON
44
+ @displayURL = displayURL
45
+ @marketID = marketID
46
+ @masterAccountID = masterAccountID
47
+ @name = name
48
+ @nameFurigana = nameFurigana
49
+ @personalID = personalID
50
+ @sitePassword = sitePassword
51
+ @siteUserName = siteUserName
52
+ @sponsoredSearchON = sponsoredSearchON
53
+ @vatCode = vatCode
54
+ @websiteURL = websiteURL
55
+ end
56
+ end
57
+
58
+ # {http://marketing.ews.yahooapis.com/V1}ArrayOfAccount
59
+ class ArrayOfAccount < ::Array
60
+ end
61
+
62
+ # {http://marketing.ews.yahooapis.com/V1}CombinedAccountStatus
63
+ class CombinedAccountStatus
64
+ attr_accessor :accountStatus
65
+ attr_accessor :onlineStatus
66
+ attr_accessor :onlineStatusAsOf
67
+
68
+ def initialize(accountStatus = nil, onlineStatus = nil, onlineStatusAsOf = nil)
69
+ @accountStatus = accountStatus
70
+ @onlineStatus = onlineStatus
71
+ @onlineStatusAsOf = onlineStatusAsOf
72
+ end
73
+ end
74
+
75
+ # {http://schemas.xmlsoap.org/ws/2002/07/secext}Security
76
+ class Security
77
+ attr_accessor :usernameToken
78
+
79
+ def initialize(usernameToken = nil)
80
+ @usernameToken = usernameToken
81
+ end
82
+ end
83
+
84
+ # {http://schemas.xmlsoap.org/ws/2002/07/secext}UsernameToken
85
+ class UsernameToken
86
+ attr_accessor :username
87
+ attr_accessor :password
88
+
89
+ def initialize(username = nil, password = nil)
90
+ @username = username
91
+ @password = password
92
+ end
93
+ end
94
+
95
+ # {http://marketing.ews.yahooapis.com/V1}Continent
96
+ class Continent < ::String
97
+ Africa = Continent.new("Africa")
98
+ Asia = Continent.new("Asia")
99
+ Australia = Continent.new("Australia")
100
+ Europe = Continent.new("Europe")
101
+ NorthAmerica = Continent.new("NorthAmerica")
102
+ SouthAmerica = Continent.new("SouthAmerica")
103
+ end
104
+
105
+ # {http://marketing.ews.yahooapis.com/V1}AccountStatus
106
+ class AccountStatus < ::String
107
+ Active = AccountStatus.new("Active")
108
+ Inactive = AccountStatus.new("Inactive")
109
+ end
110
+
111
+ # {http://marketing.ews.yahooapis.com/V1}addMoney
112
+ class AddMoney
113
+ attr_accessor :accountID
114
+ attr_accessor :amount
115
+
116
+ def initialize(accountID = nil, amount = nil)
117
+ @accountID = accountID
118
+ @amount = amount
119
+ end
120
+ end
121
+
122
+ # {http://marketing.ews.yahooapis.com/V1}addMoneyResponse
123
+ class AddMoneyResponse
124
+ def initialize
125
+ end
126
+ end
127
+
128
+ # {http://marketing.ews.yahooapis.com/V1}deleteContinentBlockListFromAccount
129
+ class DeleteContinentBlockListFromAccount
130
+ attr_accessor :accountID
131
+
132
+ def initialize(accountID = nil)
133
+ @accountID = accountID
134
+ end
135
+ end
136
+
137
+ # {http://marketing.ews.yahooapis.com/V1}deleteContinentBlockListFromAccountResponse
138
+ class DeleteContinentBlockListFromAccountResponse
139
+ def initialize
140
+ end
141
+ end
142
+
143
+ # {http://marketing.ews.yahooapis.com/V1}getContinentBlockListForAccount
144
+ class GetContinentBlockListForAccount
145
+ attr_accessor :accountID
146
+
147
+ def initialize(accountID = nil)
148
+ @accountID = accountID
149
+ end
150
+ end
151
+
152
+ # {http://marketing.ews.yahooapis.com/V1}getContinentBlockListForAccountResponse
153
+ class GetContinentBlockListForAccountResponse
154
+ attr_accessor :out
155
+
156
+ def initialize(out = nil)
157
+ @out = out
158
+ end
159
+ end
160
+
161
+ # {http://marketing.ews.yahooapis.com/V1}getAccount
162
+ class GetAccount
163
+ attr_accessor :accountID
164
+
165
+ def initialize(accountID = nil)
166
+ @accountID = accountID
167
+ end
168
+ end
169
+
170
+ # {http://marketing.ews.yahooapis.com/V1}getAccountResponse
171
+ class GetAccountResponse
172
+ attr_accessor :out
173
+
174
+ def initialize(out = nil)
175
+ @out = out
176
+ end
177
+ end
178
+
179
+ # {http://marketing.ews.yahooapis.com/V1}setChargeAmount
180
+ class SetChargeAmount
181
+ attr_accessor :accountID
182
+ attr_accessor :chargeAmount
183
+
184
+ def initialize(accountID = nil, chargeAmount = nil)
185
+ @accountID = accountID
186
+ @chargeAmount = chargeAmount
187
+ end
188
+ end
189
+
190
+ # {http://marketing.ews.yahooapis.com/V1}setChargeAmountResponse
191
+ class SetChargeAmountResponse
192
+ def initialize
193
+ end
194
+ end
195
+
196
+ # {http://marketing.ews.yahooapis.com/V1}getChargeAmount
197
+ class GetChargeAmount
198
+ attr_accessor :accountID
199
+
200
+ def initialize(accountID = nil)
201
+ @accountID = accountID
202
+ end
203
+ end
204
+
205
+ # {http://marketing.ews.yahooapis.com/V1}getChargeAmountResponse
206
+ class GetChargeAmountResponse
207
+ attr_accessor :out
208
+
209
+ def initialize(out = nil)
210
+ @out = out
211
+ end
212
+ end
213
+
214
+ # {http://marketing.ews.yahooapis.com/V1}setActiveCreditCard
215
+ class SetActiveCreditCard
216
+ attr_accessor :accountID
217
+ attr_accessor :paymentMethodID
218
+
219
+ def initialize(accountID = nil, paymentMethodID = nil)
220
+ @accountID = accountID
221
+ @paymentMethodID = paymentMethodID
222
+ end
223
+ end
224
+
225
+ # {http://marketing.ews.yahooapis.com/V1}setActiveCreditCardResponse
226
+ class SetActiveCreditCardResponse
227
+ def initialize
228
+ end
229
+ end
230
+
231
+ # {http://marketing.ews.yahooapis.com/V1}updateAccount
232
+ class UpdateAccount
233
+ attr_accessor :account
234
+ attr_accessor :updateAll
235
+
236
+ def initialize(account = nil, updateAll = nil)
237
+ @account = account
238
+ @updateAll = updateAll
239
+ end
240
+ end
241
+
242
+ # {http://marketing.ews.yahooapis.com/V1}updateAccountResponse
243
+ class UpdateAccountResponse
244
+ def initialize
245
+ end
246
+ end
247
+
248
+ # {http://marketing.ews.yahooapis.com/V1}getActiveCreditCard
249
+ class GetActiveCreditCard
250
+ attr_accessor :accountID
251
+
252
+ def initialize(accountID = nil)
253
+ @accountID = accountID
254
+ end
255
+ end
256
+
257
+ # {http://marketing.ews.yahooapis.com/V1}getActiveCreditCardResponse
258
+ class GetActiveCreditCardResponse
259
+ attr_accessor :out
260
+
261
+ def initialize(out = nil)
262
+ @out = out
263
+ end
264
+ end
265
+
266
+ # {http://marketing.ews.yahooapis.com/V1}addAccount
267
+ class AddAccount
268
+ attr_accessor :account
269
+
270
+ def initialize(account = nil)
271
+ @account = account
272
+ end
273
+ end
274
+
275
+ # {http://marketing.ews.yahooapis.com/V1}addAccountResponse
276
+ class AddAccountResponse
277
+ attr_accessor :out
278
+
279
+ def initialize(out = nil)
280
+ @out = out
281
+ end
282
+ end
283
+
284
+ # {http://marketing.ews.yahooapis.com/V1}updateStatusForAccount
285
+ class UpdateStatusForAccount
286
+ attr_accessor :accountID
287
+ attr_accessor :accountStatus
288
+
289
+ def initialize(accountID = nil, accountStatus = nil)
290
+ @accountID = accountID
291
+ @accountStatus = accountStatus
292
+ end
293
+ end
294
+
295
+ # {http://marketing.ews.yahooapis.com/V1}updateStatusForAccountResponse
296
+ class UpdateStatusForAccountResponse
297
+ def initialize
298
+ end
299
+ end
300
+
301
+ # {http://marketing.ews.yahooapis.com/V1}getAccountBalance
302
+ class GetAccountBalance
303
+ attr_accessor :accountID
304
+
305
+ def initialize(accountID = nil)
306
+ @accountID = accountID
307
+ end
308
+ end
309
+
310
+ # {http://marketing.ews.yahooapis.com/V1}getAccountBalanceResponse
311
+ class GetAccountBalanceResponse
312
+ attr_accessor :out
313
+
314
+ def initialize(out = nil)
315
+ @out = out
316
+ end
317
+ end
318
+
319
+ # {http://marketing.ews.yahooapis.com/V1}getAccounts
320
+ class GetAccounts
321
+ def initialize
322
+ end
323
+ end
324
+
325
+ # {http://marketing.ews.yahooapis.com/V1}getAccountsResponse
326
+ class GetAccountsResponse
327
+ attr_accessor :out
328
+
329
+ def initialize(out = nil)
330
+ @out = out
331
+ end
332
+ end
333
+
334
+ # {http://marketing.ews.yahooapis.com/V1}setContinentBlockListForAccount
335
+ class SetContinentBlockListForAccount
336
+ attr_accessor :accountID
337
+ attr_accessor :continents
338
+
339
+ def initialize(accountID = nil, continents = nil)
340
+ @accountID = accountID
341
+ @continents = continents
342
+ end
343
+ end
344
+
345
+ # {http://marketing.ews.yahooapis.com/V1}setContinentBlockListForAccountResponse
346
+ class SetContinentBlockListForAccountResponse
347
+ def initialize
348
+ end
349
+ end
350
+
351
+ # {http://marketing.ews.yahooapis.com/V1}getAccountStatus
352
+ class GetAccountStatus
353
+ attr_accessor :accountID
354
+
355
+ def initialize(accountID = nil)
356
+ @accountID = accountID
357
+ end
358
+ end
359
+
360
+ # {http://marketing.ews.yahooapis.com/V1}getAccountStatusResponse
361
+ class GetAccountStatusResponse
362
+ attr_accessor :out
363
+
364
+ def initialize(out = nil)
365
+ @out = out
366
+ end
367
+ end
368
+
369
+
370
+ end