right_flexiscale 0.1.0

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.
@@ -0,0 +1,4 @@
1
+ == 0.0.1 2008-06-17
2
+
3
+ * 1 major enhancement:
4
+ * Initial release
@@ -0,0 +1,13 @@
1
+ History.txt
2
+ Manifest.txt
3
+ README.txt
4
+ Rakefile
5
+ lib/right_flexiscale.rb
6
+ lib/api/Flexiscale APIAddons.rb
7
+ lib/api/Flexiscale APIDriver.rb
8
+ lib/api/Flexiscale APIMappingRegistry.rb
9
+ lib/api/Flexiscale API.rb
10
+ lib/api/right_flexiscale_api.rb
11
+ lib/api/benchmark_fix.rb
12
+ test/test_helper.rb
13
+ test/test_right_flexiscale.rb
@@ -0,0 +1,78 @@
1
+ == RightScale Flexiscale API Ruby Gem
2
+
3
+ Published by RightScale, Inc. under the MIT License. For information about
4
+ RightScale, see www.rightscale.com
5
+
6
+ == DESCRIPTION:
7
+
8
+ The RightScale GoGrid gem has been designed to provide a robust interface to
9
+ Flexiscale‘s existing API.
10
+
11
+
12
+ == FEATURES/PROBLEMS:
13
+
14
+ * Full programmatic access to the Flexiscale API.
15
+ * Complete error handling: all operations check for errors and report
16
+ complete error information.
17
+
18
+ == SYNOPSIS:
19
+
20
+ flexiscale = Rightscale::FlexiscaleApi.new(username, password)
21
+
22
+ # get servers list
23
+ servers = flexiscale.list_servers
24
+
25
+ # OS images
26
+ images = flexiscale.list_operating_system_images
27
+
28
+ # create a new server
29
+ image = flexiscale.list_operating_system_images.first
30
+ package = flexiscale.list_packages.first
31
+ vlan = flexiscale.list_vlans.first
32
+ server_id = flexiscale.create_server('my_awesome_server', package[:fxs_id], 1, 1024, 20, image[:fxs_id], vlan[:fxs_id])
33
+
34
+ # launch a server
35
+ job_id = flexiscale.start_server('my_awesome_server')
36
+
37
+ # reboot
38
+ job_id = flexiscale.reboot_server('my_awesome_server')
39
+
40
+ # stop and destroy server
41
+ job_id = flexiscale.stop_server('my_awesome_server')
42
+
43
+ if flexiscale.wait_for_jobs(job_id)
44
+ flexiscale.destroy_server('my_awesome_server')
45
+ end
46
+
47
+ == REQUIREMENTS:
48
+
49
+ * soap4r
50
+
51
+ == INSTALL:
52
+
53
+ * sudo gem install right_flexiscale
54
+
55
+ == LICENSE:
56
+
57
+ Copyright (c) 2008-2009 RightScale Inc
58
+
59
+ Permission is hereby granted, free of charge, to any person obtaining
60
+ a copy of this software and associated documentation files (the
61
+ "Software"), to deal in the Software without restriction, including
62
+ without limitation the rights to use, copy, modify, merge, publish,
63
+ distribute, sublicense, and/or sell copies of the Software, and to
64
+ permit persons to whom the Software is furnished to do so, subject to
65
+ the following conditions:
66
+
67
+ The above copyright notice and this permission notice shall be
68
+ included in all copies or substantial portions of the Software.
69
+
70
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
71
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
72
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
73
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
74
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
75
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
76
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
77
+
78
+
@@ -0,0 +1,49 @@
1
+
2
+ require 'rubygems'
3
+ require 'hoe'
4
+ require "rake/testtask"
5
+ require 'rcov/rcovtask'
6
+ $: << File.dirname(__FILE__)
7
+ require 'lib/right_flexiscale.rb'
8
+
9
+ testglobs = []
10
+
11
+ # Suppress Hoe's self-inclusion as a dependency for our Gem. This also keeps
12
+ # Rake & rubyforge out of the dependency list. Users must manually install
13
+ # these gems to run tests, etc.
14
+ # TRB 2/19/09: also do this for the extra_dev_deps array present in newer hoes.
15
+ # Older versions of RubyGems will try to install developer-dependencies as
16
+ # required runtime dependencies....
17
+ class Hoe
18
+ def extra_deps
19
+ @extra_deps.reject do |x|
20
+ Array(x).first == 'hoe'
21
+ end
22
+ end
23
+ def extra_dev_deps
24
+ @extra_dev_deps.reject do |x|
25
+ Array(x).first == 'hoe'
26
+ end
27
+ end
28
+ end
29
+
30
+ Hoe.new('right_flexiscale', RightFlexiscale::VERSION::STRING) do |p|
31
+ p.rubyforge_name = 'rightscale'
32
+ p.author = 'RightScale, Inc.'
33
+ p.email = 'rubygems@rightscale.com'
34
+ p.summary = 'Interface classes for the FlexiScale Web Services'
35
+ p.description = p.paragraphs_of('README.txt', 2..5).join("\n\n")
36
+ p.url = p.paragraphs_of('README.txt', 0).first.split(/\n/)[1..-1]
37
+ p.changes = p.paragraphs_of('History.txt', 0..1).join("\n\n")
38
+ p.remote_rdoc_dir = "/right_flexiscale_gem_doc"
39
+ p.extra_deps = [['soap4r','>= 1.5.8']]
40
+ p.test_globs = testglobs
41
+ end
42
+
43
+ desc "Analyze code coverage of the unit tests."
44
+ Rcov::RcovTask.new do |t|
45
+ t.test_files = FileList[testglobs]
46
+ #t.verbose = true # uncomment to see the executed command
47
+ end
48
+
49
+ # vim: syntax=Ruby
@@ -0,0 +1,513 @@
1
+ require 'xsd/qname'
2
+
3
+ module FlexiScale
4
+
5
+
6
+ # {http://api.flexiscale.com}OperatingSystemImage
7
+ # operating_system_image_id - SOAP::SOAPInt
8
+ # operating_system_image_name - SOAP::SOAPString
9
+ class OperatingSystemImage # :nodoc:
10
+ attr_accessor :operating_system_image_id
11
+ attr_accessor :operating_system_image_name
12
+
13
+ def initialize(operating_system_image_id = nil, operating_system_image_name = nil)
14
+ @operating_system_image_id = operating_system_image_id
15
+ @operating_system_image_name = operating_system_image_name
16
+ end
17
+ end
18
+
19
+ # {http://api.flexiscale.com}Disk
20
+ # disk_id - SOAP::SOAPInt
21
+ # package_id - SOAP::SOAPInt
22
+ # capacity - SOAP::SOAPInt
23
+ # usage - SOAP::SOAPFloat
24
+ # server_id - SOAP::SOAPInt
25
+ # locked - SOAP::SOAPInt
26
+ # disk_name - SOAP::SOAPString
27
+ class Disk # :nodoc:
28
+ attr_accessor :disk_id
29
+ attr_accessor :package_id
30
+ attr_accessor :capacity
31
+ attr_accessor :usage
32
+ attr_accessor :server_id
33
+ attr_accessor :locked
34
+ attr_accessor :disk_name
35
+
36
+ def initialize(disk_id = nil, package_id = nil, capacity = nil, usage = nil, server_id = nil, locked = nil, disk_name = nil)
37
+ @disk_id = disk_id
38
+ @package_id = package_id
39
+ @capacity = capacity
40
+ @usage = usage
41
+ @server_id = server_id
42
+ @locked = locked
43
+ @disk_name = disk_name
44
+ end
45
+ end
46
+
47
+ # {http://api.flexiscale.com}NetworkInterface
48
+ # network_interface_id - SOAP::SOAPInt
49
+ # server_id - SOAP::SOAPInt
50
+ # vlan_id - SOAP::SOAPInt
51
+ # mac_address - SOAP::SOAPString
52
+ class NetworkInterface # :nodoc:
53
+ attr_accessor :network_interface_id
54
+ attr_accessor :server_id
55
+ attr_accessor :vlan_id
56
+ attr_accessor :mac_address
57
+
58
+ def initialize(network_interface_id = nil, server_id = nil, vlan_id = nil, mac_address = nil)
59
+ @network_interface_id = network_interface_id
60
+ @server_id = server_id
61
+ @vlan_id = vlan_id
62
+ @mac_address = mac_address
63
+ end
64
+ end
65
+
66
+ # {http://api.flexiscale.com}IpBlock
67
+ # ip_block_id - SOAP::SOAPInt
68
+ # start_ip - SOAP::SOAPString
69
+ # end_ip - SOAP::SOAPString
70
+ # block_type - SOAP::SOAPInt
71
+ # customer_vlan_id - SOAP::SOAPInt
72
+ class IpBlock # :nodoc:
73
+ attr_accessor :ip_block_id
74
+ attr_accessor :start_ip
75
+ attr_accessor :end_ip
76
+ attr_accessor :block_type
77
+ attr_accessor :customer_vlan_id
78
+
79
+ def initialize(ip_block_id = nil, start_ip = nil, end_ip = nil, block_type = nil, customer_vlan_id = nil)
80
+ @ip_block_id = ip_block_id
81
+ @start_ip = start_ip
82
+ @end_ip = end_ip
83
+ @block_type = block_type
84
+ @customer_vlan_id = customer_vlan_id
85
+ end
86
+ end
87
+
88
+ # {http://api.flexiscale.com}Firewall
89
+ # firewall_id - SOAP::SOAPInt
90
+ # ip_address - SOAP::SOAPString
91
+ # default_policy - SOAP::SOAPString
92
+ class Firewall # :nodoc:
93
+ attr_accessor :firewall_id
94
+ attr_accessor :ip_address
95
+ attr_accessor :default_policy
96
+
97
+ def initialize(firewall_id = nil, ip_address = nil, default_policy = nil)
98
+ @firewall_id = firewall_id
99
+ @ip_address = ip_address
100
+ @default_policy = default_policy
101
+ end
102
+ end
103
+
104
+ # {http://api.flexiscale.com}FirewallTemplate
105
+ # firewall_template_id - SOAP::SOAPInt
106
+ # template_name - SOAP::SOAPString
107
+ # default_policy - SOAP::SOAPString
108
+ class FirewallTemplate # :nodoc:
109
+ attr_accessor :firewall_template_id
110
+ attr_accessor :template_name
111
+ attr_accessor :default_policy
112
+
113
+ def initialize(firewall_template_id = nil, template_name = nil, default_policy = nil)
114
+ @firewall_template_id = firewall_template_id
115
+ @template_name = template_name
116
+ @default_policy = default_policy
117
+ end
118
+ end
119
+
120
+ # {http://api.flexiscale.com}FirewallRule
121
+ # firewall_rule_id - SOAP::SOAPInt
122
+ # firewall_id - SOAP::SOAPInt
123
+ # sequence_no - SOAP::SOAPInt
124
+ # rule_name - SOAP::SOAPString
125
+ # direction - SOAP::SOAPString
126
+ # firewall_protocol_id - SOAP::SOAPInt
127
+ # source_port - SOAP::SOAPInt
128
+ # destination_port - SOAP::SOAPInt
129
+ # icmp_parameter_id - SOAP::SOAPInt
130
+ # ip_address - SOAP::SOAPString
131
+ # ip_address_mask - SOAP::SOAPInt
132
+ # action - SOAP::SOAPString
133
+ # jump_to - SOAP::SOAPInt
134
+ class FirewallRule # :nodoc:
135
+ attr_accessor :firewall_rule_id
136
+ attr_accessor :firewall_id
137
+ attr_accessor :sequence_no
138
+ attr_accessor :rule_name
139
+ attr_accessor :direction
140
+ attr_accessor :firewall_protocol_id
141
+ attr_accessor :source_port
142
+ attr_accessor :destination_port
143
+ attr_accessor :icmp_parameter_id
144
+ attr_accessor :ip_address
145
+ attr_accessor :ip_address_mask
146
+ attr_accessor :action
147
+ attr_accessor :jump_to
148
+
149
+ def initialize(firewall_rule_id = nil, firewall_id = nil, sequence_no = nil, rule_name = nil, direction = nil, firewall_protocol_id = nil, source_port = nil, destination_port = nil, icmp_parameter_id = nil, ip_address = nil, ip_address_mask = nil, action = nil, jump_to = nil)
150
+ @firewall_rule_id = firewall_rule_id
151
+ @firewall_id = firewall_id
152
+ @sequence_no = sequence_no
153
+ @rule_name = rule_name
154
+ @direction = direction
155
+ @firewall_protocol_id = firewall_protocol_id
156
+ @source_port = source_port
157
+ @destination_port = destination_port
158
+ @icmp_parameter_id = icmp_parameter_id
159
+ @ip_address = ip_address
160
+ @ip_address_mask = ip_address_mask
161
+ @action = action
162
+ @jump_to = jump_to
163
+ end
164
+ end
165
+
166
+ # {http://api.flexiscale.com}FirewallTemplateRule
167
+ # firewall_template_rule_id - SOAP::SOAPInt
168
+ # firewall_template_id - SOAP::SOAPInt
169
+ # sequence_no - SOAP::SOAPInt
170
+ # rule_name - SOAP::SOAPString
171
+ # direction - SOAP::SOAPString
172
+ # firewall_protocol_id - SOAP::SOAPInt
173
+ # source_port - SOAP::SOAPInt
174
+ # destination_port - SOAP::SOAPInt
175
+ # icmp_parameter_id - SOAP::SOAPInt
176
+ # ip_address - SOAP::SOAPString
177
+ # ip_address_mask - SOAP::SOAPInt
178
+ # action - SOAP::SOAPString
179
+ # jump_to - SOAP::SOAPInt
180
+ class FirewallTemplateRule # :nodoc:
181
+ attr_accessor :firewall_template_rule_id
182
+ attr_accessor :firewall_template_id
183
+ attr_accessor :sequence_no
184
+ attr_accessor :rule_name
185
+ attr_accessor :direction
186
+ attr_accessor :firewall_protocol_id
187
+ attr_accessor :source_port
188
+ attr_accessor :destination_port
189
+ attr_accessor :icmp_parameter_id
190
+ attr_accessor :ip_address
191
+ attr_accessor :ip_address_mask
192
+ attr_accessor :action
193
+ attr_accessor :jump_to
194
+
195
+ def initialize(firewall_template_rule_id = nil, firewall_template_id = nil, sequence_no = nil, rule_name = nil, direction = nil, firewall_protocol_id = nil, source_port = nil, destination_port = nil, icmp_parameter_id = nil, ip_address = nil, ip_address_mask = nil, action = nil, jump_to = nil)
196
+ @firewall_template_rule_id = firewall_template_rule_id
197
+ @firewall_template_id = firewall_template_id
198
+ @sequence_no = sequence_no
199
+ @rule_name = rule_name
200
+ @direction = direction
201
+ @firewall_protocol_id = firewall_protocol_id
202
+ @source_port = source_port
203
+ @destination_port = destination_port
204
+ @icmp_parameter_id = icmp_parameter_id
205
+ @ip_address = ip_address
206
+ @ip_address_mask = ip_address_mask
207
+ @action = action
208
+ @jump_to = jump_to
209
+ end
210
+ end
211
+
212
+ # {http://api.flexiscale.com}IcmpProtocol
213
+ # icmp_protocol_id - SOAP::SOAPInt
214
+ # description - SOAP::SOAPString
215
+ class IcmpProtocol # :nodoc:
216
+ attr_accessor :icmp_protocol_id
217
+ attr_accessor :description
218
+
219
+ def initialize(icmp_protocol_id = nil, description = nil)
220
+ @icmp_protocol_id = icmp_protocol_id
221
+ @description = description
222
+ end
223
+ end
224
+
225
+ # {http://api.flexiscale.com}FirewallProtocol
226
+ # firewall_protocol_id - SOAP::SOAPInt
227
+ # name - SOAP::SOAPString
228
+ class FirewallProtocol # :nodoc:
229
+ attr_accessor :firewall_protocol_id
230
+ attr_accessor :name
231
+
232
+ def initialize(firewall_protocol_id = nil, name = nil)
233
+ @firewall_protocol_id = firewall_protocol_id
234
+ @name = name
235
+ end
236
+ end
237
+
238
+ # {http://api.flexiscale.com}Vlan
239
+ # vlan_id - SOAP::SOAPInt
240
+ # vlan_name - SOAP::SOAPString
241
+ class Vlan # :nodoc:
242
+ attr_accessor :vlan_id
243
+ attr_accessor :vlan_name
244
+
245
+ def initialize(vlan_id = nil, vlan_name = nil)
246
+ @vlan_id = vlan_id
247
+ @vlan_name = vlan_name
248
+ end
249
+ end
250
+
251
+ # {http://api.flexiscale.com}Server
252
+ # server_id - SOAP::SOAPInt
253
+ # server_name - SOAP::SOAPString
254
+ # status - SOAP::SOAPString
255
+ # package_id - SOAP::SOAPInt
256
+ # processors - SOAP::SOAPInt
257
+ # memory - SOAP::SOAPInt
258
+ # operating_system_image - FlexiScale::OperatingSystemImage
259
+ # disk_capacity - SOAP::SOAPLong
260
+ # disks - FlexiScale::ArrayOf_xsd_int
261
+ # network_interfaces - FlexiScale::ArrayOf_xsd_int
262
+ # initial_password - SOAP::SOAPString
263
+ # uptime - SOAP::SOAPLong
264
+ # ip_addresses - FlexiScale::ArrayOf_xsd_string
265
+ # modified - SOAP::SOAPBoolean
266
+ class Server # :nodoc:
267
+ attr_accessor :server_id
268
+ attr_accessor :server_name
269
+ attr_accessor :status
270
+ attr_accessor :package_id
271
+ attr_accessor :processors
272
+ attr_accessor :memory
273
+ attr_accessor :operating_system_image
274
+ attr_accessor :disk_capacity
275
+ attr_accessor :disks
276
+ attr_accessor :network_interfaces
277
+ attr_accessor :initial_password
278
+ attr_accessor :uptime
279
+ attr_accessor :ip_addresses
280
+ attr_accessor :modified
281
+
282
+ def initialize(server_id = nil, server_name = nil, status = nil, package_id = nil, processors = nil, memory = nil, operating_system_image = nil, disk_capacity = nil, disks = nil, network_interfaces = nil, initial_password = nil, uptime = nil, ip_addresses = nil, modified = nil)
283
+ @server_id = server_id
284
+ @server_name = server_name
285
+ @status = status
286
+ @package_id = package_id
287
+ @processors = processors
288
+ @memory = memory
289
+ @operating_system_image = operating_system_image
290
+ @disk_capacity = disk_capacity
291
+ @disks = disks
292
+ @network_interfaces = network_interfaces
293
+ @initial_password = initial_password
294
+ @uptime = uptime
295
+ @ip_addresses = ip_addresses
296
+ @modified = modified
297
+ end
298
+
299
+ def on_simple_outbound
300
+ { 'kd' => 1234567 }
301
+ end
302
+
303
+ end
304
+
305
+ # {http://api.flexiscale.com}Job
306
+ # job_id - SOAP::SOAPInt
307
+ # type_id - SOAP::SOAPInt
308
+ # status - SOAP::SOAPInt
309
+ # started - SOAP::SOAPDateTime
310
+ # finished - SOAP::SOAPDateTime
311
+ # description - SOAP::SOAPString
312
+ # parent_job - SOAP::SOAPInt
313
+ # notes - SOAP::SOAPString
314
+ class Job # :nodoc:
315
+ attr_accessor :job_id
316
+ attr_accessor :type_id
317
+ attr_accessor :status
318
+ attr_accessor :started
319
+ attr_accessor :finished
320
+ attr_accessor :description
321
+ attr_accessor :parent_job
322
+ attr_accessor :notes
323
+
324
+ def initialize(job_id = nil, type_id = nil, status = nil, started = nil, finished = nil, description = nil, parent_job = nil, notes = nil)
325
+ @job_id = job_id
326
+ @type_id = type_id
327
+ @status = status
328
+ @started = started
329
+ @finished = finished
330
+ @description = description
331
+ @parent_job = parent_job
332
+ @notes = notes
333
+ end
334
+ end
335
+
336
+ # {http://api.flexiscale.com}Package
337
+ # package_id - SOAP::SOAPInt
338
+ # package_name - SOAP::SOAPString
339
+ class Package # :nodoc:
340
+ attr_accessor :package_id
341
+ attr_accessor :package_name
342
+
343
+ def initialize(package_id = nil, package_name = nil)
344
+ @package_id = package_id
345
+ @package_name = package_name
346
+ end
347
+ end
348
+
349
+ # {http://api.flexiscale.com}DebitItem
350
+ # debit_item_id - SOAP::SOAPInt
351
+ # item_type - SOAP::SOAPString
352
+ # type_id - SOAP::SOAPInt
353
+ # item_value - SOAP::SOAPFloat
354
+ # item_cost - SOAP::SOAPFloat
355
+ # debit_id - SOAP::SOAPInt
356
+ # description - SOAP::SOAPString
357
+ # timestamp - SOAP::SOAPString
358
+ class DebitItem # :nodoc:
359
+ attr_accessor :debit_item_id
360
+ attr_accessor :item_type
361
+ attr_accessor :type_id
362
+ attr_accessor :item_value
363
+ attr_accessor :item_cost
364
+ attr_accessor :debit_id
365
+ attr_accessor :description
366
+ attr_accessor :timestamp
367
+
368
+ def initialize(debit_item_id = nil, item_type = nil, type_id = nil, item_value = nil, item_cost = nil, debit_id = nil, description = nil, timestamp = nil)
369
+ @debit_item_id = debit_item_id
370
+ @item_type = item_type
371
+ @type_id = type_id
372
+ @item_value = item_value
373
+ @item_cost = item_cost
374
+ @debit_id = debit_id
375
+ @description = description
376
+ @timestamp = timestamp
377
+ end
378
+ end
379
+
380
+ # {http://api.flexiscale.com}Debit
381
+ # debit_id - SOAP::SOAPInt
382
+ # creation_time - SOAP::SOAPString
383
+ # item_count - SOAP::SOAPInt
384
+ # item_cost - SOAP::SOAPFloat
385
+ class Debit # :nodoc:
386
+ attr_accessor :debit_id
387
+ attr_accessor :creation_time
388
+ attr_accessor :item_count
389
+ attr_accessor :item_cost
390
+
391
+ def initialize(debit_id = nil, creation_time = nil, item_count = nil, item_cost = nil)
392
+ @debit_id = debit_id
393
+ @creation_time = creation_time
394
+ @item_count = item_count
395
+ @item_cost = item_cost
396
+ end
397
+ end
398
+
399
+ # {http://api.flexiscale.com}Credit
400
+ # credit_id - SOAP::SOAPInt
401
+ # credit_date - SOAP::SOAPString
402
+ # credit_amount - SOAP::SOAPFloat
403
+ # unused_credit - SOAP::SOAPFloat
404
+ class Credit # :nodoc:
405
+ attr_accessor :credit_id
406
+ attr_accessor :credit_date
407
+ attr_accessor :credit_amount
408
+ attr_accessor :unused_credit
409
+
410
+ def initialize(credit_id = nil, credit_date = nil, credit_amount = nil, unused_credit = nil)
411
+ @credit_id = credit_id
412
+ @credit_date = credit_date
413
+ @credit_amount = credit_amount
414
+ @unused_credit = unused_credit
415
+ end
416
+ end
417
+
418
+ # {http://api.flexiscale.com}CreditDebit
419
+ # credit_debit_id - SOAP::SOAPInt
420
+ # credit_id - SOAP::SOAPInt
421
+ # debit_id - SOAP::SOAPInt
422
+ # amount - SOAP::SOAPFloat
423
+ class CreditDebit # :nodoc:
424
+ attr_accessor :credit_debit_id
425
+ attr_accessor :credit_id
426
+ attr_accessor :debit_id
427
+ attr_accessor :amount
428
+
429
+ def initialize(credit_debit_id = nil, credit_id = nil, debit_id = nil, amount = nil)
430
+ @credit_debit_id = credit_debit_id
431
+ @credit_id = credit_id
432
+ @debit_id = debit_id
433
+ @amount = amount
434
+ end
435
+ end
436
+
437
+ # {http://api.flexiscale.com}ArrayOf_xsd_int
438
+ class ArrayOf_xsd_int < ::Array # :nodoc:
439
+ end
440
+
441
+ # {http://api.flexiscale.com}ArrayOf_xsd_string
442
+ class ArrayOf_xsd_string < ::Array # :nodoc:
443
+ end
444
+
445
+ # {http://api.flexiscale.com}ArrayOfServer
446
+ class ArrayOfServer < ::Array # :nodoc:
447
+ end
448
+
449
+ # {http://api.flexiscale.com}ArrayOfOperatingSystemImage
450
+ class ArrayOfOperatingSystemImage < ::Array # :nodoc:
451
+ end
452
+
453
+ # {http://api.flexiscale.com}ArrayOfFirewall
454
+ class ArrayOfFirewall < ::Array # :nodoc:
455
+ end
456
+
457
+ # {http://api.flexiscale.com}ArrayOfFirewallTemplate
458
+ class ArrayOfFirewallTemplate < ::Array # :nodoc:
459
+ end
460
+
461
+ # {http://api.flexiscale.com}ArrayOfFirewallRule
462
+ class ArrayOfFirewallRule < ::Array # :nodoc:
463
+ end
464
+
465
+ # {http://api.flexiscale.com}ArrayOfFirewallTemplateRule
466
+ class ArrayOfFirewallTemplateRule < ::Array # :nodoc:
467
+ end
468
+
469
+ # {http://api.flexiscale.com}ArrayOfIcmpProtocol
470
+ class ArrayOfIcmpProtocol < ::Array # :nodoc:
471
+ end
472
+
473
+ # {http://api.flexiscale.com}ArrayOfFirewallProtocol
474
+ class ArrayOfFirewallProtocol < ::Array # :nodoc:
475
+ end
476
+
477
+ # {http://api.flexiscale.com}ArrayOfIpBlock
478
+ class ArrayOfIpBlock < ::Array # :nodoc:
479
+ end
480
+
481
+ # {http://api.flexiscale.com}ArrayOfVlan
482
+ class ArrayOfVlan < ::Array # :nodoc:
483
+ end
484
+
485
+ # {http://api.flexiscale.com}ArrayOfNetworkInterface
486
+ class ArrayOfNetworkInterface < ::Array # :nodoc:
487
+ end
488
+
489
+ # {http://api.flexiscale.com}ArrayOfDisk
490
+ class ArrayOfDisk < ::Array # :nodoc:
491
+ end
492
+
493
+ # {http://api.flexiscale.com}ArrayOfJob
494
+ class ArrayOfJob < ::Array # :nodoc:
495
+ end
496
+
497
+ # {http://api.flexiscale.com}ArrayOfPackage
498
+ class ArrayOfPackage < ::Array # :nodoc:
499
+ end
500
+
501
+ # {http://api.flexiscale.com}ArrayOfDebitItem
502
+ class ArrayOfDebitItem < ::Array # :nodoc:
503
+ end
504
+
505
+ # {http://api.flexiscale.com}ArrayOfDebit
506
+ class ArrayOfDebit < ::Array # :nodoc:
507
+ end
508
+
509
+ # {http://api.flexiscale.com}ArrayOfCredit
510
+ class ArrayOfCredit < ::Array # :nodoc:
511
+ end
512
+
513
+ end