zeus-api 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,134 @@
1
+
2
+ require 'rubygems'
3
+ gem 'soap4r'
4
+
5
+ require 'soap/mapping'
6
+
7
+ module PoolMappingRegistry
8
+ EncodedRegistry = ::SOAP::Mapping::EncodedRegistry.new
9
+ LiteralRegistry = ::SOAP::Mapping::LiteralRegistry.new
10
+ NsC_10 = "http://soap.zeus.com/zxtm/1.0/"
11
+
12
+ EncodedRegistry.set(
13
+ PoolLoadBalancingAlgorithmArray,
14
+ ::SOAP::SOAPArray,
15
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
16
+ { :type => XSD::QName.new("http://soap.zeus.com/zxtm/1.0/", "Pool.LoadBalancingAlgorithm") }
17
+ )
18
+
19
+ EncodedRegistry.register(
20
+ :class => PoolPriorityValueDefinition,
21
+ :schema_type => XSD::QName.new(NsC_10, "Pool.PriorityValueDefinition"),
22
+ :schema_element => [
23
+ ["node", ["SOAP::SOAPString", XSD::QName.new(nil, "node")]],
24
+ ["priority", ["SOAP::SOAPInt", XSD::QName.new(nil, "priority")]]
25
+ ]
26
+ )
27
+
28
+ EncodedRegistry.set(
29
+ PoolPriorityValueDefinitionArray,
30
+ ::SOAP::SOAPArray,
31
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
32
+ { :type => XSD::QName.new(NsC_10, "Pool.PriorityValueDefinition") }
33
+ )
34
+
35
+ EncodedRegistry.set(
36
+ PoolPriorityValueDefinitionArrayArray,
37
+ ::SOAP::SOAPArray,
38
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
39
+ { :type => XSD::QName.new(NsC_10, "Pool.PriorityValueDefinitionArray") }
40
+ )
41
+
42
+ EncodedRegistry.register(
43
+ :class => PoolWeightingsDefinition,
44
+ :schema_type => XSD::QName.new(NsC_10, "Pool.WeightingsDefinition"),
45
+ :schema_element => [
46
+ ["node", ["SOAP::SOAPString", XSD::QName.new(nil, "node")]],
47
+ ["weighting", ["SOAP::SOAPInt", XSD::QName.new(nil, "weighting")]]
48
+ ]
49
+ )
50
+
51
+ EncodedRegistry.set(
52
+ PoolWeightingsDefinitionArray,
53
+ ::SOAP::SOAPArray,
54
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
55
+ { :type => XSD::QName.new(NsC_10, "Pool.WeightingsDefinition") }
56
+ )
57
+
58
+ EncodedRegistry.set(
59
+ PoolWeightingsDefinitionArrayArray,
60
+ ::SOAP::SOAPArray,
61
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
62
+ { :type => XSD::QName.new(NsC_10, "Pool.WeightingsDefinitionArray") }
63
+ )
64
+
65
+ EncodedRegistry.set(
66
+ StringArray,
67
+ ::SOAP::SOAPArray,
68
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
69
+ { :type => XSD::QName.new("http://www.w3.org/2001/XMLSchema", "string") }
70
+ )
71
+
72
+ EncodedRegistry.set(
73
+ StringArrayArray,
74
+ ::SOAP::SOAPArray,
75
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
76
+ { :type => XSD::QName.new(NsC_10, "StringArray") }
77
+ )
78
+
79
+ EncodedRegistry.set(
80
+ BooleanArray,
81
+ ::SOAP::SOAPArray,
82
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
83
+ { :type => XSD::QName.new("http://www.w3.org/2001/XMLSchema", "boolean") }
84
+ )
85
+
86
+ EncodedRegistry.set(
87
+ BooleanArrayArray,
88
+ ::SOAP::SOAPArray,
89
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
90
+ { :type => XSD::QName.new(NsC_10, "booleanArray") }
91
+ )
92
+
93
+ EncodedRegistry.set(
94
+ IntArray,
95
+ ::SOAP::SOAPArray,
96
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
97
+ { :type => XSD::QName.new("http://www.w3.org/2001/XMLSchema", "int") }
98
+ )
99
+
100
+ EncodedRegistry.set(
101
+ UnsignedIntArray,
102
+ ::SOAP::SOAPArray,
103
+ ::SOAP::Mapping::EncodedRegistry::TypedArrayFactory,
104
+ { :type => XSD::QName.new("http://www.w3.org/2001/XMLSchema", "unsignedInt") }
105
+ )
106
+
107
+ EncodedRegistry.register(
108
+ :class => PoolLoadBalancingAlgorithm,
109
+ :schema_type => XSD::QName.new(NsC_10, "Pool.LoadBalancingAlgorithm")
110
+ )
111
+
112
+ LiteralRegistry.register(
113
+ :class => PoolPriorityValueDefinition,
114
+ :schema_type => XSD::QName.new(NsC_10, "Pool.PriorityValueDefinition"),
115
+ :schema_element => [
116
+ ["node", ["SOAP::SOAPString", XSD::QName.new(nil, "node")]],
117
+ ["priority", ["SOAP::SOAPInt", XSD::QName.new(nil, "priority")]]
118
+ ]
119
+ )
120
+
121
+ LiteralRegistry.register(
122
+ :class => PoolWeightingsDefinition,
123
+ :schema_type => XSD::QName.new(NsC_10, "Pool.WeightingsDefinition"),
124
+ :schema_element => [
125
+ ["node", ["SOAP::SOAPString", XSD::QName.new(nil, "node")]],
126
+ ["weighting", ["SOAP::SOAPInt", XSD::QName.new(nil, "weighting")]]
127
+ ]
128
+ )
129
+
130
+ LiteralRegistry.register(
131
+ :class => PoolLoadBalancingAlgorithm,
132
+ :schema_type => XSD::QName.new(NsC_10, "Pool.LoadBalancingAlgorithm")
133
+ )
134
+ end
@@ -0,0 +1,245 @@
1
+
2
+ #
3
+ # PoolService
4
+ #
5
+ # This class provides a facade for SOAP method calls to the
6
+ # ZXTM Pool web service.
7
+ class PoolService
8
+
9
+ attr_accessor :driver
10
+
11
+ def initialize(endpoint=nil, username=nil, password=nil)
12
+ @driver = PoolPort.new(endpoint)
13
+ @driver.options["protocol.http.ssl_config.verify_mode"] = OpenSSL::SSL::VERIFY_NONE
14
+ @driver.options["protocol.http.basic_auth"] << [endpoint, username, password]
15
+ end
16
+
17
+ # Returns a list of pool names
18
+ #
19
+ # Args
20
+ # N/A
21
+ #
22
+ # Examples
23
+ # list() - Returns all pool names
24
+ #
25
+ def list()
26
+ result = []
27
+ pools = @driver.getPoolNames
28
+ pools.length.times do |i|
29
+ result << pools[i]
30
+ end
31
+ return result
32
+ end
33
+
34
+ # Creates new pool
35
+ #
36
+ # Args
37
+ # name (String) - Pool's name
38
+ # vs_info (Array) - Pool's nodes
39
+ #
40
+ # Examples
41
+ # create("web-pool", ["10.0.0.2", "10.0.0.3"]) - Creates new pool called "web-pool" with 2 nodes
42
+ #
43
+ def create(name=nil, nodes=[])
44
+ @driver.addPool([name], [nodes])
45
+ end
46
+
47
+ # Copies a pool
48
+ #
49
+ # Args
50
+ # name (String) - Name of current pool
51
+ # new_name (String) - Name of new pool
52
+ #
53
+ # Examples
54
+ # copy(name, new_name) - Copies pool called "name" to a new pool, called "new_name"
55
+ #
56
+ def copy(name, new_name)
57
+ @driver.copyPool([name], [new_name])
58
+ end
59
+
60
+ # Renames a pool
61
+ #
62
+ # Args
63
+ # name (String) - Current name of pool
64
+ # new_name (String) - New name of pool
65
+ #
66
+ # Examples
67
+ # rename(name, new_name) - Renames pool "name" to "new_name"
68
+ #
69
+ def rename(name, new_name)
70
+ @driver.renamePool([name], [new_name])
71
+ end
72
+
73
+ # Deletes a pool
74
+ #
75
+ # Args
76
+ # name (String) - Name of pool
77
+ #
78
+ # Examples
79
+ # delete(name) - Deletes pool called "name"
80
+ #
81
+ def delete(name)
82
+ @driver.deletePool([name])
83
+ end
84
+
85
+ # Sets or return failure pool for pool
86
+ #
87
+ # Args
88
+ # name (String) - Pool name
89
+ # nodes (Array) - Nodes (["host1:port", "host2:port"])
90
+ #
91
+ # Examples
92
+ # failure_pool("test", "failure_pool")
93
+ # failure_pool("test") - Returns
94
+ #
95
+ def failure_pool(name, failure_name=nil)
96
+ if failure_name.nil?
97
+ @driver.getFailurePool([name])
98
+ else
99
+ @driver.setFailurePool([name],[failure_name])
100
+ end
101
+ end
102
+
103
+
104
+ # Returns a list of nodes within a pool
105
+ #
106
+ # Args
107
+ # name (String) - Pool name
108
+ #
109
+ # Examples
110
+ # list_nodes(name) - Returns nodes for pool "name"
111
+ #
112
+ def list_nodes(name, status=nil)
113
+ result = []
114
+ valid_status = [:all, :draining]
115
+ status = :all if status.nil? or !valid_status.include?(status)
116
+
117
+ case status
118
+ when :all
119
+ result = @driver.getNodes([name])
120
+ when :draining
121
+ result = @driver.getDrainingNodes([name])
122
+ end
123
+
124
+ return result
125
+
126
+ end
127
+
128
+ # Adds a node to a pool
129
+ #
130
+ # Args
131
+ # name (String) - Pool name
132
+ # node (String) - Node ("host:port")
133
+ #
134
+ # Examples
135
+ # add_node("pool", "host:80") - Returns nodes for pool "name"
136
+ #
137
+ def add_node(name, node)
138
+ @driver.addNodes([name], [[node]])
139
+ end
140
+
141
+ # Adds nodes to a pool
142
+ #
143
+ # Args
144
+ # name (String) - Pool name
145
+ # nodes (Array) - Nodes (["host1:port", "host2:port"])
146
+ #
147
+ # Examples
148
+ # add_nodes("pool",["host1:80", "host2:80"])
149
+ #
150
+ def add_nodes(name, nodes)
151
+ @driver.addNodes([name], [nodes])
152
+ end
153
+
154
+ # Removes a node from a pool
155
+ #
156
+ # Args
157
+ # name (String) - Pool name
158
+ # node (String) - Node ("host:port")
159
+ #
160
+ # Examples
161
+ # remove_node("pool", "host:80")
162
+ #
163
+ def remove_node(name, node)
164
+ @driver.removeNodes([name], [[node]])
165
+ end
166
+
167
+ # Removes nodes to a pool
168
+ #
169
+ # Args
170
+ # name (String) - Pool name
171
+ # nodes (Array) - Nodes (["host1:port", "host2:port"])
172
+ #
173
+ # Examples
174
+ # remove_nodes("pool",["host1:80", "host2:80"])
175
+ #
176
+ def remove_nodes(name, nodes)
177
+ @driver.removeNodes([name], [nodes])
178
+ end
179
+
180
+ # Mark a node as draining
181
+ #
182
+ # Args
183
+ # name (String) - Pool name
184
+ # node (String) - Node ("host:port")
185
+ #
186
+ # Examples
187
+ # add_draining_node("pool", "host:80")
188
+ #
189
+ def drain_node(name, node)
190
+ @driver.addDrainingNodes([name], [[node]])
191
+ end
192
+
193
+ # Mark nodes as draining
194
+ #
195
+ # Args
196
+ # name (String) - Pool name
197
+ # nodes (Array) - Nodes (["host1:port", "host2:port"])
198
+ #
199
+ # Examples
200
+ # add_draining_nodes("pool",["host1:80", "host2:80"])
201
+ #
202
+ def drain_nodes(name, nodes)
203
+ @driver.addDrainingNodes([name], [nodes])
204
+ end
205
+
206
+ # Mark a draining node as active
207
+ #
208
+ # Args
209
+ # name (String) - Pool name
210
+ # node (String) - Node ("host:port")
211
+ #
212
+ # Examples
213
+ # remove_draining_node("pool", "host:80")
214
+ #
215
+ def undrain_node(name, node)
216
+ @driver.removeDrainingNodes([name], [[node]])
217
+ end
218
+
219
+ # Mark draining nodes as active
220
+ #
221
+ # Args
222
+ # name (String) - Pool name
223
+ # nodes (Array) - Nodes (["host1:port", "host2:port"])
224
+ #
225
+ # Examples
226
+ # remove_draining_nodes("pool",["host1:80", "host2:80"])
227
+ #
228
+ def undrain_nodes(name, nodes)
229
+ @driver.removeDrainingNodes([name], [nodes])
230
+ end
231
+
232
+ # Return current connection count for node
233
+ #
234
+ # Args
235
+ # name (String) - Pool name
236
+ # nodes (Array) - Nodes (["host1:port", "host2:port"])
237
+ #
238
+ # Examples
239
+ # remove_draining_nodes("pool",["host1:80", "host2:80"])
240
+ #
241
+ def connection_count(node)
242
+ @driver.getNodesConnectionCounts([node])
243
+ end
244
+
245
+ end
@@ -0,0 +1,255 @@
1
+ require 'xsd/qname'
2
+
3
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.BasicInfo
4
+ # port - SOAP::SOAPInt
5
+ # protocol - VirtualServerProtocol
6
+ # default_pool - SOAP::SOAPString
7
+ class VirtualServerBasicInfo
8
+ attr_accessor :port
9
+ attr_accessor :protocol
10
+ attr_accessor :default_pool
11
+
12
+ def initialize(port = nil, protocol = nil, default_pool = nil)
13
+ @port = port
14
+ @protocol = protocol
15
+ @default_pool = default_pool
16
+ end
17
+ end
18
+
19
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.FTPPortRange
20
+ # low - SOAP::SOAPInt
21
+ # high - SOAP::SOAPInt
22
+ class VirtualServerFTPPortRange
23
+ attr_accessor :low
24
+ attr_accessor :high
25
+
26
+ def initialize(low = nil, high = nil)
27
+ @low = low
28
+ @high = high
29
+ end
30
+ end
31
+
32
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.PortRange
33
+ # low - SOAP::SOAPInt
34
+ # high - SOAP::SOAPInt
35
+ class VirtualServerPortRange
36
+ attr_accessor :low
37
+ attr_accessor :high
38
+
39
+ def initialize(low = nil, high = nil)
40
+ @low = low
41
+ @high = high
42
+ end
43
+ end
44
+
45
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.RegexReplacement
46
+ # regex - SOAP::SOAPString
47
+ # replacement - SOAP::SOAPString
48
+ class VirtualServerRegexReplacement
49
+ attr_accessor :regex
50
+ attr_accessor :replacement
51
+
52
+ def initialize(regex = nil, replacement = nil)
53
+ @regex = regex
54
+ @replacement = replacement
55
+ end
56
+ end
57
+
58
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.Rule
59
+ # name - SOAP::SOAPString
60
+ # enabled - SOAP::SOAPBoolean
61
+ # run_frequency - VirtualServerRuleRunFlag
62
+ class VirtualServerRule
63
+ attr_accessor :name
64
+ attr_accessor :enabled
65
+ attr_accessor :run_frequency
66
+
67
+ def initialize(name = nil, enabled = nil, run_frequency = nil)
68
+ @name = name
69
+ @enabled = enabled
70
+ @run_frequency = run_frequency
71
+ end
72
+ end
73
+
74
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLSite
75
+ # dest_address - SOAP::SOAPString
76
+ # certificate - SOAP::SOAPString
77
+ class VirtualServerSSLSite
78
+ attr_accessor :dest_address
79
+ attr_accessor :certificate
80
+
81
+ def initialize(dest_address = nil, certificate = nil)
82
+ @dest_address = dest_address
83
+ @certificate = certificate
84
+ end
85
+ end
86
+
87
+ # {http://soap.zeus.com/zxtm/1.0/}StringArray
88
+ class StringArray < ::Array
89
+ end
90
+
91
+ # {http://soap.zeus.com/zxtm/1.0/}StringArrayArray
92
+ class StringArrayArray < ::Array
93
+ end
94
+
95
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.BasicInfoArray
96
+ class VirtualServerBasicInfoArray < ::Array
97
+ end
98
+
99
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.CookieDomainRewriteModeArray
100
+ class VirtualServerCookieDomainRewriteModeArray < ::Array
101
+ end
102
+
103
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.CookieSecureFlagRewriteModeArray
104
+ class VirtualServerCookieSecureFlagRewriteModeArray < ::Array
105
+ end
106
+
107
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.FTPPortRangeArray
108
+ class VirtualServerFTPPortRangeArray < ::Array
109
+ end
110
+
111
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.LocationDefaultRewriteModeArray
112
+ class VirtualServerLocationDefaultRewriteModeArray < ::Array
113
+ end
114
+
115
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.PortRangeArray
116
+ class VirtualServerPortRangeArray < ::Array
117
+ end
118
+
119
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.ProtocolArray
120
+ class VirtualServerProtocolArray < ::Array
121
+ end
122
+
123
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.RegexReplacementArray
124
+ class VirtualServerRegexReplacementArray < ::Array
125
+ end
126
+
127
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.RuleArray
128
+ class VirtualServerRuleArray < ::Array
129
+ end
130
+
131
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.RuleArrayArray
132
+ class VirtualServerRuleArrayArray < ::Array
133
+ end
134
+
135
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SIPDangerousRequestModeArray
136
+ class VirtualServerSIPDangerousRequestModeArray < ::Array
137
+ end
138
+
139
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SIPModeArray
140
+ class VirtualServerSIPModeArray < ::Array
141
+ end
142
+
143
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLClientCertificateHeadersArray
144
+ class VirtualServerSSLClientCertificateHeadersArray < ::Array
145
+ end
146
+
147
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLRequestClientCertModeArray
148
+ class VirtualServerSSLRequestClientCertModeArray < ::Array
149
+ end
150
+
151
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLSiteArray
152
+ class VirtualServerSSLSiteArray < ::Array
153
+ end
154
+
155
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLSiteArrayArray
156
+ class VirtualServerSSLSiteArrayArray < ::Array
157
+ end
158
+
159
+ # {http://soap.zeus.com/zxtm/1.0/}booleanArray
160
+ class BooleanArray < ::Array
161
+ end
162
+
163
+ # {http://soap.zeus.com/zxtm/1.0/}booleanArrayArray
164
+ class BooleanArrayArray < ::Array
165
+ end
166
+
167
+ # {http://soap.zeus.com/zxtm/1.0/}intArray
168
+ class IntArray < ::Array
169
+ end
170
+
171
+ # {http://soap.zeus.com/zxtm/1.0/}unsignedIntArray
172
+ class UnsignedIntArray < ::Array
173
+ end
174
+
175
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.CookieDomainRewriteMode
176
+ class VirtualServerCookieDomainRewriteMode < ::String
177
+ No_rewrite = VirtualServerCookieDomainRewriteMode.new("no_rewrite")
178
+ Set_to_named = VirtualServerCookieDomainRewriteMode.new("set_to_named")
179
+ Set_to_request = VirtualServerCookieDomainRewriteMode.new("set_to_request")
180
+ end
181
+
182
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.CookieSecureFlagRewriteMode
183
+ class VirtualServerCookieSecureFlagRewriteMode < ::String
184
+ No_modify = VirtualServerCookieSecureFlagRewriteMode.new("no_modify")
185
+ Set_secure = VirtualServerCookieSecureFlagRewriteMode.new("set_secure")
186
+ Unset_secure = VirtualServerCookieSecureFlagRewriteMode.new("unset_secure")
187
+ end
188
+
189
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.LocationDefaultRewriteMode
190
+ class VirtualServerLocationDefaultRewriteMode < ::String
191
+ Always = VirtualServerLocationDefaultRewriteMode.new("always")
192
+ If_host_matches = VirtualServerLocationDefaultRewriteMode.new("if_host_matches")
193
+ Never = VirtualServerLocationDefaultRewriteMode.new("never")
194
+ end
195
+
196
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.Protocol
197
+ class VirtualServerProtocol < ::String
198
+ Client_first = VirtualServerProtocol.new("client_first")
199
+ Dns = VirtualServerProtocol.new("dns")
200
+ DnsTcp = VirtualServerProtocol.new("dns-tcp")
201
+ Ftp = VirtualServerProtocol.new("ftp")
202
+ Http = VirtualServerProtocol.new("http")
203
+ Https = VirtualServerProtocol.new("https")
204
+ Imaps = VirtualServerProtocol.new("imaps")
205
+ Imapv2 = VirtualServerProtocol.new("imapv2")
206
+ Imapv3 = VirtualServerProtocol.new("imapv3")
207
+ Imapv4 = VirtualServerProtocol.new("imapv4")
208
+ Ldap = VirtualServerProtocol.new("ldap")
209
+ Ldaps = VirtualServerProtocol.new("ldaps")
210
+ Pop3 = VirtualServerProtocol.new("pop3")
211
+ Pop3s = VirtualServerProtocol.new("pop3s")
212
+ Rtsp = VirtualServerProtocol.new("rtsp")
213
+ Server_first = VirtualServerProtocol.new("server_first")
214
+ Siptcp = VirtualServerProtocol.new("siptcp")
215
+ Sipudp = VirtualServerProtocol.new("sipudp")
216
+ Smtp = VirtualServerProtocol.new("smtp")
217
+ Ssl = VirtualServerProtocol.new("ssl")
218
+ Telnet = VirtualServerProtocol.new("telnet")
219
+ Udp = VirtualServerProtocol.new("udp")
220
+ Udpstreaming = VirtualServerProtocol.new("udpstreaming")
221
+ end
222
+
223
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.RuleRunFlag
224
+ class VirtualServerRuleRunFlag < ::String
225
+ Only_first = VirtualServerRuleRunFlag.new("only_first")
226
+ Run_every = VirtualServerRuleRunFlag.new("run_every")
227
+ end
228
+
229
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SIPDangerousRequestMode
230
+ class VirtualServerSIPDangerousRequestMode < ::String
231
+ Forbid = VirtualServerSIPDangerousRequestMode.new("forbid")
232
+ Forward = VirtualServerSIPDangerousRequestMode.new("forward")
233
+ Node = VirtualServerSIPDangerousRequestMode.new("node")
234
+ end
235
+
236
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SIPMode
237
+ class VirtualServerSIPMode < ::String
238
+ Fullgw = VirtualServerSIPMode.new("fullgw")
239
+ Route = VirtualServerSIPMode.new("route")
240
+ Sipgw = VirtualServerSIPMode.new("sipgw")
241
+ end
242
+
243
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLClientCertificateHeaders
244
+ class VirtualServerSSLClientCertificateHeaders < ::String
245
+ All = VirtualServerSSLClientCertificateHeaders.new("all")
246
+ None = VirtualServerSSLClientCertificateHeaders.new("none")
247
+ Simple = VirtualServerSSLClientCertificateHeaders.new("simple")
248
+ end
249
+
250
+ # {http://soap.zeus.com/zxtm/1.0/}VirtualServer.SSLRequestClientCertMode
251
+ class VirtualServerSSLRequestClientCertMode < ::String
252
+ Dont_request = VirtualServerSSLRequestClientCertMode.new("dont_request")
253
+ Request = VirtualServerSSLRequestClientCertMode.new("request")
254
+ Require = VirtualServerSSLRequestClientCertMode.new("require")
255
+ end