Sha256: f47477b08a78323dddd1530e4bf061c2a37f95c5f779ab16f479470dd72d774e

Contents?: true

Size: 1.81 KB

Versions: 2

Compression:

Stored size: 1.81 KB

Contents

module RailsAssist::Artifact
  module Directory
    module Methods
      DIR = RailsAssist::Directory
      APP_DIR = RailsAssist::Directory::App
      
      # :controller, :mailer, :helper, :view, :model, :permit
      #
      # controller_dir, mailer_dir ...
      RailsAssist::Artifact.app_artifacts.each do |name|
        class_eval %{
          def #{name}_dirpath options={}
            _app_dirpath = APP_DIR.app_dirpath(options)
            [_app_dirpath, '#{name.to_s.pluralize}'].file_join
          end

          def #{name}_dir options={}
            #{name}_dirpath(options).dir
          end
        } 
      end    
        
      # initializer_dir, locale_dir
      # stylesheet_dir, javascript_dir    
      {:config => RailsAssist.specials(:config), :public => RailsAssist.specials(:public)}.each_pair do |container, names|
        names.each do |name|
          class_eval %{      
            def #{name}_dirpath options={}
              RailsAssist::Directory.#{container}_dir_for(:#{name.to_s.pluralize}, options).path
            end  

            def #{name}_dir options={}
              #{name}_dirpath(options).dir
            end
          }
        end
      end

      [:stylesheet, :javascript].each do |name|
        class_eval %{      
          def #{name}_dirpath options={}
            RailsAssist::Directory.public_dir_for(:#{name.to_s.pluralize}, options).path
          end
        }
      end
      
      def migration_dirpath options={}
        [DIR.db_dir(options), 'migrate'].file_join
      end

      def migration_dir options={}
        migration_dirpath(options).dir
      end
      
      def observer_dirpath options={}
        model_dir(options).path
      end

      def observer_dir options={}
        observer_dirpath(options).dir
      end
    end

    extend Methods
    include Methods
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rails_assist-0.4.3 lib/rails_assist/artifact/directory.rb
rails_assist-0.4.2 lib/rails_assist/artifact/directory.rb