virtuozzo 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/CHANGELOG.rdoc +86 -0
  2. data/Manifest +42 -0
  3. data/README.rdoc +52 -0
  4. data/Rakefile +20 -0
  5. data/lib/virtuozzo.rb +18 -0
  6. data/lib/virtuozzo/constants.rb +7 -0
  7. data/lib/virtuozzo/soap.rb +220 -0
  8. data/lib/virtuozzo/soap/drivers/device.rb +141 -0
  9. data/lib/virtuozzo/soap/drivers/environment.rb +301 -0
  10. data/lib/virtuozzo/soap/drivers/network.rb +101 -0
  11. data/lib/virtuozzo/soap/drivers/process.rb +69 -0
  12. data/lib/virtuozzo/soap/drivers/process_info.rb +61 -0
  13. data/lib/virtuozzo/soap/drivers/relocator.rb +101 -0
  14. data/lib/virtuozzo/soap/drivers/session.rb +149 -0
  15. data/lib/virtuozzo/soap/drivers/support.rb +109 -0
  16. data/lib/virtuozzo/soap/drivers/template.rb +117 -0
  17. data/lib/virtuozzo/soap/drivers/up2date.rb +93 -0
  18. data/lib/virtuozzo/soap/header_handler.rb +91 -0
  19. data/lib/virtuozzo/soap/mapping_registries/device.rb +3658 -0
  20. data/lib/virtuozzo/soap/mapping_registries/environment.rb +4466 -0
  21. data/lib/virtuozzo/soap/mapping_registries/network.rb +3121 -0
  22. data/lib/virtuozzo/soap/mapping_registries/process.rb +3322 -0
  23. data/lib/virtuozzo/soap/mapping_registries/process_info.rb +2990 -0
  24. data/lib/virtuozzo/soap/mapping_registries/relocator.rb +3661 -0
  25. data/lib/virtuozzo/soap/mapping_registries/session.rb +3044 -0
  26. data/lib/virtuozzo/soap/mapping_registries/support.rb +3237 -0
  27. data/lib/virtuozzo/soap/mapping_registries/template.rb +3757 -0
  28. data/lib/virtuozzo/soap/mapping_registries/up2date.rb +3317 -0
  29. data/lib/virtuozzo/soap/types/device.rb +3145 -0
  30. data/lib/virtuozzo/soap/types/environment.rb +3743 -0
  31. data/lib/virtuozzo/soap/types/network.rb +2404 -0
  32. data/lib/virtuozzo/soap/types/process.rb +2713 -0
  33. data/lib/virtuozzo/soap/types/process_info.rb +2328 -0
  34. data/lib/virtuozzo/soap/types/relocator.rb +2920 -0
  35. data/lib/virtuozzo/soap/types/session.rb +2455 -0
  36. data/lib/virtuozzo/soap/types/support.rb +2711 -0
  37. data/lib/virtuozzo/soap/types/template.rb +3086 -0
  38. data/lib/virtuozzo/soap/types/up2date.rb +2672 -0
  39. data/script/console +10 -0
  40. data/script/github-gem-test +15 -0
  41. data/tasks/yard.rake +12 -0
  42. data/virtuozzo.gemspec +37 -0
  43. metadata +154 -0
