class Netscaler::Service

Netscaler::Service handles all service entity calls. This includes add, enable, disable and show

Public Class Methods

new(netscaler) click to toggle source
# File lib/netscaler/service.rb, line 8
def initialize(netscaler)
  @netscaler=netscaler
end

Public Instance Methods

add(:name, :serverName, :serviceType, :port) click to toggle source

This method require you already have a server created using Netscaler::Server#add or if it is already configured on the netscaler.

# File lib/netscaler/service.rb, line 15
def add(payload)  # :args: :name, :serverName, :serviceType, :port
  raise ArgumentError, 'payload cannot be null' if payload.nil?
  validate_payload(payload, [:name, :serverName, :serviceType, :port])
  return @netscaler.adapter.post_no_body('config/service/', {'service' => payload})
end
disable(:name => 'foo') click to toggle source
# File lib/netscaler/service.rb, line 47
def disable(payload) # :args:  :name => 'foo'
  raise ArgumentError, 'payload cannot be null' if payload.nil?
  validate_payload(payload, [:name])
  return @netscaler.adapter.post_no_body('config/service/', {'params' => {'action' => 'disable'}, 'service' => payload})
end
enable(:name => 'foo') click to toggle source
# File lib/netscaler/service.rb, line 41
def enable(payload) # :args:  :name => 'foo'
  raise ArgumentError, 'payload cannot be null' if payload.nil?
  validate_payload(payload, [:name])
  return @netscaler.adapter.post_no_body('config/service/', {'params' => {'action' => 'enable'}, 'service' => payload})
end
remove(:server) click to toggle source
# File lib/netscaler/service.rb, line 21
def remove(payload) # :args: :server
  raise ArgumentError, 'payload cannot be null' if payload.nil?
  validate_payload(payload, [:name])
  return @netscaler.adapter.delete("config/service/#{payload[:name]}")
end
show(:serverName => 'foo') click to toggle source

:serverName is optional, if omitted it will return all services configured on the Netscaler.

# File lib/netscaler/service.rb, line 30
def show(payload={}) # :args:  :serverName => 'foo'
  if payload[:serviceName] != nil then
    validate_payload(payload, [:serviceName])
    return @netscaler.adapter.get("config/service/#{payload[:serviceName]}")
  elsif payload == {} then
    return @netscaler.adapter.get('config/service/')
  else
    raise ArgumentError, 'payload supplied must have been missing :serviceName'
  end
end
show_binding(payload) click to toggle source
# File lib/netscaler/service.rb, line 53
def show_binding(payload)
  raise ArgumentError, 'payload cannot be null' if payload.nil?
  validate_payload(payload, [:name])
  @netscaler.adapter.get("config/service_binding/#{payload[:name]}")
end
stat(payload={}) click to toggle source
# File lib/netscaler/service.rb, line 59
def stat(payload={})
  if payload[:name] != nil then
    validate_payload(payload, [:name])
    @netscaler.adapter.get("stat/service/#{payload[:name]}")
  else
    @netscaler.adapter.get('stat/service')
  end
end