class Fog::Compute::ProfitBricks::Share

Attributes

options[RW]

Public Class Methods

new(attributes = {}) click to toggle source
Calls superclass method
# File lib/fog/profitbricks/models/compute/share.rb, line 22
def initialize(attributes = {})
  super
end

Public Instance Methods

delete() click to toggle source
# File lib/fog/profitbricks/models/compute/share.rb, line 53
def delete
  requires :group_id, :resource_id
  service.delete_share(group_id, resource_id)
  true
end
save() click to toggle source
# File lib/fog/profitbricks/models/compute/share.rb, line 26
def save
  requires :group_id, :resource_id

  options = {}

  options[:editPrivilege]  = edit_privilege if edit_privilege
  options[:sharePrivilege] = share_privilege if share_privilege

  data = service.add_share(group_id, resource_id, options).body
  data['group_id']    = group_id
  data['resource_id'] = resource_id
  merge_attributes(flatten(data))
  true
end
update() click to toggle source
# File lib/fog/profitbricks/models/compute/share.rb, line 41
def update
  requires :group_id, :resource_id

  options = {}
  options[:editPrivilege]  = edit_privilege if [true, false].include?(edit_privilege)
  options[:sharePrivilege] = share_privilege if [true, false].include?(share_privilege)

  data = service.update_share(group_id, resource_id, options)
  merge_attributes(flatten(data.body))
  true
end