class Arpa::Services::Resources::ResourceManagerCreator
Public Instance Methods
create(params, callback)
click to toggle source
# File lib/arpa/services/resources/resource_manager_creator.rb, line 7 def create(params, callback) manager_action callback do resourceables = params[:resourceables] except_action_methods = params[:except_action_methods] || [] resource_remover.remove_nonexistent_resources(resourceables) resourceables.collect do |resourceable| resource = resource_creator.create(resourceable) action_params = action_params(resource, resourceable, except_action_methods) action_remover.remove_nonexistent_actions(action_params) action_creator.create_many(action_params) resource end end end
Private Instance Methods
action_creator()
click to toggle source
# File lib/arpa/services/resources/resource_manager_creator.rb, line 40 def action_creator @action_creator ||= Arpa::Services::Actions::Create::ActionCreator.new end
action_params(resource, resourceable, except_action_methods)
click to toggle source
# File lib/arpa/services/resources/resource_manager_creator.rb, line 44 def action_params(resource, resourceable, except_action_methods) actions_names = resourceable.action_methods.reject { |action| except_action_methods.include?(action) } { resource: resource, actions_names: actions_names } end
action_remover()
click to toggle source
# File lib/arpa/services/resources/resource_manager_creator.rb, line 32 def action_remover @action_remover ||= Arpa::Services::Actions::Remove::ActionRemover.new end
resource_creator()
click to toggle source
# File lib/arpa/services/resources/resource_manager_creator.rb, line 36 def resource_creator @resource_creator ||= Arpa::Services::Resources::Create::ResourceCreator.new end
resource_remover()
click to toggle source
# File lib/arpa/services/resources/resource_manager_creator.rb, line 28 def resource_remover @resource_remover ||= Arpa::Services::Resources::Remove::ResourceRemover.new end