Sha256: 3f04a88f1b528088403294311b20d1cd9817d599c51121ffc8c907fa345e147c

Contents?: true

Size: 1.33 KB

Versions: 8

Compression:

Stored size: 1.33 KB

Contents

#!/usr/bin/env ruby
require "thor"
require "rubygems"

root = File.dirname File.dirname(__FILE__)
Dir[File.join(root, "lib/generators/**/*.rb")].each { |file| require file }

# Scaffold tasks for the Hexx based projects.
class HexxRunner < Thor

  desc "install", "scaffolds a new project"
  def install
    script = Hexx::Generators::Install.new [project]
    script.invoke_all
  end

  desc "request", "scaffolds a new request spec (acceptance test)"
  def request(name)
    script = Hexx::Generators::Request.new [project, name]
    script.invoke_all
  end

  desc "controller", "scaffolds a new route with a controller action"
  def controller(name, route, usecase)
    script = Hexx::Generators::Controller.new [project, name, route, usecase]
    script.invoke_all
  end

  desc "domain", "scaffolds a new acceptance test for the domain"
  def domain(name)
    script = Hexx::Generators::Domain.new [project, name]
    script.invoke_all
  end

  desc "use_case", "scaffolds a new use case"
  def use_case(name)
    script = Hexx::Generators::UseCase.new [project, name]
    script.invoke_all
  end

  desc "depencency", "scaffolds a dependency"
  def dependency(name)
    script = Hexx::Generators::Dependency.new [project, name]
    script.invoke_all
  end

  private

  def project
    Dir.getwd.split("/").last.to_s.downcase
  end
end

HexxRunner.start

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
hexx-1.1.1 bin/hexx
hexx-1.1.0 bin/hexx
hexx-1.0.2 bin/hexx
hexx-1.0.1 bin/hexx
hexx-1.0.0 bin/hexx
hexx-0.1.1 bin/hexx
hexx-0.1.0 bin/hexx
hexx-0.0.1 bin/hexx