Module: Vidibus::Resource::Provider::Mongoid

Extended by:
ActiveSupport::Concern
Defined in:
lib/vidibus/resource/provider/mongoid.rb

Instance Method Summary collapse

Instance Method Details

#add_resource_consumer(service_uuid, realm_uuid) ⇒ Object

Adds given resource consumer.



23
24
25
26
27
28
29
30
31
# File 'lib/vidibus/resource/provider/mongoid.rb', line 23

def add_resource_consumer(service_uuid, realm_uuid)
  self.resource_consumers ||= {}
  self.resource_consumers[realm_uuid] ||= []
  unless resource_consumers[realm_uuid].include?(service_uuid)
    self.resource_consumers[realm_uuid] << service_uuid
    create_resource_consumer(service_uuid, realm_uuid)
    save
  end
end

#remove_resource_consumer(service_uuid, realm_uuid) ⇒ Object

Removes given resource consumer.



34
35
36
37
38
39
40
41
42
# File 'lib/vidibus/resource/provider/mongoid.rb', line 34

def remove_resource_consumer(service_uuid, realm_uuid)
  unless resource_consumers[realm_uuid] and resource_consumers[realm_uuid].include?(service_uuid)
    raise(ConsumerNotFoundError, "This resource has no consumer #{service_uuid} within realm #{realm_uuid}.")
  end
  destroy_resource_consumer(service_uuid, realm_uuid)
  self.resource_consumers[realm_uuid].delete(service_uuid)
  self.resource_consumers.delete(realm_uuid) if resource_consumers[realm_uuid].blank?
  save
end

#resource_consumer?Boolean

TODO: Get rid of this! It’s only for the controller…

Returns:

  • (Boolean)


50
51
52
# File 'lib/vidibus/resource/provider/mongoid.rb', line 50

def resource_consumer?
  false
end

#resource_provider?Boolean

TODO: Get rid of this! It’s only for the controller…

Returns:

  • (Boolean)


45
46
47
# File 'lib/vidibus/resource/provider/mongoid.rb', line 45

def resource_provider?
  true
end

#resourceable_hashObject



54
55
56
# File 'lib/vidibus/resource/provider/mongoid.rb', line 54

def resourceable_hash
  @resourceable_hash ||= attributes.except('resource_consumers', '_id')
end

#resourceable_hash_jsonObject



58
59
60
# File 'lib/vidibus/resource/provider/mongoid.rb', line 58

def resourceable_hash_json
  @resourceable_hash_json ||= JSON.generate(resourceable_hash)
end