class Netscaler::Server
Public Class Methods
new(netscaler)
click to toggle source
# File lib/netscaler/server.rb, line 5 def initialize(netscaler) @netscaler = netscaler end
Public Instance Methods
add(:name => 'foo', :ipaddress => '192.168.1.10', :domain => 'bar.com')
click to toggle source
method add
requires arg :name but :ipaddress and :domain are optional but requires one of them.
# File lib/netscaler/server.rb, line 11 def add(server) # :args: :name => 'foo', :ipaddress => '192.168.1.10', :domain => 'bar.com' raise ArgumentError, 'server cannot be null' if server.nil? if server[:domain] != nil then validate_payload(server, [:name, :domain]) else validate_payload(server, [:name, :ipaddress]) end return @netscaler.adapter.post_no_body('config/server/', {'server' => server}) end
disable(:server, :service_group)
click to toggle source
# File lib/netscaler/server.rb, line 32 def disable(payload) # :args: :server, :service_group toggle('disable', payload) end
enable(:server, :service_group)
click to toggle source
# File lib/netscaler/server.rb, line 28 def enable(payload) # :args: :server, :service_group toggle('enable', payload) end
remove(:server)
click to toggle source
# File lib/netscaler/server.rb, line 22 def remove(payload) # :args: :server raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:server]) return @netscaler.adapter.delete("config/server/#{payload[:server]}") end
show(:server => 'foo')
click to toggle source
:server is optional, if omitted it will return all servers configured on the Netscaler
.
# File lib/netscaler/server.rb, line 45 def show(payload = {}) # :args: :server => 'foo' if payload[:server] != nil then validate_payload(payload, [:server]) return @netscaler.adapter.get("config/server/#{payload[:server]}") elsif payload == {} then return @netscaler.adapter.get('config/server/') else raise ArgumentError, 'payload supplied must have been missing :server' end end
show_bindings(:server => 'foo')
click to toggle source
# File lib/netscaler/server.rb, line 36 def show_bindings(payload) # :args: :server => 'foo' raise ArgumentError, 'payload cannot be null' if payload.nil? validate_payload(payload, [:server]) return @netscaler.adapter.get("config/server_binding/#{payload[:server]}") end
Private Instance Methods
toggle(toggle_action, payload)
click to toggle source
# File lib/netscaler/server.rb, line 57 def toggle(toggle_action, payload) raise ArgumentError, 'payload cannot be null' if payload.nil? #validate_payload(payload, [:server, :service_group]) validate_payload(payload, [:server]) return @netscaler.adapter.post('config/', {"params" => {"action" => toggle_action}, "server" => {"name" => payload[:server]}}) end