<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>.gitignore</filename>
    </added>
    <added>
      <filename>lib/reggae/generator.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -14,6 +14,7 @@ begin
     gem.add_dependency('templater','0.5.0')
     gem.add_dependency('appengine-apis','&gt;=0.1')
     gem.add_dependency('jruby-jars','&gt;=0.1')
+    gem.add_dependency('thor','0.9.9')
   end
 rescue LoadError
   puts &quot;Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com&quot;</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,45 @@
-#!/usr/bin/env ruby
-
+#!/usr/bin/env CLASSPATH=/Users/ted/Code/gae/reggae/lib/appengine-java-sdk/lib/appengine-tools-api.jar jruby
+$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
 require 'rubygems'
 require 'reggae'
+require 'thor'
+require 'jruby-jars'
+require 'java'
+
+class Reggae::Runner &lt; Thor
+
+  # responsible for starting up the dev server
+  # wraps the deployment scripts.
+  # insertion point for ensuring dir structure is correct and has config files
 
-# responsible for starting up the dev server
-# wraps the deployment scripts.
-# insertion point for ensuring dir structure is correct and has config files
+  desc &quot;help&quot;, &quot;help [subject]&quot;
+  def help(subject=&quot;general&quot;)
+    puts &quot;Reggae is a small JRuby SDK wrapper for the Google App Engine.
+It pulls together the Google App Engine Java SDK, ribrdb's JRuby 
+appengine-apis project, and nicksieger's JRuby-Rack implementation.&quot;
+  end
+  
+  desc &quot;start&quot;, &quot;start dev server&quot;
+  def start(war=&quot;.&quot;,options={})
+    options
+    import java.io.File
+    import com.google.appengine.tools.development.DevAppServerFactory
+    approot = File.new(war)
+    server = DevAppServerFactory.new.createDevAppServer(approot,&quot;127.0.0.1&quot;,8080)
+    puts &quot;Firing up Google App Engine Development Server&quot;
+    server.start
+    while true
+      if false # add conditions to check for directory modification
+        server.restart
+      end
+    end
+    puts &quot;Shutting down Google App Engine Development Server&quot;
+    server.shutdown
+  end
 
-Reggae::Generators.run_cli(Dir.pwd, 'reggae', Reggae::VERSION, ARGV)
\ No newline at end of file
+  desc &quot;gen&quot;, &quot;generate target component&quot;
+  def gen(*targets)
+    Reggae::Generators.run_cli(Dir.pwd, 'reggae', Reggae::VERSION, targets)
+  end
+end
+Reggae::Runner.start
\ No newline at end of file</diff>
      <filename>bin/reggae</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,4 @@
+require 'merb-gen'
 module Merb
   module Generators
     class MerbAppEngineGenerator &lt; AppGenerator # this is a specialized merb generator</diff>
      <filename>lib/generators/merb/merb_appengine.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,16 +1,27 @@
-require 'rubygems'
-require 'templater'
-require 'appengine-apis'
-require 'appengine-apis/datastore'
-require 'appengine-apis/logger'
-require 'jruby-jars'
-
 module Reggae
+  require 'rubygems'
+  require 'templater'
+  require 'appengine-apis'
+  require 'jruby-jars'
+  require 'reggae/generator'
   require 'reggae/version'
   
   def self.appengine_tools_api_jar_path
     
   end
+  
   # JRubyJars.jruby_jar_path
   # JRubyJars.stdlib_jar_path
 end
+
+module AppEngine
+  def self.path
+    File.join(File.dirname(__FILE__),&quot;appengine-java-sdk&quot;)
+  end
+  
+  module DevServer
+    def self.path
+      File.join(::AppEngine.path, &quot;bin&quot;, &quot;dev_appserver.sh&quot;)
+    end
+  end
+end</diff>
      <filename>lib/reggae.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,5 @@
 require 'spec_helper'
-require 'merb-gen'
-require 'generators/merb/merb_appengine'
+require File.join('generators','merb','merb_appengine')
 
 # This should run only if merb is installed.
 describe Merb::Generators::MerbAppEngineGenerator do</diff>
      <filename>spec/merb_generator_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
 require 'rubygems'
 require 'spec'
 require 'reggae'
-require 'templater/spec/helpers'
+require File.join('templater','spec','helpers')
 
 Spec::Runner.configure do |config|
   config.include Templater::Spec::Helpers</diff>
      <filename>spec/spec_helper.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>lib/appengine-java-sdk/lib/.DS_Store</filename>
    </removed>
    <removed>
      <filename>lib/appengine-java-sdk/lib/shared/.DS_Store</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>83a218825949a583a0b7a4873dad09e6d7644269</id>
    </parent>
  </parents>
  <author>
    <name>Ted Han</name>
    <email>ted.han@skein.us</email>
  </author>
  <url>http://github.com/knowtheory/reggae/commit/3833161fa42145cfce4c193690da5dfc11b18dc5</url>
  <id>3833161fa42145cfce4c193690da5dfc11b18dc5</id>
  <committed-date>2009-04-16T09:04:40-07:00</committed-date>
  <authored-date>2009-04-16T09:04:40-07:00</authored-date>
  <message>Bit of a mess but adding some stuff that gets the GAE/J jetty server up and running.  The CLASSPATH in the shebang for reggae/bin/reggae is hardcoded atm, and that's a problem that needs to be solved.  Once you've modified your CLASSPATH appropriately, you can start the server up via ./reggae/bin/reggae start [path to your war]

Also, adding a bunch of generator stuff, for later.</message>
  <tree>70d7ca0309ab52b47511e71ca18b4f95ea0ea3c1</tree>
  <committer>
    <name>Ted Han</name>
    <email>ted.han@skein.us</email>
  </committer>
</commit>
