Skip to content

Commit

Permalink
Address CC duplication issue by extracting common code in a method
Browse files Browse the repository at this point in the history
  • Loading branch information
AparnaKarve committed Jul 27, 2017
1 parent e99dfa8 commit 7911572
Showing 1 changed file with 22 additions and 21 deletions.
43 changes: 22 additions & 21 deletions app/controllers/miq_policy_controller/alert_profiles.rb
Original file line number Diff line number Diff line change
Expand Up @@ -180,33 +180,34 @@ def alert_profile_build_obj_tree
tree = nil
return nil if alert_profile_get_assign_to_objects_empty?
if @assign[:new][:assign_to] == "ems_folder"
tree = TreeBuilderBelongsToVat.new(:vat_tree,
:vat,
@sb,
true,
:assign_to => @assign[:new][:assign_to],
:cat => @assign[:new][:cat],
:selected => @assign[:new][:objects].collect { |f| "EmsFolder_#{f}" })
tree = instantiate_tree("TreeBuilderBelongsToVat",
:vat_tree,
:vat,
@assign[:new][:objects].collect { |f| "EmsFolder_#{f}" })
elsif @assign[:new][:assign_to] == "resource_pool"
tree = TreeBuilderBelongsToHac.new(:hac_tree,
:hac,
@sb,
true,
:assign_to => @assign[:new][:assign_to],
:cat => @assign[:new][:cat],
:selected => @assign[:new][:objects].collect { |f| "ResourcePool_#{f}" })
tree = instantiate_tree("TreeBuilderBelongsToHac",
:hac_tree,
:hac,
@assign[:new][:objects].collect { |f| "ResourcePool_#{f}" })
else
tree = TreeBuilderAlertProfileObj.new(:object_tree,
:object,
@sb,
true,
:assign_to => @assign[:new][:assign_to],
:cat => @assign[:new][:cat],
:selected => @assign[:new][:objects])
tree = instantiate_tree("TreeBuilderAlertProfileObj",
:object_tree,
:object,
@assign[:new][:objects])
end
tree
end

def instantiate_tree(tree_class, tree_name, type, selected)
tree_class.constantize.new(tree_name,
type,
@sb,
true,
:assign_to => @assign[:new][:assign_to],
:cat => @assign[:new][:cat],
:selected => selected)
end

def alert_profile_build_edit_screen
@edit = {}
@edit[:new] = {}
Expand Down

0 comments on commit 7911572

Please sign in to comment.