Sha256: 17866277d544ac14ae2c118c437028bfee616c916f5ed1035f64a1c32d437570

Contents?: true

Size: 1.86 KB

Versions: 16

Compression:

Stored size: 1.86 KB

Contents

module Vedeu

  module Generator

    # Provides functionality used by the generators to build the client
    # application.
    #
    # :nocov:
    module Helpers

      include Vedeu::Common

      # @return [String]
      def app_name
        @app_name ||= File.read('./config/app_name')
      end

      # @param destination [String]
      # @return [void]
      def make_directory(destination)
        Vedeu.log_stdout(type: :create, message: "#{destination}")

        FileUtils.mkdir_p(destination)
      end

      # @param source [String]
      # @param destination [String]
      # @return [void]
      def copy_file(source, destination)
        Vedeu.log_stdout(type: :create, message: "#{destination}")

        FileUtils.cp(source, destination)
      end

      # @param source [String]
      # @param destination [String]
      # @return [void]
      def make_file(source, destination)
        Vedeu.log_stdout(type: :create, message: "#{destination}")

        File.write(destination, parse(source))
      end

      # @param destination [String]
      # @return [void]
      def touch_file(destination)
        Vedeu.log_stdout(type: :create, message: "#{destination}")

        FileUtils.touch(destination)
      end

      # @return [String]
      def name
        @_name ||= @name.downcase
      end

      # @return [String]
      def name_as_class
        name.downcase.split(/_|-/).map(&:capitalize).join
      end

      # @return [String]
      def output(message = '')
        Vedeu.log_stdout(type: :info, message: message)

        message
      end

      # @param source [String]
      # @return [String]
      def parse(source)
        Vedeu::Templating::Template.parse(self, source)
      end

      # @return [String]
      def source
        File.dirname(__FILE__) + '/templates/application/.'
      end

    end # Helpers
    # :nocov:

  end # Generator

end # Vedeu

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
vedeu-0.5.8 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.7 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.6 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.5 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.4 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.3 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.2 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.1 lib/vedeu/cli/generator/helpers.rb
vedeu-0.5.0 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.65 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.64 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.63 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.62 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.61 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.60 lib/vedeu/cli/generator/helpers.rb
vedeu-0.4.59 lib/vedeu/cli/generator/helpers.rb