Sha256: aaf1a48bb7eb8e3d88c7bdb946b204083b1f7582689fc26fad8dbc2693fed19f

Contents?: true

Size: 1.33 KB

Versions: 17

Compression:

Stored size: 1.33 KB

Contents

module Kapellmeister
  class AddServiceGenerator < Rails::Generators::NamedBase
    source_root File.expand_path('templates', __dir__)

    desc <<-EOF
      Prepares application to possibility to get third parties requests.
    EOF

    class_option :responder, type: :boolean, default: false

    argument :attributes, type: :array, default: [], banner: 'attribute'

    def copy_initializer_file
      template 'initializers/third_party_initializer.rb', "config/initializers/#{file_name}.rb"
    end

    def copy_base_file
      template 'lib/third_party.rb', "app/lib/#{file_name}.rb"
    end

    def copy_lib_folder
      copy_client_file
      copy_configuration_file
      copy_responder_file
      copy_routes_file
    end

    private

    def copy_client_file
      template 'lib/third_party/client.rb', "app/lib/#{file_name}/client.rb"
    end

    def copy_configuration_file
      template 'lib/third_party/configuration.rb', "app/lib/#{file_name}/configuration.rb"
    end

    def copy_responder_file
      return unless options[:responder]

      template 'lib/third_party/responder.rb', "app/lib/#{file_name}/responder.rb"
    end

    def copy_routes_file
      template 'lib/third_party/routes.yml', "app/lib/#{file_name}/routes.yml"
    end

    def initialize_signatures
      attributes.map { |attr| attr.name.to_sym }
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
kapellmeister-0.10.2 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.10.1 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.10.0 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.9.9.rc3 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.9.9.rc2 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.9.9.rc1 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.9.8.rc1 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.9.8.pre.rc1 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.9.8 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.4.2 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.4.0 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.3.0 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.2.0 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.1.3 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.1.2 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.1.1 lib/generators/kapellmeister/add_service_generator.rb
kapellmeister-0.1.0 lib/generators/kapellmeister/add_service_generator.rb