class Fog::AWS::ELB::Policy

Attributes

Public Instance Methods

destroy() click to toggle source
# File lib/fog/aws/models/elb/policy.rb, line 44
def destroy
  requires :id, :load_balancer
  service.delete_load_balancer_policy(load_balancer.id, id)
  reload
end
load_balancer() click to toggle source
# File lib/fog/aws/models/elb/policy.rb, line 54
def load_balancer
  collection.load_balancer
end
reload() click to toggle source
# File lib/fog/aws/models/elb/policy.rb, line 50
def reload
  load_balancer.reload
end
save() click to toggle source
# File lib/fog/aws/models/elb/policy.rb, line 16
def save
  requires :id, :load_balancer
  service_method = nil
  args = [load_balancer.id, id]

  if cookie_stickiness
    case cookie_stickiness
    when :app
      requires :cookie
      method = :create_app_cookie_stickiness_policy
      args << cookie
    when :lb
      method = :create_lb_cookie_stickiness_policy
      args << expiration if expiration
    else
      raise ArgumentError.new('cookie_stickiness must be :app or :lb')
    end
  else
    requires :type_name, :policy_attributes
    method = :create_load_balancer_policy
    args << type_name
    args << policy_attributes
  end

  service.send(method, *args)
  reload
end