You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by jd...@apache.org on 2007/09/09 03:55:55 UTC

svn commit: r573941 - in /geronimo/sandbox/gshell/trunk: gshell-assembly/ gshell-cli/src/main/java/org/apache/geronimo/gshell/cli/ gshell-commands/ gshell-commands/gshell-bsf/ gshell-commands/gshell-bsf/src/main/java/org/apache/geronimo/gshell/commands...

Author: jdillon
Date: Sat Sep  8 18:55:53 2007
New Revision: 573941

URL: http://svn.apache.org/viewvc?rev=573941&view=rev
Log:
Fix the loading of ~/.gshell/gshell.rc|profile, seems like the Shell's execute(Object... ) is broken :-(
Moved layout loader stuff to sub-package

Added:
    geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/
    geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java   (contents, props changed)
      - copied, changed from r573906, geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/LayoutManager.java
    geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java   (contents, props changed)
      - copied, changed from r573938, geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java
    geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java   (with props)
Modified:
    geronimo/sandbox/gshell/trunk/gshell-assembly/pom.xml
    geronimo/sandbox/gshell/trunk/gshell-cli/src/main/java/org/apache/geronimo/gshell/cli/Main.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/pom.xml
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/src/main/java/org/apache/geronimo/gshell/commands/bsf/ScriptCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/pom.xml
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/HelpCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/SourceCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/pom.xml
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/CatCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/EchoCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/ExecuteCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/JavaCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/SleepCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/WaitCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/pom.xml
    geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/src/main/java/org/apache/geronimo/gshell/commands/vfs/CopyCommand.java
    geronimo/sandbox/gshell/trunk/gshell-commands/pom.xml
    geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/DefaultShell.java
    geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java
    geronimo/sandbox/gshell/trunk/gshell-support/gshell-common/src/main/java/org/apache/geronimo/gshell/common/Arguments.java

Modified: geronimo/sandbox/gshell/trunk/gshell-assembly/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-assembly/pom.xml?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-assembly/pom.xml (original)
+++ geronimo/sandbox/gshell/trunk/gshell-assembly/pom.xml Sat Sep  8 18:55:53 2007
@@ -62,14 +62,12 @@
             <artifactId>gshell-builtins</artifactId>
             <version>${pom.version}</version>
         </dependency>
-        
-        <!--
+
         <dependency>
             <groupId>org.apache.geronimo.gshell.commands</groupId>
             <artifactId>gshell-optional</artifactId>
             <version>${pom.version}</version>
         </dependency>
-        -->
         
         <dependency>
             <groupId>org.slf4j</groupId>

Modified: geronimo/sandbox/gshell/trunk/gshell-cli/src/main/java/org/apache/geronimo/gshell/cli/Main.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-cli/src/main/java/org/apache/geronimo/gshell/cli/Main.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-cli/src/main/java/org/apache/geronimo/gshell/cli/Main.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-cli/src/main/java/org/apache/geronimo/gshell/cli/Main.java Sat Sep  8 18:55:53 2007
@@ -191,7 +191,13 @@
         if (file.exists()) {
             log.debug("Loading user-script: {}", file);
 
-            shell.execute("source", file.toURI().toURL());
+
+            // shell.execute("source", file.toURI().toURL());
+            shell.execute("source " + file.toURI().toURL());
+
+            //
+            // TODO: Should probably lookup the command by id, since user's might not bind this in the layout
+            //
         }
     }
 
@@ -286,12 +292,16 @@
         if (term instanceof jline.WindowsTerminal) {
             log.debug("  Direct: {}", ((jline.WindowsTerminal)term).getDirectConsole());
         }
