Class: Actions::Katello::ActivationKey::Update

Inherits:
EntryAction
  • Object
show all
Defined in:
app/lib/actions/katello/activation_key/update.rb

Instance Method Summary collapse

Instance Method Details

#cp_changed?(activation_key, activation_key_params) ⇒ Boolean

Returns:

  • (Boolean)


25
26
27
# File 'app/lib/actions/katello/activation_key/update.rb', line 25

def cp_changed?(activation_key, activation_key_params)
  !activation_key_params.nil? && activation_key.to_s != activation_key_params.to_s
end

#plan(activation_key, activation_key_params) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'app/lib/actions/katello/activation_key/update.rb', line 5

def plan(activation_key, activation_key_params)
  # need to check if candlepin attributes have changed prior to updating attributes
  update_candlepin = update_candlepin?(activation_key, activation_key_params)
  action_subject activation_key
  activation_key.update_attributes!(activation_key_params)
  if update_candlepin
    plan_action(::Actions::Candlepin::ActivationKey::Update,
                cp_id: activation_key.cp_id,
                release_version: activation_key.release_version,
                service_level: activation_key.service_level,
                auto_attach: activation_key.auto_attach)
  end
end

#update_candlepin?(activation_key, activation_key_params) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
23
# File 'app/lib/actions/katello/activation_key/update.rb', line 19

def update_candlepin?(activation_key, activation_key_params)
  cp_changed?(activation_key.auto_attach, activation_key_params[:auto_attach]) ||
  cp_changed?(activation_key.service_level, activation_key_params[:service_level]) ||
  cp_changed?(activation_key.release_version, activation_key_params[:release_version])
end