plainprograms-virtuozzo 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.
Files changed (40) hide show
  1. data/CHANGELOG.rdoc +54 -0
  2. data/README.rdoc +52 -0
  3. data/Rakefile +15 -0
  4. data/lib/virtuozzo/constants.rb +10 -0
  5. data/lib/virtuozzo/soap/drivers/device/mapping_registry.rb +3653 -0
  6. data/lib/virtuozzo/soap/drivers/device/types.rb +3144 -0
  7. data/lib/virtuozzo/soap/drivers/device_driver.rb +141 -0
  8. data/lib/virtuozzo/soap/drivers/environment/mapping_registry.rb +4461 -0
  9. data/lib/virtuozzo/soap/drivers/environment/types.rb +3743 -0
  10. data/lib/virtuozzo/soap/drivers/environment_driver.rb +300 -0
  11. data/lib/virtuozzo/soap/drivers/network/mapping_registry.rb +3116 -0
  12. data/lib/virtuozzo/soap/drivers/network/types.rb +2401 -0
  13. data/lib/virtuozzo/soap/drivers/network_driver.rb +101 -0
  14. data/lib/virtuozzo/soap/drivers/process/mapping_registry.rb +3317 -0
  15. data/lib/virtuozzo/soap/drivers/process/types.rb +2711 -0
  16. data/lib/virtuozzo/soap/drivers/process_driver.rb +69 -0
  17. data/lib/virtuozzo/soap/drivers/process_info/mapping_registry.rb +2985 -0
  18. data/lib/virtuozzo/soap/drivers/process_info/types.rb +2328 -0
  19. data/lib/virtuozzo/soap/drivers/process_info_driver.rb +61 -0
  20. data/lib/virtuozzo/soap/drivers/relocator/mapping_registry.rb +3656 -0
  21. data/lib/virtuozzo/soap/drivers/relocator/types.rb +2916 -0
  22. data/lib/virtuozzo/soap/drivers/relocator_driver.rb +101 -0
  23. data/lib/virtuozzo/soap/drivers/session/mapping_registry.rb +3039 -0
  24. data/lib/virtuozzo/soap/drivers/session/types.rb +2453 -0
  25. data/lib/virtuozzo/soap/drivers/session_driver.rb +149 -0
  26. data/lib/virtuozzo/soap/drivers/support/mapping_registry.rb +3232 -0
  27. data/lib/virtuozzo/soap/drivers/support/types.rb +2708 -0
  28. data/lib/virtuozzo/soap/drivers/support_driver.rb +109 -0
  29. data/lib/virtuozzo/soap/drivers/template/mapping_registry.rb +3752 -0
  30. data/lib/virtuozzo/soap/drivers/template/types.rb +3079 -0
  31. data/lib/virtuozzo/soap/drivers/template_driver.rb +117 -0
  32. data/lib/virtuozzo/soap/drivers/up2date/mapping_registry.rb +3312 -0
  33. data/lib/virtuozzo/soap/drivers/up2date/types.rb +2670 -0
  34. data/lib/virtuozzo/soap/drivers/up2date_driver.rb +92 -0
  35. data/lib/virtuozzo/soap.rb +149 -0
  36. data/lib/virtuozzo.rb +18 -0
  37. data/script/console +10 -0
  38. data/script/github-gem-test +15 -0
  39. data/virtuozzo.gemspec +34 -0
  40. metadata +139 -0
@@ -0,0 +1,101 @@
1
+ require 'virtuozzo/soap/drivers/network/types'
2
+ require 'virtuozzo/soap/drivers/network/mapping_registry'
3
+ require 'soap/rpc/driver'
4
+
5
+ module Virtuozzo
6
+ module SOAP
7
+ module Drivers
8
+ # = NetworkDriver
9
+ #
10
+ class NetworkDriver < ::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 = DefaultMappingRegistry::EncodedRegistry
68
+ self.literal_mapping_registry = DefaultMappingRegistry::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