Title: [733] trunk/rails-integration/plugins/goldspike-snapshot/lib: Tidied up custom tasks
Revision
733
Author
tantalon
Date
2007-09-02 20:27:13 -0400 (Sun, 02 Sep 2007)

Log Message

Tidied up custom tasks
Allow properties to be set without using = (e.g. name 'hello' rather than self.name = 'hello')
Don't display messages for adding things if nothing is do be added

Modified Paths

Diff

Modified: trunk/rails-integration/plugins/goldspike-snapshot/lib/create_war.rb (732 => 733)


--- trunk/rails-integration/plugins/goldspike-snapshot/lib/create_war.rb	2007-09-02 23:49:25 UTC (rev 732)
+++ trunk/rails-integration/plugins/goldspike-snapshot/lib/create_war.rb	2007-09-03 00:27:13 UTC (rev 733)
@@ -78,6 +78,8 @@
     end
     
     def run_custom_tasks
+      return if config.custom_tasks.empty?
+      WLog.info '  Running custom tasks...'
       for task in config.custom_tasks
         task.call
       end

Modified: trunk/rails-integration/plugins/goldspike-snapshot/lib/packer.rb (732 => 733)


--- trunk/rails-integration/plugins/goldspike-snapshot/lib/packer.rb	2007-09-02 23:49:25 UTC (rev 732)
+++ trunk/rails-integration/plugins/goldspike-snapshot/lib/packer.rb	2007-09-03 00:27:13 UTC (rev 733)
@@ -61,7 +61,8 @@
   
   class FileLibPacker < Packer
     def add_files
-      WLog.info("Packing needed files ...")
+      return if config.files.empty?
+      WLog.info("  Adding extra files...")
 
       staging = config.staging
       lib = File.join(staging, 'WEB-INF', 'lib')
@@ -101,7 +102,7 @@
     end
     
     def add_java_libraries
-      WLog.info("Packing needed Java libraries ...")
+      WLog.info("  Adding Java libraries...")
       staging = config.staging
       lib = File.join(staging, 'WEB-INF', 'lib')
       WLog.debug("assembling files in " + lib + " directory")
@@ -127,7 +128,7 @@
     
     def add_ruby_libraries
       # add the gems
-      WLog.info("Packing needed Ruby gems ...")
+      WLog.info("  Adding Ruby gems...")
       gem_home = File.join(config.staging, 'WEB-INF', 'gems')
       File.makedirs(gem_home)
       File.makedirs(File.join(gem_home, 'gems'))

Modified: trunk/rails-integration/plugins/goldspike-snapshot/lib/war_config.rb (732 => 733)


--- trunk/rails-integration/plugins/goldspike-snapshot/lib/war_config.rb	2007-09-02 23:49:25 UTC (rev 732)
+++ trunk/rails-integration/plugins/goldspike-snapshot/lib/war_config.rb	2007-09-03 00:27:13 UTC (rev 733)
@@ -4,12 +4,17 @@
 #    Fausto Lelli
 #
 require 'util'
+require 'action_mailer/adv_attr_accessor'
 
 module War
   class Configuration
     include Singleton
-    # allow a getter to be used as a setter as well, makes config easier
+
+    # allow a getter to be used as a setter as well, makes config files sane
     include ActionMailer::AdvAttrAccessor
+    class << self
+      alias attr_accessor adv_attr_accessor
+    end
 
     # the name of the project
     attr_accessor :name
@@ -109,7 +114,7 @@
       @jetty_libraries = {}
       @jetty_port = 8080
       @jetty_java_opts = ENV['JETTY_OPTS'] || ENV['JAVA_OPTS'] || ''
-      jetty_version = '6.1.5'
+      jetty_version '6.1.5'
       
       # separators
       if RUBY_PLATFORM =~ /(mswin)|(cygwin)/i # watch out for darwin
@@ -141,7 +146,7 @@
       @datasource_jndi_name || "jdbc/#{name}"
     end
     
-    def jetty_version=(version)
+    def jetty_version(version)
       for name in %w(start jetty jetty-util jetty-plus jetty-naming servlet-api-2.5) do
         add_jetty_library(:name => name, :version => version, :group => 'org.mortbay.jetty')
       end
@@ -179,31 +184,7 @@
     end
 
     def add_library(*args)
-      properties = {}
-      # optional first arg is name
-      if !args.empty? && args[0].is_a?(String)
-        properties[:name] = args.shift
-      end
-      # followed by a hash of properties
-      if !args.empty?
-        unless args[0].is_a?(Hash)
-          WLog.warn("Skipping add_library due to syntax error: add_library(#{args.join(', ')})")
-          return
-        end
-        properties.merge!(args[0])
-      end
-      
-      name = properties[:name]
-      group = properties[:group]
-      version = properties[:version]
-      if group
-        WLog.debug("add maven library: " + group + " " + name + " " + version)
-        lib = MavenLibrary.new(group, name, version, self)
-      else
-        WLog.debug("add java library: " + name + " " + version)
-        lib = JavaLibrary.new(name, version, self)
-      end
-      
+      lib = create_library(*args)
       @java_libraries[lib.name] = lib
     end
     
@@ -212,7 +193,8 @@
       @java_libraries.delete_if {|k,v| k == name && v == v.merge(properties) }
     end
 
-    def add_jetty_library(lib)
+    def add_jetty_library(*args)
+      lib = create_library(*args)
       @jetty_libraries[lib.name] = lib
     end
 
@@ -247,5 +229,34 @@
       WLog.warn("Property '#{name}' in config file is not defined, ignoring it...")
     end
 
+    private
+    
+      def create_library(*args)
+        properties = {}
+        # optional first arg is name
+        if !args.empty? && args[0].is_a?(String)
+          properties[:name] = args.shift
+        end
+        # followed by a hash of properties
+        if !args.empty?
+          unless args[0].is_a?(Hash)
+            WLog.warn("Skipping add_library due to syntax error: add_library(#{args.join(', ')})")
+            return
+          end
+          properties.merge!(args[0])
+        end
+      
+        name = properties[:name]
+        group = properties[:group]
+        version = properties[:version]
+        if group
+          WLog.debug("add maven library: " + group + " " + name + " " + version)
+          lib = MavenLibrary.new(group, name, version, self)
+        else
+          WLog.debug("add java library: " + name + " " + version)
+          lib = JavaLibrary.new(name, version, self)
+        end
+      end
+
   end #class
 end #module
_______________________________________________
Jruby-extras-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/jruby-extras-devel

Reply via email to