Sha256: cb4e8e1cd5d28ce700118ce0ea5f8eb5b15e98ef964beba8591aece9bf8d8927

Contents?: true

Size: 1.37 KB

Versions: 1

Compression:

Stored size: 1.37 KB

Contents

# frozen_string_literal: true

##
# Usage example:
#
# result = ConvenientService::Examples::Dry::Gemfile.format(path: "Gemfile")
# result = ConvenientService::Examples::Dry::Gemfile.format(path: "spec/cli/gemfile/format/fixtures/Gemfile")
#
module ConvenientService
  module Examples
    module Dry
      module Gemfile
        class DryService
          module Config
            include Support::Concern

            included do |service_class|
              service_class.class_exec do
                include Configs::Standard

                ##
                # NOTE: `AssignsAttributesInConstructor::UsingDryInitializer` plugin.
                #
                concerns do
                  use Plugins::Common::AssignsAttributesInConstructor::UsingDryInitializer::Concern
                end

                ##
                # NOTE: `HasResultParamsValidations::UsingDryValidation` plugin.
                #
                concerns do
                  use Plugins::Service::HasResultParamsValidations::UsingDryValidation::Concern
                end

                middlewares :result do
                  insert_before \
                    Plugins::Service::HasResult::Middleware,
                    Plugins::Service::HasResultParamsValidations::UsingDryValidation::Middleware
                end
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
convenient_service-0.7.0 lib/convenient_service/examples/dry/gemfile/dry_service/config.rb