class Commands::Email::Configuration::Update

Public Instance Methods

execute() click to toggle source
# File lib/restpack_email_service/commands/configuration/update.rb, line 23
def execute
  #TODO: GJ: wrap in transaction
  #TODO: GJ: extract to base class
  result = {
    configurations: []
  }

  inputs[:configurations].each do |item|
    model = Models::Email::Configuration.find_by_id_and_application_id(
      item[:id], item[:application_id]
    )

    if model
      model.update_attributes(item)
      result[:configurations] << Serializers::Email::Configuration.as_json(model)
    else
      status :not_found
    end
  end

  result
end