class Netscaler::ServiceGroup
Public Class Methods
new(netscaler)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 5 def initialize(netscaler) @netscaler=netscaler end
Public Instance Methods
add(:serviceGroupName => 'foo', :serviceType => 'HTTP')
click to toggle source
# File lib/netscaler/servicegroup.rb, line 9 def add(payload) # :args: :serviceGroupName => 'foo', :serviceType => 'HTTP' raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName, :serviceType]) return @netscaler.adapter.post_no_body("config/servicegroup/", "servicegroup" => payload) end
bind(:serviceGroupName => 'foo', :port => '80', :serverName => 'bar')
click to toggle source
# File lib/netscaler/servicegroup.rb, line 62 def bind(payload) # :args: :serviceGroupName => 'foo', :port => '80', :serverName => 'bar' raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName, :port, :serverName]) return @netscaler.adapter.post_no_body("config/servicegroup_servicegroupmember_binding/#{payload['serviceGroupName']}?action=bind", {'params' => {'action' => 'bind'}, 'servicegroup_servicegroupmember_binding' => payload}) end
disable(service_group)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 32 def disable(payload) # :arg: service_group toggle('disable', payload) end
disable_server(service_group, servername, port)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 47 def disable_server(payload) # :arg: service_group, servername, port raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName, :serverName, :port]) return @netscaler.adapter.post('config/', {"params" => {"action" => "disable"}, "servicegroup" => {"servicegroupname" => payload[:serviceGroupName], "serverName" => payload[:serverName], "port" => payload[:port] }}) end
enable(service_group)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 28 def enable(payload) # :arg: service_group toggle('enable', payload) end
enable_server(service_group, serverName, port)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 36 def enable_server(payload) # :arg: service_group, serverName, port raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName, :serverName, :port]) return @netscaler.adapter.post('config/', {"params" => {"action" => "enable"}, "servicegroup" => {"servicegroupname" => payload[:serviceGroupName], "serverName" => payload[:serverName], "port" => payload[:port] }}) end
remove(serviceGroupName)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 15 def remove(payload) # :arg: serviceGroupName raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName]) return @netscaler.adapter.delete("config/servicegroup/#{payload[:serviceGroupName]}") end
show(servicegroupname)
click to toggle source
argument is optional, if left empty it will return all servicegroups
# File lib/netscaler/servicegroup.rb, line 23 def show(payload={}) # :arg: servicegroupname @netscaler.adapter.get("config/servicegroup/") if payload.empty? @netscaler.adapter.get("config/servicegroup/#{payload}") end
show_bindings(servicegroupname)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 58 def show_bindings(payload) # :args: servicegroupname return @netscaler.adapter.get("config/servicegroup_servicegroupmember_binding/#{payload}") end
stat(payload={})
click to toggle source
# File lib/netscaler/servicegroup.rb, line 74 def stat(payload={}) if payload[:name] != nil then validate_payload(payload, [:name]) @netscaler.adapter.get("stat/servicegroup/#{payload[:name]}") elsif payload == {} then @netscaler.adapter.get('stat/servicegroup') else raise ArgumentError, 'payload cannot be null' if payload.nil? end end
unbind(:serviceGroupName => 'foo', :port => '80', :serverName => 'bar')
click to toggle source
# File lib/netscaler/servicegroup.rb, line 68 def unbind(payload) # :args: :serviceGroupName => 'foo', :port => '80', :serverName => 'bar' raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName, :port, :serverName]) return @netscaler.adapter.post_no_body("config/servicegroup_servicegroupmember_binding/#{payload['serviceGroupName']}?action=unbind", {'params' => {'action' => 'unbind'}, 'servicegroup_servicegroupmember_binding' => payload}) end
Private Instance Methods
toggle(toggle_action, payload)
click to toggle source
# File lib/netscaler/servicegroup.rb, line 86 def toggle(toggle_action, payload) raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:serviceGroupName]) service_group_options = {"servicegroupname" => payload[:serviceGroupName]} service_group_options.merge!("serverName" => payload[:serverName]) if payload[:serverName] service_group_options.merge!("port" => payload[:port]) if payload[:port] return @netscaler.adapter.post('config/', {"params" => {"action" => toggle_action}, "servicegroup" => service_group_options}) end