Module: Glue::Candlepin::ActivationKey::InstanceMethods
- Defined in:
- app/models/katello/glue/candlepin/activation_key.rb
Instance Method Summary collapse
- #content_overrides ⇒ Object
- #get_key_pools ⇒ Object
- #get_keys ⇒ Object
- #get_pools ⇒ Object
- #import_pools ⇒ Object
- #set_content_override(content_label, name, value = nil) ⇒ Object
- #subscribe(pool_id, quantity = 1) ⇒ Object
- #unsubscribe(pool_id) ⇒ Object
Instance Method Details
#content_overrides ⇒ Object
70 71 72 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 70 def content_overrides Resources::Candlepin::ActivationKey.content_overrides(self.cp_id) end |
#get_key_pools ⇒ Object
29 30 31 32 33 34 35 36 37 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 29 def get_key_pools key_pools = Resources::Candlepin::ActivationKey.get(self.cp_id)[0][:pools] pools = [] key_pools.each do |key_pool| key_pool[:pool][:amount] = (key_pool[:quantity] ? key_pool[:quantity] : 0) pools << key_pool[:pool] end pools end |
#get_keys ⇒ Object
25 26 27 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 25 def get_keys Resources::Candlepin::ActivationKey.get end |
#get_pools ⇒ Object
21 22 23 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 21 def get_pools Resources::Candlepin::ActivationKey.pools(self.organization.label) end |
#import_pools ⇒ Object
39 40 41 42 43 44 45 46 47 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 39 def import_pools key_pools = self.get_key_pools pools = Katello::Pool.where(:cp_id => key_pools.map { |pool| pool['id'] }) associations = Katello::PoolActivationKey.where(:activation_key_id => self.id) associations.map { |assoc| assoc.destroy! if pools.map(&:id).exclude?(assoc.pool_id) } pools.each do |pool| Katello::PoolActivationKey.where(:pool_id => pool.id, :activation_key_id => self.id).first_or_create end end |
#set_content_override(content_label, name, value = nil) ⇒ Object
66 67 68 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 66 def set_content_override(content_label, name, value = nil) Resources::Candlepin::ActivationKey.update_content_override(self.cp_id, content_label, name, value) end |
#subscribe(pool_id, quantity = 1) ⇒ Object
49 50 51 52 53 54 55 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 49 def subscribe(pool_id, quantity = 1) pool = Katello::Pool.find(pool_id) subscription = pool.subscription add_custom_product(subscription.product_id) unless subscription.redhat? Resources::Candlepin::ActivationKey.add_pools self.cp_id, pool.cp_id, quantity self.import_pools end |
#unsubscribe(pool_id) ⇒ Object
57 58 59 60 61 62 63 64 |
# File 'app/models/katello/glue/candlepin/activation_key.rb', line 57 def unsubscribe(pool_id) fail _("Subscription id is nil.") unless pool_id pool = Katello::Pool.find(pool_id) subscription = pool.subscription remove_custom_product(subscription.product_id) unless subscription.redhat? Resources::Candlepin::ActivationKey.remove_pools self.cp_id, pool.cp_id self.import_pools end |