-        
-        log.debug("Started in {}", watch);
+
+       log.debug("Started in {}", watch);
 
         int code = 0;
 
         try {
+            //
+            // TODO: Load gsh.properties if it exists?
+            //
+
             //
             // TODO: Get the name from the branding theme
             //

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/pom.xml?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/pom.xml (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/pom.xml Sat Sep  8 18:55:53 2007
@@ -60,13 +60,26 @@
     <build>
         <plugins>
             <plugin>
+                <groupId>org.codehaus.plexus</groupId>
+                <artifactId>plexus-java5-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            
+            <plugin>
                 <groupId>org.apache.geronimo.gshell</groupId>
                 <artifactId>gshell-maven-plugin</artifactId>
                 <version>${pom.version}</version>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>plugin-descriptor</goal>
+                            <goal>commands-descriptor</goal>
                         </goals>
                     </execution>
                 </executions>

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/src/main/java/org/apache/geronimo/gshell/commands/bsf/ScriptCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/src/main/java/org/apache/geronimo/gshell/commands/bsf/ScriptCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/src/main/java/org/apache/geronimo/gshell/commands/bsf/ScriptCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-bsf/src/main/java/org/apache/geronimo/gshell/commands/bsf/ScriptCommand.java Sat Sep  8 18:55:53 2007
@@ -21,18 +21,18 @@
 
 import org.apache.bsf.BSFEngine;
 import org.apache.bsf.BSFManager;
-import org.apache.geronimo.gshell.JLineConsole;
 import org.apache.geronimo.gshell.clp.Option;
 import org.apache.geronimo.gshell.command.CommandSupport;
 import org.apache.geronimo.gshell.command.annotation.CommandComponent;
 import org.apache.geronimo.gshell.console.Console;
+import org.apache.geronimo.gshell.console.JLineConsole;
 
 /**
  * Provides generic scripting language integration via <a href="http://http://jakarta.apache.org/bsf">BSF</a>.
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="script")
+@CommandComponent(id="script", description="Provides generic scripting language execution support")
 public class ScriptCommand
     extends CommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/pom.xml?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/pom.xml (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/pom.xml Sat Sep  8 18:55:53 2007
@@ -54,6 +54,19 @@
     <build>
         <plugins>
             <plugin>
+                <groupId>org.codehaus.plexus</groupId>
+                <artifactId>plexus-java5-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            
+            <plugin>
                 <groupId>org.apache.geronimo.gshell</groupId>
                 <artifactId>gshell-maven-plugin</artifactId>
                 <version>${pom.version}</version>

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/HelpCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/HelpCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/HelpCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/HelpCommand.java Sat Sep  8 18:55:53 2007
@@ -96,6 +96,10 @@
             }
         }
 
+        //
+        // TODO: Need to figure out a simple way to access i18n text for the command's help
+        //
+        
         /*
         io.out.println();
         io.out.println("For help on a specific command type:");

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/SourceCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/SourceCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/SourceCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-builtins/src/main/java/org/apache/geronimo/gshell/commands/builtins/SourceCommand.java Sat Sep  8 18:55:53 2007
@@ -46,10 +46,19 @@
     private Shell shell;
 
     @Argument(required=true, description="Source file")
-    private File file;
+    private String source;
 
     protected Object doExecute() throws Exception {
-        BufferedReader reader = openReader(file);
+        URL url;
+        
+        try {
+            url = new URL(source);
+        }
+        catch (MalformedURLException e) {
+            url = new File(source).toURI().toURL();
+        }
+        
+        BufferedReader reader = openReader(url);
 
         String line;
         while ((line = reader.readLine()) != null) {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/pom.xml?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/pom.xml (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/pom.xml Sat Sep  8 18:55:53 2007
@@ -40,13 +40,26 @@
     <build>
         <plugins>
             <plugin>
+                <groupId>org.codehaus.plexus</groupId>
+                <artifactId>plexus-java5-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            
+            <plugin>
                 <groupId>org.apache.geronimo.gshell</groupId>
                 <artifactId>gshell-maven-plugin</artifactId>
                 <version>${pom.version}</version>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>plugin-descriptor</goal>
+                            <goal>commands-descriptor</goal>
                         </goals>
                     </execution>
                 </executions>

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/CatCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/CatCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/CatCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/CatCommand.java Sat Sep  8 18:55:53 2007
@@ -40,7 +40,7 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="cat")
+@CommandComponent(id="cat", description="Concatenate and print files and/or URLs.")
 public class CatCommand
     extends CommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/EchoCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/EchoCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/EchoCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/EchoCommand.java Sat Sep  8 18:55:53 2007
@@ -31,7 +31,7 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="echo")
+@CommandComponent(id="echo", description="Echo or print arguments to STDOUT")
 public class EchoCommand
     extends CommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/ExecuteCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/ExecuteCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/ExecuteCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/ExecuteCommand.java Sat Sep  8 18:55:53 2007
@@ -31,7 +31,8 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="exec")public class ExecuteCommand
+@CommandComponent(id="exec", description="Execute system processes")
+public class ExecuteCommand
     extends CommandSupport
 {
     private ProcessBuilder builder;

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/JavaCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/JavaCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/JavaCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/JavaCommand.java Sat Sep  8 18:55:53 2007
@@ -37,7 +37,7 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="java")
+@CommandComponent(id="java", description="Execute a Java standard application")
 public class JavaCommand
     extends CommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/SleepCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/SleepCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/SleepCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/SleepCommand.java Sat Sep  8 18:55:53 2007
@@ -28,7 +28,7 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="sleep")
+@CommandComponent(id="sleep", description="Sleep for a bit then wake up")
 public class SleepCommand
     extends CommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/WaitCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/WaitCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/WaitCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-optional/src/main/java/org/apache/geronimo/gshell/commands/optional/WaitCommand.java Sat Sep  8 18:55:53 2007
@@ -32,7 +32,7 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="wait")
+@CommandComponent(id="wait", description="Wait, blocking execution... not nice")
 public class WaitCommand
     extends CommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/pom.xml?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/pom.xml (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/pom.xml Sat Sep  8 18:55:53 2007
@@ -48,13 +48,26 @@
     <build>
         <plugins>
             <plugin>
+                <groupId>org.codehaus.plexus</groupId>
+                <artifactId>plexus-java5-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            
+            <plugin>
                 <groupId>org.apache.geronimo.gshell</groupId>
                 <artifactId>gshell-maven-plugin</artifactId>
                 <version>${pom.version}</version>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>plugin-descriptor</goal>
+                            <goal>commands-descriptor</goal>
                         </goals>
                     </execution>
                 </executions>

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/src/main/java/org/apache/geronimo/gshell/commands/vfs/CopyCommand.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/src/main/java/org/apache/geronimo/gshell/commands/vfs/CopyCommand.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/src/main/java/org/apache/geronimo/gshell/commands/vfs/CopyCommand.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/gshell-vfs/src/main/java/org/apache/geronimo/gshell/commands/vfs/CopyCommand.java Sat Sep  8 18:55:53 2007
@@ -30,7 +30,7 @@
  *
  * @version $Rev$ $Date$
  */
-@CommandComponent(id="copy")
+@CommandComponent(id="copy", description="Copy files between VFS sources")
 public class CopyCommand
     extends VFSCommandSupport
 {

Modified: geronimo/sandbox/gshell/trunk/gshell-commands/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-commands/pom.xml?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-commands/pom.xml (original)
+++ geronimo/sandbox/gshell/trunk/gshell-commands/pom.xml Sat Sep  8 18:55:53 2007
@@ -49,11 +49,18 @@
     
     <modules>
         <module>gshell-builtins</module>
-        <!--
         <module>gshell-optional</module>
-        <module>gshell-bsf</module>
-        <module>gshell-vfs</module>
-        -->
     </modules>
+
+    <profiles>
+        <profile>
+            <id>full</id>
+
+            <modules>
+                <module>gshell-bsf</module>
+                <module>gshell-vfs</module>
+            </modules>
+        </profile>
+    </profiles>
     
 </project>

Modified: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/DefaultShell.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/DefaultShell.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/DefaultShell.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/DefaultShell.java Sat Sep  8 18:55:53 2007
@@ -154,6 +154,10 @@
 
         log.info("Executing (Object...): [{}]", Arguments.asString(args));
 
+        //
+        // FIXME: This is broken... :-(
+        //
+        
         return execute(String.valueOf(args[0]), Arguments.shift(args));
     }
 }

Modified: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java Sat Sep  8 18:55:53 2007
@@ -19,15 +19,11 @@
 
 package org.apache.geronimo.gshell.layout;
 
-import java.io.File;
 import java.io.IOException;
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URL;
 
-import org.apache.geronimo.gshell.ShellInfo;
 import org.apache.geronimo.gshell.command.descriptor.CommandDescriptor;
 import org.apache.geronimo.gshell.layout.model.Layout;
+import org.apache.geronimo.gshell.layout.loader.LayoutLoader;
 import org.apache.geronimo.gshell.plugin.PluginCollector;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
@@ -46,57 +42,24 @@
     implements LayoutManager, Initializable
 {
     private final Logger log = LoggerFactory.getLogger(getClass());
-    
-    @Requirement
-    private ShellInfo info;
 
     @Requirement
     private PluginCollector pluginCollector;
 
+    @Requirement
+    private LayoutLoader loader;
+    
     private Layout layout;
     
     public void initialize() throws InitializationException {
-        assert info != null;
+        assert loader != null;
 
-        //
-        // TODO: Move to a layout loader to abstract how this is loaded and allow for better configuration...
-        //       may be able to use a LayoutFactory component here...
-        //
-        
-        URL url;
         try {
-            url = new File(info.getHomeDir(), "etc/layout.xml").toURI().toURL();
-        }
-        catch (MalformedURLException e) {
-            throw new InitializationException("Invalid URL for layout configuration", e);
-        }
-
-        try {
-            this.layout = load(url);
+            layout = loader.load();
         }
         catch (IOException e) {
-            throw new InitializationException("Failed to load layout from URL: " + url, e);
+            throw new InitializationException(e.getMessage(), e);
         }
-    }
-
-    private Layout load(final URL url) throws IOException {
-        assert url != null;
-
-        log.debug("Loading layout from XML: {}", url);
-
-        InputStream input = url.openStream();
-
-        Layout layout;
-        try {
-            layout = Layout.fromXML(input);
-        }
-        finally {
-           input.close();
-        }
-
-        log.debug("Loaded layout: {}", layout);
-
-        return layout;
     }
 
     public Layout getLayout() {

Copied: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java (from r573906, geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/LayoutManager.java)
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java?p2=geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java&p1=geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/LayoutManager.java&r1=573906&r2=573941&rev=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/LayoutManager.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java Sat Sep  8 18:55:53 2007
@@ -17,25 +17,21 @@
  * under the License.
  */
 
-package org.apache.geronimo.gshell.layout;
+package org.apache.geronimo.gshell.layout.loader;
+
+import java.io.IOException;
 
 import org.apache.geronimo.gshell.layout.model.Layout;
-import org.apache.geronimo.gshell.command.descriptor.CommandDescriptor;
 
 /**
- * Provies the shell with a simple mechanism to organize commands.
+ * A simple abstraction for how one actually loads a layout.
  *
  * @version $Rev$ $Date$
  */
-public interface LayoutManager
+public interface LayoutLoader
 {
     /**
      * Returns the currently loaded layout; never null.
      */
-    Layout getLayout();
-
-    /**
-     * Find the command descriptor for the given path, or null if not found.
-     */
-    CommandDescriptor find(String path);
-}
+    Layout load() throws IOException;
+}
\ No newline at end of file

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/LayoutLoader.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Copied: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java (from r573938, geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java)
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java?p2=geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java&p1=geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java&r1=573938&r2=573941&rev=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/DefaultLayoutManager.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java Sat Sep  8 18:55:53 2007
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.geronimo.gshell.layout;
+package org.apache.geronimo.gshell.layout.loader;
 
 import java.io.File;
 import java.io.IOException;
@@ -26,9 +26,8 @@
 import java.net.URL;
 
 import org.apache.geronimo.gshell.ShellInfo;
-import org.apache.geronimo.gshell.command.descriptor.CommandDescriptor;
 import org.apache.geronimo.gshell.layout.model.Layout;
-import org.apache.geronimo.gshell.plugin.PluginCollector;
+import org.apache.geronimo.gshell.layout.loader.LayoutLoader;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
@@ -36,47 +35,45 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+//
+// FIXME: Should not need to specify a hint of "default" here, but the @Component will default to "default"
+//        instead of null, as it should.
+//
+
 /**
- * The default implementation of a {@link LayoutManager}.
- *
+ * A simple XML to {@link Layout} loader, uses XStream to handle the dirty work.
+ * 
  * @version $Rev$ $Date$
  */
-@Component(role=LayoutManager.class, hint="default")
-public class DefaultLayoutManager
-    implements LayoutManager, Initializable
+@Component(role= LayoutLoader.class, hint="default") // hint="xml"
+public class XMLLayoutLoader
+    implements LayoutLoader, Initializable
 {
     private final Logger log = LoggerFactory.getLogger(getClass());
-    
+        
     @Requirement
     private ShellInfo info;
 
-    @Requirement
-    private PluginCollector pluginCollector;
+    //
+    // FIXME: Need to fix the @Configuration annotation so that it works...
+    //
+
+    // @Configuration(key="url", value={"etc/layout.xml"})
+    private URL url;
 
-    private Layout layout;
-    
     public void initialize() throws InitializationException {
         assert info != null;
 
-        //
-        // TODO: Move to a layout loader to abstract how this is loaded and allow for better configuration...
-        //       may be able to use a LayoutFactory component here...
-        //
-        
-        URL url;
         try {
+            //
+            // HACK: Hard code this for now...
+            //
+            
             url = new File(info.getHomeDir(), "etc/layout.xml").toURI().toURL();
         }
         catch (MalformedURLException e) {
             throw new InitializationException("Invalid URL for layout configuration", e);
         }
-
-        try {
-            this.layout = load(url);
-        }
-        catch (IOException e) {
-            throw new InitializationException("Failed to load layout from URL: " + url, e);
-        }
     }
 
     private Layout load(final URL url) throws IOException {
@@ -99,28 +96,7 @@
         return layout;
     }
 
-    public Layout getLayout() {
-        if (layout == null) {
-            throw new IllegalStateException("Layout has not been initalized");
-        }
-        
-        return layout;
-    }
-
-    public CommandDescriptor find(final String path) {
-        assert path != null;
-
-        log.debug("Searching for command descriptor for path: {}", path);
-
-        //
-        // TODO: Need the current environment, so we can get the current group (pwd) and search path, and then
-        //       use that to search the layout tree.
-        //
-
-        //
-        // HACK: For now, assume the path is just the id... should eventually change this
-        //
-
-        return pluginCollector.getCommandDescriptor(path);
+    public Layout load() throws IOException {
+        return load(url);
     }
 }

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/XMLLayoutLoader.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java?rev=573941&view=auto
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java (added)
+++ geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java Sat Sep  8 18:55:53 2007
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/**
+ * Provides things that can load {@link Layout} instances.
+ *
+ * @version $Rev$ $Date$
+ */
+package org.apache.geronimo.gshell.layout.loader;

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: geronimo/sandbox/gshell/trunk/gshell-core/src/main/java/org/apache/geronimo/gshell/layout/loader/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: geronimo/sandbox/gshell/trunk/gshell-support/gshell-common/src/main/java/org/apache/geronimo/gshell/common/Arguments.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/gshell/trunk/gshell-support/gshell-common/src/main/java/org/apache/geronimo/gshell/common/Arguments.java?rev=573941&r1=573940&r2=573941&view=diff
==============================================================================
--- geronimo/sandbox/gshell/trunk/gshell-support/gshell-common/src/main/java/org/apache/geronimo/gshell/common/Arguments.java (original)
+++ geronimo/sandbox/gshell/trunk/gshell-support/gshell-common/src/main/java/org/apache/geronimo/gshell/common/Arguments.java Sat Sep  8 18:55:53 2007
@@ -36,7 +36,7 @@
         assert args != null;
         assert args.length >= pos;
 
-        String[] _args = new String[args.length - pos];
+        Object[] _args = new Object[args.length - pos];
         System.arraycopy(args, pos, _args, 0, _args.length);
         return _args;
     }