@@ -0,0 +1,141 @@
1
+ require 'virtuozzo/soap/types/device'
2
+ require 'virtuozzo/soap/mapping_registries/device'
3
+ require 'soap/rpc/driver'
4
+
5
+ module Virtuozzo # :nodoc:
6
+ module SOAP # :nodoc:
7
+ module Drivers # :nodoc:
8
+ # = Device
9
+ #
10
+ class Device < ::SOAP::RPC::Driver
11
+ DefaultEndpointUrl = "https://localhost:4646"
12
+
13
+ Methods = [
14
+ [ nil,
15
+ "get_mounts",
16
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "get_mounts"]],
17
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "get_mountsResponse"]] ],
18
+ { :request_style => :document, :request_use => :literal,
19
+ :response_style => :document, :response_use => :literal,
20
+ :faults => {} }
21
+ ],
22
+ [ nil,
23
+ "new_mount",
24
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "new_mount"]],
25
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "new_mountResponse"]] ],
26
+ { :request_style => :document, :request_use => :literal,
27
+ :response_style => :document, :response_use => :literal,
28
+ :faults => {} }
29
+ ],
30
+ [ nil,
31
+ "umount",
32
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "umount"]],
33
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "umountResponse"]] ],
34
+ { :request_style => :document, :request_use => :literal,
35
+ :response_style => :document, :response_use => :literal,
36
+ :faults => {} }
37
+ ],
38
+ [ nil,
39
+ "get_info",
40
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "get_info"]],
41
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "get_infoResponse"]] ],
42
+ { :request_style => :document, :request_use => :literal,
43
+ :response_style => :document, :response_use => :literal,
44
+ :faults => {} }
45
+ ],
46
+ [ nil,
47
+ "create_drive",
48
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "create_drive"]],
49
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "create_driveResponse"]] ],
50
+ { :request_style => :document, :request_use => :literal,
51
+ :response_style => :document, :response_use => :literal,
52
+ :faults => {} }
53
+ ],
54
+ [ nil,
55
+ "delete_drive",
56
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "delete_drive"]],
57
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "delete_driveResponse"]] ],
58
+ { :request_style => :document, :request_use => :literal,
59
+ :response_style => :document, :response_use => :literal,
60
+ :faults => {} }
61
+ ],
62
+ [ nil,
63
+ "resize_drive",
64
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "resize_drive"]],
65
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "resize_driveResponse"]] ],
66
+ { :request_style => :document, :request_use => :literal,
67
+ :response_style => :document, :response_use => :literal,
68
+ :faults => {} }
69
+ ],
70
+ [ nil,
71
+ "list_device",
72
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "list_device"]],
73
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "list_deviceResponse"]] ],
74
+ { :request_style => :document, :request_use => :literal,
75
+ :response_style => :document, :response_use => :literal,
76
+ :faults => {} }
77
+ ],
78
+ [ nil,
79
+ "forward_device",
80
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "forward_device"]],
81
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "forward_deviceResponse"]] ],
82
+ { :request_style => :document, :request_use => :literal,
83
+ :response_style => :document, :response_use => :literal,
84
+ :faults => {} }
85
+ ],
86
+ [ nil,
87
+ "remove_forward",
88
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "remove_forward"]],
89
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "remove_forwardResponse"]] ],
90
+ { :request_style => :document, :request_use => :literal,
91
+ :response_style => :document, :response_use => :literal,
92
+ :faults => {} }
93
+ ],
94
+ [ nil,
95
+ "list_forward",
96
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "list_forward"]],
97
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/devm", "list_forwardResponse"]] ],
98
+ { :request_style => :document, :request_use => :literal,
99
+ :response_style => :document, :response_use => :literal,
100
+ :faults => {} }
101
+ ]
102
+ ]
103
+
104
+ def initialize(endpoint_url = nil)
105
+ endpoint_url ||= DefaultEndpointUrl
106
+ super(endpoint_url, nil)
107
+ self.mapping_registry = Virtuozzo::SOAP::MappingRegistries::Device::EncodedRegistry
108
+ self.literal_mapping_registry = Virtuozzo::SOAP::MappingRegistries::Device::LiteralRegistry
109
+ init_methods
110
+ end
111
+
112
+ private
113
+
114
+ def init_methods
115
+ Methods.each do |definitions|
116
+ opt = definitions.last
117
+
118
+ # set options to use default namespace instead of using n[#]
119
+ opt.merge!({
120
+ :use_default_namespace => true
121
+ })
122
+
123
+ if opt[:request_style] == :document
124
+ add_document_operation(*definitions)
125
+ else
126
+ add_rpc_operation(*definitions)
127
+ qname = definitions[0]
128
+ name = definitions[2]
129
+ if qname.name != name and qname.name.capitalize == name.capitalize
130
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
131
+ __send__(name, *arg)
132
+ end
133
+ end
134
+ end
135
+ end
136
+ end
137
+ end
138
+
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,301 @@
1
+ require 'virtuozzo/soap/types/environment'
2
+ require 'virtuozzo/soap/mapping_registries/environment'
3
+ require 'soap/rpc/driver'
4
+
5
+ module Virtuozzo # :nodoc:
6
+ module SOAP # :nodoc:
7
+ module Drivers # :nodoc:
8
+ # = Environment
9
+ #
10
+ class Environment < ::SOAP::RPC::Driver
11
+ DefaultEndpointUrl = "https://localhost:4646"
12
+
13
+ Methods = [
14
+ [ nil,
15
+ "get_native_config",
16
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_native_config"]],
17
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_native_configResponse"]] ],
18
+ { :request_style => :document, :request_use => :literal,
19
+ :response_style => :document, :response_use => :literal,
20
+ :faults => {} }
21
+ ],
22
+ [ nil,
23
+ "get_virtual_config",
24
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_virtual_config"]],
25
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_virtual_configResponse"]] ],
26
+ { :request_style => :document, :request_use => :literal,
27
+ :response_style => :document, :response_use => :literal,
28
+ :faults => {} }
29
+ ],
30
+ [ nil,
31
+ "create",
32
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "create"]],
33
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "createResponse"]] ],
34
+ { :request_style => :document, :request_use => :literal,
35
+ :response_style => :document, :response_use => :literal,
36
+ :faults => {} }
37
+ ],
38
+ [ nil,
39
+ "repair",
40
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "repair"]],
41
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "repairResponse"]] ],
42
+ { :request_style => :document, :request_use => :literal,
43
+ :response_style => :document, :response_use => :literal,
44
+ :faults => {} }
45
+ ],
46
+ [ nil,
47
+ "stop_repair",
48
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "stop_repair"]],
49
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "stop_repairResponse"]] ],
50
+ { :request_style => :document, :request_use => :literal,
51
+ :response_style => :document, :response_use => :literal,
52
+ :faults => {} }
53
+ ],
54
+ [ nil,
55
+ "start",
56
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "start"]],
57
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "startResponse"]] ],
58
+ { :request_style => :document, :request_use => :literal,
59
+ :response_style => :document, :response_use => :literal,
60
+ :faults => {} }
61
+ ],
62
+ [ nil,
63
+ "stop",
64
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "stop"]],
65
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "stopResponse"]] ],
66
+ { :request_style => :document, :request_use => :literal,
67
+ :response_style => :document, :response_use => :literal,
68
+ :faults => {} }
69
+ ],
70
+ [ nil,
71
+ "restart",
72
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "restart"]],
73
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "restartResponse"]] ],
74
+ { :request_style => :document, :request_use => :literal,
75
+ :response_style => :document, :response_use => :literal,
76
+ :faults => {} }
77
+ ],
78
+ [ nil,
79
+ "destroy",
80
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "destroy"]],
81
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "destroyResponse"]] ],
82
+ { :request_style => :document, :request_use => :literal,
83
+ :response_style => :document, :response_use => :literal,
84
+ :faults => {} }
85
+ ],
86
+ [ nil,
87
+ "get_info",
88
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_info"]],
89
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_infoResponse"]] ],
90
+ { :request_style => :document, :request_use => :literal,
91
+ :response_style => :document, :response_use => :literal,
92
+ :faults => {} }
93
+ ],
94
+ [ nil,
95
+ "get_list",
96
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_list"]],
97
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_listResponse"]] ],
98
+ { :request_style => :document, :request_use => :literal,
99
+ :response_style => :document, :response_use => :literal,
100
+ :faults => {} }
101
+ ],
102
+ [ nil,
103
+ "set",
104
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "set"]],
105
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "setResponse"]] ],
106
+ { :request_style => :document, :request_use => :literal,
107
+ :response_style => :document, :response_use => :literal,
108
+ :faults => {} }
109
+ ],
110
+ [ nil,
111
+ "put_private",
112
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "put_private"]],
113
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "put_privateResponse"]] ],
114
+ { :request_style => :document, :request_use => :literal,
115
+ :response_style => :document, :response_use => :literal,
116
+ :faults => {} }
117
+ ],
118
+ [ nil,
119
+ "get_private",
120
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_private"]],
121
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_privateResponse"]] ],
122
+ { :request_style => :document, :request_use => :literal,
123
+ :response_style => :document, :response_use => :literal,
124
+ :faults => {} }
125
+ ],
126
+ [ nil,
127
+ "get_vt_settings",
128
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_vt_settings"]],
129
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_vt_settingsResponse"]] ],
130
+ { :request_style => :document, :request_use => :literal,
131
+ :response_style => :document, :response_use => :literal,
132
+ :faults => {} }
133
+ ],
134
+ [ nil,
135
+ "set_vt_settings",
136
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "set_vt_settings"]],
137
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "set_vt_settingsResponse"]] ],
138
+ { :request_style => :document, :request_use => :literal,
139
+ :response_style => :document, :response_use => :literal,
140
+ :faults => {} }
141
+ ],
142
+ [ nil,
143
+ "get_vt_info",
144
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_vt_info"]],
145
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_vt_infoResponse"]] ],
146
+ { :request_style => :document, :request_use => :literal,
147
+ :response_style => :document, :response_use => :literal,
148
+ :faults => {} }
149
+ ],
150
+ [ nil,
151
+ "get_log",
152
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_log"]],
153
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/envm", "get_logResponse"]] ],
154
+ { :request_style => :document, :request_use => :literal,
155
+ :response_style => :document, :response_use => :literal,
156
+ :faults => {} }
157
+ ],
158
+ [ nil,
159
+ "allocate_veid",
160
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "allocate_veid"]],
161
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "allocate_veidResponse"]] ],
162
+ { :request_style => :document, :request_use => :literal,
163
+ :response_style => :document, :response_use => :literal,
164
+ :faults => {} }
165
+ ],
166
+ [ nil,
167
+ "mount",
168
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "mount"]],
169
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "mountResponse"]] ],
170
+ { :request_style => :document, :request_use => :literal,
171
+ :response_style => :document, :response_use => :literal,
172
+ :faults => {} }
173
+ ],
174
+ [ nil,
175
+ "umount",
176
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "umount"]],
177
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "umountResponse"]] ],
178
+ { :request_style => :document, :request_use => :literal,
179
+ :response_style => :document, :response_use => :literal,
180
+ :faults => {} }
181
+ ],
182
+ [ nil,
183
+ "suspend",
184
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "suspend"]],
185
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "suspendResponse"]] ],
186
+ { :request_style => :document, :request_use => :literal,
187
+ :response_style => :document, :response_use => :literal,
188
+ :faults => {} }
189
+ ],
190
+ [ nil,
191
+ "resume",
192
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "resume"]],
193
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "resumeResponse"]] ],
194
+ { :request_style => :document, :request_use => :literal,
195
+ :response_style => :document, :response_use => :literal,
196
+ :faults => {} }
197
+ ],
198
+ [ nil,
199
+ "set_user_password",
200
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "set_user_password"]],
201
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "set_user_passwordResponse"]] ],
202
+ { :request_style => :document, :request_use => :literal,
203
+ :response_style => :document, :response_use => :literal,
204
+ :faults => {} }
205
+ ],
206
+ [ nil,
207
+ "upgrade",
208
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "upgrade"]],
209
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "upgradeResponse"]] ],
210
+ { :request_style => :document, :request_use => :literal,
211
+ :response_style => :document, :response_use => :literal,
212
+ :faults => {} }
213
+ ],
214
+ [ nil,
215
+ "determine_env",
216
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "determine_env"]],
217
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "determine_envResponse"]] ],
218
+ { :request_style => :document, :request_use => :literal,
219
+ :response_style => :document, :response_use => :literal,
220
+ :faults => {} }
221
+ ],
222
+ [ nil,
223
+ "get_split_conf",
224
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "get_split_conf"]],
225
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "get_split_confResponse"]] ],
226
+ { :request_style => :document, :request_use => :literal,
227
+ :response_style => :document, :response_use => :literal,
228
+ :faults => {} }
229
+ ],
230
+ [ nil,
231
+ "get_script",
232
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "get_script"]],
233
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "get_scriptResponse"]] ],
234
+ { :request_style => :document, :request_use => :literal,
235
+ :response_style => :document, :response_use => :literal,
236
+ :faults => {} }
237
+ ],
238
+ [ nil,
239
+ "set_script",
240
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "set_script"]],
241
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "set_scriptResponse"]] ],
242
+ { :request_style => :document, :request_use => :literal,
243
+ :response_style => :document, :response_use => :literal,
244
+ :faults => {} }
245
+ ],
246
+ [ nil,
247
+ "del_script",
248
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "del_script"]],
249
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "del_scriptResponse"]] ],
250
+ { :request_style => :document, :request_use => :literal,
251
+ :response_style => :document, :response_use => :literal,
252
+ :faults => {} }
253
+ ],
254
+ [ nil,
255
+ "recover_template",
256
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "recover_template"]],
257
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzaenvm", "recover_templateResponse"]] ],
258
+ { :request_style => :document, :request_use => :literal,
259
+ :response_style => :document, :response_use => :literal,
260
+ :faults => {} }
261
+ ]
262
+ ]
263
+
264
+ def initialize(endpoint_url = nil)
265
+ endpoint_url ||= DefaultEndpointUrl
266
+ super(endpoint_url, nil)
267
+ self.mapping_registry = Virtuozzo::SOAP::MappingRegistries::Environment::EncodedRegistry
268
+ self.literal_mapping_registry = Virtuozzo::SOAP::MappingRegistries::Environment::LiteralRegistry
269
+ init_methods
270
+ end
271
+
272
+ private
273
+
274
+ def init_methods
275
+ Methods.each do |definitions|
276
+ opt = definitions.last
277
+
278
+ # set options to use default namespace instead of using n[#]
279
+ opt.merge!({
280
+ :use_default_namespace => true
281
+ })
282
+
283
+ if opt[:request_style] == :document
284
+ add_document_operation(*definitions)
285
+ else
286
+ add_rpc_operation(*definitions)
287
+ qname = definitions[0]
288
+ name = definitions[2]
289
+ if qname.name != name and qname.name.capitalize == name.capitalize
290
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
291
+ __send__(name, *arg)
292
+ end
293
+ end
294
+ end
295
+ end
296
+ end
297
+ end
298
+
299
+ end
300
+ end
301
+ end
@@ -0,0 +1,101 @@
1
+ require 'virtuozzo/soap/types/network'
2
+ require 'virtuozzo/soap/mapping_registries/network'
3
+ require 'soap/rpc/driver'
4
+
5
+ module Virtuozzo # :nodoc:
6
+ module SOAP # :nodoc:
7
+ module Drivers # :nodoc:
8
+ # = Network
9
+ #
10
+ class Network < ::SOAP::RPC::Driver
11
+ DefaultEndpointUrl = "https://localhost:4646"
12
+
13
+ Methods = [
14
+ [ nil,
15
+ "add",
16
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "add"]],
17
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "addResponse"]] ],
18
+ { :request_style => :document, :request_use => :literal,
19
+ :response_style => :document, :response_use => :literal,
20
+ :faults => {} }
21
+ ],
22
+ [ nil,
23
+ "list",
24
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "list"]],
25
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "listResponse"]] ],
26
+ { :request_style => :document, :request_use => :literal,
27
+ :response_style => :document, :response_use => :literal,
28
+ :faults => {} }
29
+ ],
30
+ [ nil,
31
+ "set",
32
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "set"]],
33
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "setResponse"]] ],
34
+ { :request_style => :document, :request_use => :literal,
35
+ :response_style => :document, :response_use => :literal,
36
+ :faults => {} }
37
+ ],
38
+ [ nil,
39
+ "del",
40
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "del"]],
41
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vzl/4.0.0/networkm", "delResponse"]] ],
42
+ { :request_style => :document, :request_use => :literal,
43
+ :response_style => :document, :response_use => :literal,
44
+ :faults => {} }
45
+ ],
46
+ [ nil,
47
+ "set_config",
48
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzanetworkm", "set_config"]],
49
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzanetworkm", "set_configResponse"]] ],
50
+ { :request_style => :document, :request_use => :literal,
51
+ :response_style => :document, :response_use => :literal,
52
+ :faults => {} }
53
+ ],
54
+ [ nil,
55
+ "get_config",
56
+ [ ["in", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzanetworkm", "get_config"]],
57
+ ["out", "parameter", ["::SOAP::SOAPElement", "http://www.swsoft.com/webservices/vza/4.0.0/vzanetworkm", "get_configResponse"]] ],
58
+ { :request_style => :document, :request_use => :literal,
59
+ :response_style => :document, :response_use => :literal,
60
+ :faults => {} }
61
+ ]
62
+ ]
63
+
64
+ def initialize(endpoint_url = nil)
65
+ endpoint_url ||= DefaultEndpointUrl
66
+ super(endpoint_url, nil)
67
+ self.mapping_registry = Virtuozzo::SOAP::MappingRegistries::Network::EncodedRegistry
68
+ self.literal_mapping_registry = Virtuozzo::SOAP::MappingRegistries::Network::LiteralRegistry
69
+ init_methods
70
+ end
71
+
72
+ private
73
+
74
+ def init_methods
75
+ Methods.each do |definitions|
76
+ opt = definitions.last
77
+
78
+ # set options to use default namespace instead of using n[#]
79
+ opt.merge!({
80
+ :use_default_namespace => true
81
+ })
82
+
83
+ if opt[:request_style] == :document
84
+ add_document_operation(*definitions)
85
+ else
86
+ add_rpc_operation(*definitions)
87
+ qname = definitions[0]
88
+ name = definitions[2]
89
+ if qname.name != name and qname.name.capitalize == name.capitalize
90
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
91
+ __send__(name, *arg)
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end
97
+ end
98
+
99
+ end
100
+ end
101
+ end