Class: Fog::Identity::OpenStack::V3::Policies

Inherits:
OpenStack::Collection show all
Defined in:
lib/fog/identity/openstack/v3/models/policies.rb

Instance Attribute Summary

Attributes inherited from OpenStack::Collection

#response

Instance Method Summary collapse

Methods inherited from OpenStack::Collection

#get, #load_response, #summary

Instance Method Details

#all(options = {}) ⇒ Object



11
12
13
# File 'lib/fog/identity/openstack/v3/models/policies.rb', line 11

def all(options = {})
  load_response(service.list_policies(options), 'policies')
end

#destroy(id) ⇒ Object



24
25
26
27
# File 'lib/fog/identity/openstack/v3/models/policies.rb', line 24

def destroy(id)
  policy = find_by_id(id)
  policy.destroy
end

#find_by_id(id) ⇒ Object



15
16
17
18
19
20
21
22
# File 'lib/fog/identity/openstack/v3/models/policies.rb', line 15

def find_by_id(id)
  cached_policy = find { |policy| policy.id == id }
  return cached_policy if cached_policy
  policy_hash = service.get_policy(id).body['policy']
  Fog::Identity::OpenStack::V3::Policy.new(
    policy_hash.merge(:service => service)
  )
end