Sha256: fc2b6b580f639c53e5cfb2bfc21c87cd47eb561a1b7c0417646e7e6ff4d14ce6

Contents?: true

Size: 770 Bytes

Versions: 10

Compression:

Stored size: 770 Bytes

Contents

module Arpa
  module Services
    module Roles
      module Update
        class RoleUpdater

          def update(params)
            role = role_instance(params)
            validate_role(role)
            updater_repo.update(role)
          end

          private

          def role_instance(params)
            Arpa::Entities::Role.new(params)
          end

          def validate_role(role)
            validator = Arpa::Validators::RoleValidator.new(role)
            raise Arpa::Exceptions::RecordInvalid.new(message: validator.errors.messages, errors: validator.errors) unless validator.valid?
          end

          def updater_repo
            @updater_repo ||= Arpa::Repositories::Roles::Updater.new
          end

        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
arpa-0.2.0 lib/arpa/services/roles/update/role_updater.rb
arpa-0.1.0 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.9 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.8 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.7 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.6 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.5 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.4 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.3 lib/arpa/services/roles/update/role_updater.rb
arpa-0.0.2 lib/arpa/services/roles/update/role_updater.rb