[jboss-cvs] JBossAS SVN: r90801 - in projects/embedded/trunk: core and 10 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Jul 3 02:14:08 EDT 2009


Author: ALRubinger
Date: 2009-07-03 02:14:08 -0400 (Fri, 03 Jul 2009)
New Revision: 90801

Added:
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/IgnoreXbUnorderedSequenceLifecycleEventHandler.java
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/InitLoggingManagerLifecycleEventHandler.java
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SecurityActions.java
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetRmiHostnameLifecycleEventHandler.java
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetSysPropIfNotSpecifiedLifecycleEventHandler.java
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServer.java
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputBean.java
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputLocalBusiness.java
Modified:
   projects/embedded/trunk/build/pom.xml
   projects/embedded/trunk/core/pom.xml
   projects/embedded/trunk/testsuite-full-dep/pom.xml
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/SecurityActions.java
   projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/ServerTestCase.java
Log:
[EMB-31] Start centralizing the embedded-specific tasks into an embedded-core component.  Make the testsuite-fulldep an end-user view.  Correct the dependency chain along the way such that component-matrix is still authoritative.

Modified: projects/embedded/trunk/build/pom.xml
===================================================================
--- projects/embedded/trunk/build/pom.xml	2009-07-03 06:13:55 UTC (rev 90800)
+++ projects/embedded/trunk/build/pom.xml	2009-07-03 06:14:08 UTC (rev 90801)
@@ -8,9 +8,9 @@
     
   <!-- Parent -->
   <parent>
-    <groupId>org.jboss</groupId>
-    <artifactId>jboss-parent</artifactId>
-    <version>4</version>
+    <groupId>org.jboss.jbossas</groupId>
+    <artifactId>jboss-as-component-matrix</artifactId>
+    <version>5.2.0-SNAPSHOT</version>
   </parent>
 
   <!-- Model Version -->
@@ -28,10 +28,7 @@
   <properties>
   
     <!-- Versioning -->
-    <version.org.jboss.bootstrap_jboss.bootstrap.impl.as>2.0.0-alpha-2</version.org.jboss.bootstrap_jboss.bootstrap.impl.as>
-    <version.org.jboss.logging_jboss.logging.log4j>2.0.6.GA</version.org.jboss.logging_jboss.logging.log4j>
-    <version.org.jboss.logging_jboss.logging.spi>2.0.5.GA</version.org.jboss.logging_jboss.logging.spi>
-    <version.junit_junit>4.5</version.junit_junit>  
+    <version.junit_junit>4.6</version.junit_junit>  
   
   </properties>
   
@@ -66,12 +63,12 @@
         <artifactId>maven-compiler-plugin</artifactId>
         <inherited>true</inherited>
         <configuration>
-          <source>1.5</source>
-          <target>1.5</target>
+          <source>1.6</source>
+          <target>1.6</target>
           <showDeprecation>false</showDeprecation>
           <showWarnings>true</showWarnings>
           <optimize>true</optimize>
-          <compilerVersion>1.5</compilerVersion>
+          <compilerVersion>1.6</compilerVersion>
           <fork>true</fork>
           <argLine>-Xmx512M</argLine>
           <executable>${JAVA_HOME}/bin/javac</executable>
@@ -101,6 +98,30 @@
           <tagBase>https://svn.jboss.org/repos/jbossas/projects/embedded/tags</tagBase>
         </configuration>
       </plugin>
+      
+     <!-- Enforce Maven Environment -->
+      <plugin>
+        <artifactId>maven-enforcer-plugin
+        </artifactId>
+        <executions>
+          <execution>
+            <id>enforce-maven-environment</id>
+            <goals>
+              <goal>enforce</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <rules>
+            <requireMavenVersion>
+              <version>[2.0.9,2.1)</version> <!-- Must be Maven 2.0.9 >= x > 2.1  -->
+            </requireMavenVersion>
+            <requireJavaVersion>
+              <version>1.6.0</version> <!-- Must be JDK6 -->
+            </requireJavaVersion>
+          </rules>
+        </configuration>
+      </plugin>
 
     </plugins>
 
@@ -116,25 +137,18 @@
         <version>${version.junit_junit}</version>
         <scope>test</scope>
       </dependency>
-
+      <!-- 
+      TODO: Remove
+      This is just so that JBBOOT-94 is brought in, some Maven weirdness going on
+      where jboss.bind.address default is still coming up as 127.0.0.0 even though
+      the dependency plugin shows jboss-bootstrap-spi-as:2.0.0-alpha-2 is being used 
+      -->
       <dependency>
         <groupId>org.jboss.bootstrap</groupId>
         <artifactId>jboss-bootstrap-impl-as</artifactId>
-        <version>${version.org.jboss.bootstrap_jboss.bootstrap.impl.as}</version>
+        <version>2.0.0-SNAPSHOT</version>
       </dependency>
 
-      <dependency>
-        <groupId>org.jboss.logging</groupId>
-        <artifactId>jboss-logging-log4j</artifactId>
-        <version>${version.org.jboss.logging_jboss.logging.log4j}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.jboss.logging</groupId>
-        <artifactId>jboss-logging-spi</artifactId>
-        <version>${version.org.jboss.logging_jboss.logging.spi}</version>
-      </dependency>
-
     </dependencies>
   </dependencyManagement>
 

Modified: projects/embedded/trunk/core/pom.xml
===================================================================
--- projects/embedded/trunk/core/pom.xml	2009-07-03 06:13:55 UTC (rev 90800)
+++ projects/embedded/trunk/core/pom.xml	2009-07-03 06:14:08 UTC (rev 90801)
@@ -25,14 +25,20 @@
 
   <!-- Properties -->
   <properties>
+  
+    <!-- Versioning -->
+    <version.org.jboss.jbossas>5.2.0-SNAPSHOT</version.org.jboss.jbossas>
+  
+    <!-- 
+    TODO: Properties below this line should be ultimately
+    removed as these dependencies should be provided as part of the AS 
+    dependency chain
+     -->
+    
+    <version.jboss.web>2.1.3.GA</version.jboss.web>
 
   </properties>
 
-  <!-- Build -->
-  <build>
-
-  </build>
-
   <!-- Dependencies -->
   <dependencies>
 
@@ -40,7 +46,38 @@
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
     </dependency>
+    
+    <!-- AS modules and 3rdparty deps -->
+    <dependency>
+      <groupId>org.jboss.jbossas</groupId>
+      <artifactId>jboss-as-build</artifactId>
+      <version>${version.org.jboss.jbossas}</version>
+      <type>pom</type>
+    </dependency>
 
+    <!--
+      Deps in the runtime of AS but *not* part of the AS dependency tree
+
+      TODO: Get these represented by the AS build dependency chain
+    -->
+
+    <dependency>
+      <groupId>org.jboss.jbossas</groupId>
+      <artifactId>jboss-as-management</artifactId>
+      <version>${version.org.jboss.jbossas}</version>
+      <classifier>jsr77</classifier>
+    </dependency>
+    <dependency>
+      <groupId>jboss.web</groupId>
+      <artifactId>jsp-api</artifactId>
+      <version>${version.jboss.web}</version>
+    </dependency>
+    <dependency>
+      <groupId>jboss.web</groupId>
+      <artifactId>el-api</artifactId>
+      <version>${version.jboss.web}</version>
+    </dependency>
+
   </dependencies>
 
 </project>

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/IgnoreXbUnorderedSequenceLifecycleEventHandler.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/IgnoreXbUnorderedSequenceLifecycleEventHandler.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/IgnoreXbUnorderedSequenceLifecycleEventHandler.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,80 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.core.lifecycle;
+
+/**
+ * IgnoreXbUnorderedSequenceLifecycleEventHandler
+ * 
+ * Lifecycle event handler which, unless otherwise specified,
+ * sets the system property denoting that JBossXB should
+ * ignore the order of elements when doing schema validation
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ * @deprecated Should be removed when this is no longer required by AS
+ * for proper boot.  
+ * @see https://jira.jboss.org/jira/browse/JBAS-6924 Dependency
+ * @see http://lists.jboss.org/pipermail/jboss-development/2009-May/014394.html
+ */
+ at Deprecated
+public class IgnoreXbUnorderedSequenceLifecycleEventHandler extends SetSysPropIfNotSpecifiedLifecycleEventHandler
+{
+
+   //-------------------------------------------------------------------------------------||
+   // Class Members ----------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * System property telling XB whether it may ignore the order of elements, regardless of what's in the schema
+    */
+   private static final String SYS_PROP_XB_IGNORE_UNORDERED = "xb.builder.useUnorderedSequence";
+
+   /**
+    * Value for the ignore property
+    */
+   private static final String XB_IGNORE_VALUE = Boolean.TRUE.toString();
+
+   //-------------------------------------------------------------------------------------||
+   // Required Implementations -----------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropName()
+    */
+   @Override
+   String getSysPropName()
+   {
+      return SYS_PROP_XB_IGNORE_UNORDERED;
+   }
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropValue()
+    */
+   @Override
+   String getSysPropValue()
+   {
+      return XB_IGNORE_VALUE;
+   }
+
+}

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/InitLoggingManagerLifecycleEventHandler.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/InitLoggingManagerLifecycleEventHandler.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/InitLoggingManagerLifecycleEventHandler.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,77 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.core.lifecycle;
+
+/**
+ * InitLoggingManagerLifecycleEventHandler
+ * 
+ * Lifecycle event handler which, unless otherwise specified,
+ * sets the system property to initialize the JDK Logging Manager
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ * @deprecated Should be done in a jboss-beans.xml?  Handled some other way?  Moved to
+ * Bootstrap impl-as as part of JBossASServerImpl?
+ */
+ at Deprecated
+public class InitLoggingManagerLifecycleEventHandler extends SetSysPropIfNotSpecifiedLifecycleEventHandler
+{
+
+   //-------------------------------------------------------------------------------------||
+   // Class Members ----------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * System property for the logging manager
+    */
+   private static final String SYS_PROP_LOGGING_MANAGER = "java.util.logging.manager";
+
+   /**
+    * Value for the logging manager
+    */
+   private static final String VALUE = "org.jboss.logmanager.LogManager";
+
+   //-------------------------------------------------------------------------------------||
+   // Required Implementations -----------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropName()
+    */
+   @Override
+   String getSysPropName()
+   {
+      return SYS_PROP_LOGGING_MANAGER;
+   }
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropValue()
+    */
+   @Override
+   String getSysPropValue()
+   {
+      return VALUE;
+   }
+
+}

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SecurityActions.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SecurityActions.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SecurityActions.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,73 @@
+package org.jboss.embedded.core.lifecycle;
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
+/**
+ * SecurityActions
+ * 
+ * A set of privileged actions that are not to leak out
+ * of this package 
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ */
+class SecurityActions
+{
+
+   //-------------------------------------------------------------------------------||
+   // Constructor ------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------||
+
+   /**
+    * No external instanciation
+    */
+   private SecurityActions()
+   {
+
+   }
+
+   //-------------------------------------------------------------------------------||
+   // Utility Methods --------------------------------------------------------------||
+   //-------------------------------------------------------------------------------||
+
+   /**
+    * Sets the specified property with key and value
+    */
+   static void setSystemProperty(final String key, final String value)
+   {
+      AccessController.doPrivileged(new PrivilegedAction<Void>()
+      {
+         public Void run()
+         {
+            System.setProperty(key, value);
+            return null;
+         }
+      });
+   }
+
+   /**
+    * Obtains the system property with the specified key
+    * 
+    * @param key
+    * @return
+    * @throws IllegalArgumentException If the key is null
+    */
+   static String getSystemProperty(final String key) throws IllegalArgumentException
+   {
+      // Precondition check
+      if (key == null)
+      {
+         throw new IllegalArgumentException("key was null");
+      }
+
+      // Get sysprop
+      return AccessController.doPrivileged(new PrivilegedAction<String>()
+      {
+         public String run()
+         {
+            return System.getProperty(key);
+         }
+      });
+   }
+}


Property changes on: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SecurityActions.java
___________________________________________________________________
Name: svn:executable
   + *

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetRmiHostnameLifecycleEventHandler.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetRmiHostnameLifecycleEventHandler.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetRmiHostnameLifecycleEventHandler.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,77 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.core.lifecycle;
+
+/**
+ * SetRmiHostnameLifecycleEventHandler
+ * 
+ * Lifecycle event handler which, unless otherwise specified,
+ * sets the system property denoting the bind hostname for the RMI Server
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ * @deprecated Why is this required to start the server?  See where this is provided to 
+ * AS standalone (run scripts?) and standardize somewhere. 
+ */
+ at Deprecated
+public class SetRmiHostnameLifecycleEventHandler extends SetSysPropIfNotSpecifiedLifecycleEventHandler
+{
+
+   //-------------------------------------------------------------------------------------||
+   // Class Members ----------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * System property for the RMI server hostname
+    */
+   private static final String SYS_PROP_RMI_SERVER_HOSTNAME = "java.rmi.server.hostname";
+
+   /**
+    * Value for the hostname
+    */
+   private static final String HOSTNAME_VALUE = "localhost";
+
+   //-------------------------------------------------------------------------------------||
+   // Required Implementations -----------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropName()
+    */
+   @Override
+   String getSysPropName()
+   {
+      return SYS_PROP_RMI_SERVER_HOSTNAME;
+   }
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropValue()
+    */
+   @Override
+   String getSysPropValue()
+   {
+      return HOSTNAME_VALUE;
+   }
+
+}

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetSysPropIfNotSpecifiedLifecycleEventHandler.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetSysPropIfNotSpecifiedLifecycleEventHandler.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetSysPropIfNotSpecifiedLifecycleEventHandler.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,103 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.core.lifecycle;
+
+import org.jboss.bootstrap.spi.lifecycle.LifecycleEventException;
+import org.jboss.bootstrap.spi.lifecycle.LifecycleEventHandler;
+import org.jboss.bootstrap.spi.lifecycle.LifecycleState;
+import org.jboss.logging.Logger;
+
+/**
+ * SetSysPropIfNotSpecifiedLifecycleEventHandler
+ * 
+ * Lifecycle event handler which sets a system property
+ * unless it's been explicitly specified already
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ * @deprecated Remove when all children are expunged
+ */
+ at Deprecated
+abstract class SetSysPropIfNotSpecifiedLifecycleEventHandler implements LifecycleEventHandler
+{
+
+   //-------------------------------------------------------------------------------------||
+   // Class Members ----------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * Logger
+    */
+   private static final Logger log = Logger.getLogger(SetSysPropIfNotSpecifiedLifecycleEventHandler.class);
+
+   //-------------------------------------------------------------------------------------||
+   // Required Implementations -----------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /* (non-Javadoc)
+    * @see org.jboss.bootstrap.spi.lifecycle.LifecycleEventHandler#handleEvent(org.jboss.bootstrap.spi.lifecycle.LifecycleState)
+    */
+   public void handleEvent(final LifecycleState state) throws LifecycleEventException
+   {
+      // Get the system property
+      final String sysPropName = this.getSysPropName();
+
+      // Determine if we should set the property (only if not already specified)
+      boolean setProp = true;
+      final String propertyExplicitlySpecified = SecurityActions.getSystemProperty(sysPropName);
+      if (propertyExplicitlySpecified != null)
+      {
+         setProp = false;
+      }
+
+      // Return if we're not setting
+      if (!setProp)
+      {
+         log.debug("Skipping setting property \"" + sysPropName + "\"; already specified: "
+               + propertyExplicitlySpecified);
+         return;
+      }
+
+      // Set
+      final String sysPropValue = this.getSysPropValue();
+      log.debug("Setting system property \"" + sysPropName + "\": " + sysPropValue);
+      SecurityActions.setSystemProperty(sysPropName, sysPropValue);
+   }
+
+   //-------------------------------------------------------------------------------------||
+   // Contracts --------------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * Returns the name of the system property in question
+    * @return
+    */
+   abstract String getSysPropName();
+
+   /**
+    * Returns the value to set upon the system property
+    * if it's not already set
+    * @return
+    */
+   abstract String getSysPropValue();
+
+}

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServer.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServer.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServer.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,123 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.core.server;
+
+import org.jboss.bootstrap.impl.as.config.BasicJBossASServerConfig;
+import org.jboss.bootstrap.impl.as.server.JBossASServerImpl;
+import org.jboss.bootstrap.spi.lifecycle.LifecycleEventHandler;
+import org.jboss.bootstrap.spi.lifecycle.LifecycleState;
+import org.jboss.embedded.core.lifecycle.IgnoreXbUnorderedSequenceLifecycleEventHandler;
+import org.jboss.embedded.core.lifecycle.InitLoggingManagerLifecycleEventHandler;
+import org.jboss.embedded.core.lifecycle.SetRmiHostnameLifecycleEventHandler;
+import org.jboss.logging.Logger;
+
+/**
+ * JBossASEmbeddedServer
+ * 
+ * Extension of the JBossAS Server implementation
+ * for use in Embedded environments
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ */
+public class JBossASEmbeddedServer extends JBossASServerImpl
+{
+
+   //-------------------------------------------------------------------------------------||
+   // Class Members ----------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * Logger
+    */
+   private static final Logger log = Logger.getLogger(JBossASEmbeddedServer.class);
+
+   //-------------------------------------------------------------------------------------||
+   // Constructor ------------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * Constructor
+    * 
+    * @param Absolute location of JBOSS_HOME on the filesystem
+    * @throws IllegalArgumentException If jbossHome is not specified
+    */
+   public JBossASEmbeddedServer(final String jbossHome) throws IllegalArgumentException
+   {
+      // Call the super implementation
+      super(new BasicJBossASServerConfig());
+
+      // Precondition check
+      if (jbossHome == null || jbossHome.length() == 0)
+      {
+         throw new IllegalArgumentException("JBOSS_HOME is required but was not specified");
+      }
+
+      // Set JBOSS_HOME
+      this.getConfiguration().jbossHome(jbossHome);
+
+      // Set some lifecycle handlers
+      @SuppressWarnings("deprecation")
+      final LifecycleEventHandler ignoreXbOrder = new IgnoreXbUnorderedSequenceLifecycleEventHandler();
+      this.registerEventHandler(LifecycleState.STARTING, ignoreXbOrder);
+      @SuppressWarnings("deprecation")
+      final LifecycleEventHandler setRmiHostname = new SetRmiHostnameLifecycleEventHandler();
+      this.registerEventHandler(LifecycleState.STARTING, setRmiHostname);
+      @SuppressWarnings("deprecation")
+      final LifecycleEventHandler initLoggingManager = new InitLoggingManagerLifecycleEventHandler();
+      this.registerEventHandler(LifecycleState.STARTING, initLoggingManager);
+
+      //TODO
+      /*
+       * Do we need some handler for boot.log?  Something like:
+       */
+      log.warn(this + " has not installed any handler for a boot.log in $JBOSS_HOME/server/[name]/log");
+      //      /*
+      //       * Set boot log directory
+      //       */
+      //      final String sysPropBootLogDir = "jboss.boot.server.log.dir";
+      //      final String sysPropLogDir = JBossASServerConfig.PROP_KEY_JBOSSAS_SERVER_LOG_DIR;
+      //      String serverName = System.getProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_SERVER_NAME);
+      //      if (serverName == null || serverName.length() == 0)
+      //      {
+      //         serverName = JBossASConfigurationInitializer.VALUE_SERVER_NAME_DEFAULT;
+      //      }
+      //      final String manualBootLogDir = System.getProperty(sysPropBootLogDir);
+      //      final String manualLogDir = System.getProperty(sysPropLogDir);
+      //      // If nothing's been explicitly specified
+      //      if (manualBootLogDir == null && manualLogDir == null)
+      //      {
+      //         // We default it
+      //         final File jbossHomeFile = new File(jbossHome);
+      //         final URL jbossHomeUrl = jbossHomeFile.toURI().toURL();
+      //         final URL serverLog = new URL(jbossHomeUrl, "server/" + serverName + "/log/");
+      //         final File serverLogFile = new File(serverLog.toURI());
+      //         final String serverLogString = serverLogFile.getAbsolutePath();
+      //         System.setProperty(sysPropBootLogDir, serverLogString);
+      //      }
+      //      // If we've got a manual log dir, use it
+      //      else if (manualLogDir != null)
+      //      {
+      //         System.setProperty(sysPropBootLogDir, manualLogDir);
+      //      }
+   }
+}

Modified: projects/embedded/trunk/testsuite-full-dep/pom.xml
===================================================================
--- projects/embedded/trunk/testsuite-full-dep/pom.xml	2009-07-03 06:13:55 UTC (rev 90800)
+++ projects/embedded/trunk/testsuite-full-dep/pom.xml	2009-07-03 06:14:08 UTC (rev 90801)
@@ -14,120 +14,38 @@
   <modelVersion>4.0.0</modelVersion>
 
   <!-- Artifact Configuration -->
-  <artifactId>jboss-embedded-testsuite-fulldep</artifactId>
+  <artifactId>jboss-embedded-testsuite-fulldep
+  </artifactId>
   <version>0.1.0-SNAPSHOT</version>
-  <name>JBossAS Embedded TestSuite for Full AS Dependency Set</name>
+  <name>JBossAS Embedded TestSuite for Full AS Dependency Set
+  </name>
   <description>JBoss Application Server Embedded TestSuite with Full AS Dependency Set</description>
-
-  <build>
-
-    <plugins>
-    
-      <!-- Surefire -->
-      <plugin>
-        <artifactId>maven-surefire-plugin</artifactId>
-        <configuration>
-          <systemProperties>
-            <!--
-              This doesn't seem to help for JDK5, and is not needed in
-              JDK6. Aims to address "feature not implemented" error on
-              boot
-            -->
-            <property>
-              <name>java.endorsed.dirs</name>
-              <value>/home/alrubinger/business/jboss/wc/jbossas/branches/Branch_5_x/build/output/jboss-5.2.0.Beta/lib/endorsed</value>
-            </property>
-          </systemProperties>
-        </configuration>
-      </plugin>
-      
-      <!-- Enforce Maven Environment -->
-      <plugin>
-        <artifactId>maven-enforcer-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>enforce-maven-environment</id>
-            <goals>
-              <goal>enforce</goal>
-            </goals>
-          </execution>
-        </executions>
-        <configuration>
-          <rules>
-            <requireMavenVersion>
-              <version>[2.0.9,2.1)</version> <!-- Must be Maven 2.0.9 >= x > 2.1  -->
-            </requireMavenVersion>
-            <requireJavaVersion>
-              <version>1.6.0</version> <!-- Must be JDK6 -->
-            </requireJavaVersion>
-          </rules>
-        </configuration>
-      </plugin>
-      
-      
-    </plugins>
-  </build>
-
+  
   <!-- Properties -->
   <properties>
-    <version.org.jboss.jbossas>5.2.0-SNAPSHOT</version.org.jboss.jbossas>
-    <version.jboss.web>2.1.3.GA</version.jboss.web>
-    <version.org.jboss.javaee_jboss.javaee>5.0.1.GA</version.org.jboss.javaee_jboss.javaee>
-
+  
+    <!-- Versioning -->
+    <version.org.jboss.embedded_jboss.embedded.core>0.1.0-SNAPSHOT</version.org.jboss.embedded_jboss.embedded.core>
+  
   </properties>
 
   <!-- Dependencies -->
   <dependencies>
 
+    <!-- JBossAS Embedded Core -->
+    <dependency>
+      <groupId>org.jboss.embedded</groupId>
+      <artifactId>jboss-embedded-core</artifactId>
+      <version>${version.org.jboss.embedded_jboss.embedded.core}</version>
+      <scope>test</scope>
+    </dependency>
+
     <!-- JUnit -->
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
     </dependency>
 
-    <!-- AS modules and 3rdparty deps -->
-    <dependency>
-      <groupId>org.jboss.jbossas</groupId>
-      <artifactId>jboss-as-build</artifactId>
-      <version>${version.org.jboss.jbossas}</version>
-      <type>pom</type>
-      <exclusions>
-         <!-- TODO: Should this be necessary? -->
-         <exclusion>
-          <groupId>javax.security</groupId>
-          <artifactId>jacc</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-
-    <!--
-      Deps in the runtime of AS but *not* part of the AS dependency tree
-      
-      TODO: Get these represented by the AS build dependency chain
-    -->
-
-    <dependency>
-      <groupId>org.jboss.jbossas</groupId>
-      <artifactId>jboss-as-management</artifactId>
-      <version>${version.org.jboss.jbossas}</version>
-      <classifier>jsr77</classifier>
-    </dependency>
-    <dependency>
-      <groupId>jboss.web</groupId>
-      <artifactId>jsp-api</artifactId>
-      <version>${version.jboss.web}</version>
-    </dependency>
-    <dependency>
-      <groupId>jboss.web</groupId>
-      <artifactId>el-api</artifactId>
-      <version>${version.jboss.web}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.jboss.javaee</groupId>
-      <artifactId>jboss-javaee</artifactId>
-      <version>${version.org.jboss.javaee_jboss.javaee}</version>
-    </dependency>
-
   </dependencies>
 
 </project>

Modified: projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/SecurityActions.java
===================================================================
--- projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/SecurityActions.java	2009-07-03 06:13:55 UTC (rev 90800)
+++ projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/SecurityActions.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -125,4 +125,29 @@
       });
 
    }
+
+   /**
+    * Obtains the environment variable with the specified key 
+    * 
+    * @param key
+    * @return
+    * @throws IllegalArgumentException If the key is null
+    */
+   static String getEnvironmentVariable(final String key) throws IllegalArgumentException
+   {
+      // Precondition check
+      if (key == null)
+      {
+         throw new IllegalArgumentException("key was null");
+      }
+
+      // Get envvar
+      return AccessController.doPrivileged(new PrivilegedAction<String>()
+      {
+         public String run()
+         {
+            return System.getenv(key);
+         }
+      });
+   }
 }

Modified: projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/ServerTestCase.java
===================================================================
--- projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/ServerTestCase.java	2009-07-03 06:13:55 UTC (rev 90800)
+++ projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/ServerTestCase.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -22,34 +22,32 @@
 //FIXME We have to be in org.jboss due to JMX getPackage in AS 
 package org.jboss;
 
-import java.io.File;
-import java.net.URL;
-
 import junit.framework.TestCase;
 
-import org.jboss.bootstrap.spi.as.config.JBossASConfigurationInitializer;
-import org.jboss.bootstrap.spi.as.config.JBossASServerConfig;
 import org.jboss.bootstrap.spi.as.server.JBossASServer;
-import org.jboss.bootstrap.spi.as.server.JBossASServerFactory;
 import org.jboss.bootstrap.spi.lifecycle.LifecycleState;
+import org.jboss.embedded.core.server.JBossASEmbeddedServer;
+import org.jboss.logging.Logger;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
 import org.junit.Test;
 
 /**
  * ServerTestCase
  * 
- * Don't even begin to consider this a real test :D
- * It's essentially all the logic of what Embedded Core will
- * provide in one unified place.
+ * The beginnings of the prototype for an end-user view 
+ * of the Embedded Server.  Tests here should include lifecycle
+ * to start/stop the server, and checks to ensure that
+ * subsystems are working as expected.
  * 
  * This is the initial prototype for Embedded AS to run 
  * with a full AS Dependency Set upon the Application
- * ClassLoader.  The deps are defined by pom.xml.
+ * ClassLoader.  The deps are defined by pom.xml and its parents.
  * 
  * Some hacks worthy of note:
- * 1) JBOSS_HOME is hardcoded
- * 2) Requires JDK6 to run, something to do with JAXP not getting endorsed 
+ * 1) Requires JDK6 to run, something to do with JAXP not getting endorsed 
  *      from java.endorsed.dirs in pom.xml Surefire Config
- * 3) This class must be in package org.jboss due to JMX 
+ * 2) This class must be in package org.jboss due to JMX 
  *   package checking in AS org.jboss.management.j2ee.deployers.LocalJBossServerDomain at 335
  *
  * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
@@ -62,100 +60,87 @@
    // Class Members ----------------------------------------------------------------||
    //-------------------------------------------------------------------------------||
 
+   private static final Logger log = Logger.getLogger(ServerTestCase.class);
+
    /**
     * The server instance
     */
    private static JBossASServer server;
 
    /**
-    * Location of JBOSS_HOME, hack for now.
+    * Environment Variable name for JBOSS_HOME
     */
-   @Deprecated
-   //FIXME
-   private static final String HARDCODED_JBOSS_HOME = "/home/alrubinger/business/jboss/wc/jbossas/branches/Branch_5_x/build/output/jboss-5.2.0.Beta/";
+   private static final String ENV_VAR_JBOSS_HOME = "JBOSS_HOME";
 
+   /**
+    * System property name for JBOSS_HOME
+    */
+   private static final String SYS_PROP_JBOSS_HOME = "jboss.home";
+
    //-------------------------------------------------------------------------------||
-   // Tests ------------------------------------------------------------------------||
+   // Lifecycle --------------------------------------------------------------------||
    //-------------------------------------------------------------------------------||
 
    /**
-    * Ensures that the server reports as running
+    * Starts up the Application Server.  Relies upon either Environment
+    * Variable "JBOSS_HOME" or System Property "jboss.home" being set, with 
+    * precedence to the system property
     */
-   @Test
-   public void testServerStart() throws Throwable
+   @BeforeClass
+   public static void startEmbedddedAS() throws Exception
    {
-      //FIXME
-      // These should be set up by some common AS booter if not specified, not unique to Embedded
-      System.setProperty("xb.builder.useUnorderedSequence", Boolean.TRUE.toString());
-      System.setProperty("java.rmi.server.hostname", "localhost");
-
-      //FIXME Hack
-      // http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4237170
-      System.setProperty("javax.security.jacc.PolicyConfigurationFactory.provider",
-            "org.jboss.security.jacc.JBossPolicyConfigurationFactory");
-
-      final String propKeyJBossasBindAddress = JBossASServerConfig.PROP_KEY_JBOSSAS_BIND_ADDRESS;
-      final String defaultBindAddress = "127.0.0.1";
-      System.setProperty(propKeyJBossasBindAddress, defaultBindAddress);
-
-      System.out.println(System.getProperties());
-
-      // Initialize the JDK logmanager
-      String name = System.getProperty("java.util.logging.manager");
-      if (name == null)
+      // Get JBOSS_HOME
+      String jbossHome = SecurityActions.getSystemProperty(SYS_PROP_JBOSS_HOME);
+      if (jbossHome == null)
       {
-         System.setProperty("java.util.logging.manager", "org.jboss.logmanager.LogManager");
+         jbossHome = SecurityActions.getEnvironmentVariable(ENV_VAR_JBOSS_HOME);
       }
-
-      //FIXME Hardcoded for testing
-      final String jbossHome = HARDCODED_JBOSS_HOME;
-
-      //FIXME We shouldn't need any of this log stuff, should we?
-      /*
-       * Set boot log directory
-       */
-      final String sysPropBootLogDir = "jboss.boot.server.log.dir";
-      final String sysPropLogDir = JBossASServerConfig.PROP_KEY_JBOSSAS_SERVER_LOG_DIR;
-      String serverName = System.getProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_SERVER_NAME);
-      if (serverName == null || serverName.length() == 0)
+      if (jbossHome == null)
       {
-         serverName = JBossASConfigurationInitializer.VALUE_SERVER_NAME_DEFAULT;
+         throw new IllegalStateException(
+               "JBOSS_HOME must be specified for this test, either via environment variable \"" + ENV_VAR_JBOSS_HOME
+                     + "\" or system property \"" + SYS_PROP_JBOSS_HOME + "\".");
       }
-      final String manualBootLogDir = System.getProperty(sysPropBootLogDir);
-      final String manualLogDir = System.getProperty(sysPropLogDir);
-      // If nothing's been explicitly specified
-      if (manualBootLogDir == null && manualLogDir == null)
-      {
-         // We default it
-         final File jbossHomeFile = new File(jbossHome);
-         final URL jbossHomeUrl = jbossHomeFile.toURI().toURL();
-         final URL serverLog = new URL(jbossHomeUrl, "server/" + serverName + "/log/");
-         final File serverLogFile = new File(serverLog.toURI());
-         final String serverLogString = serverLogFile.getAbsolutePath();
-         System.setProperty(sysPropBootLogDir, serverLogString);
-      }
-      // If we've got a manual log dir, use it
-      else if (manualLogDir != null)
-      {
-         System.setProperty(sysPropBootLogDir, manualLogDir);
-      }
 
       // Make Server
-      server = JBossASServerFactory.createServer();
+      log.info("Using JBOSS_HOME: " + jbossHome);
+      server = new JBossASEmbeddedServer(jbossHome);
 
-      // Set JBOSS_HOME
-      server.getConfiguration().jbossHome(jbossHome);
-
       // Start
+      log.info("Starting Server: " + server);
       server.start();
+      log.info("...started.");
+   }
 
+   /**
+    * Shuts down the Application Server after the suite ends
+    */
+   @AfterClass
+   public static void stopEmbeddedAS() throws Exception
+   {
+      // If exists and started
+      if (server != null && server.getState().equals(LifecycleState.STARTED))
+      {
+         // Shutdown
+         log.info("Shutting down server: " + server);
+         server.shutdown();
+      }
+
+   }
+
+   //-------------------------------------------------------------------------------||
+   // Tests ------------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------||
+
+   /**
+    * Ensures that the server reports as running
+    */
+   @Test
+   public void testServerStart() throws Throwable
+   {
+      log.info("testServerStart");
       final LifecycleState state = server.getState();
       final LifecycleState expected = LifecycleState.STARTED;
       TestCase.assertEquals("The server is not reporting as started", expected, state);
-
-      // Shutdown
-      server.shutdown();
-
    }
-
 }

Added: projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputBean.java
===================================================================
--- projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputBean.java	                        (rev 0)
+++ projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputBean.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.testsuite.fulldep.ejb3;
+
+import javax.ejb.Local;
+import javax.ejb.Stateless;
+
+/**
+ * OutputBean
+ * 
+ * Simple SLSB which will return a contracted output
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ */
+ at Stateless
+ at Local(OutputLocalBusiness.class)
+public class OutputBean implements OutputLocalBusiness
+{
+   //-------------------------------------------------------------------------------------||
+   // Required Implementations -----------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   public String getOutput()
+   {
+      return OutputLocalBusiness.OUTPUT;
+   }
+}

Added: projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputLocalBusiness.java
===================================================================
--- projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputLocalBusiness.java	                        (rev 0)
+++ projects/embedded/trunk/testsuite-full-dep/src/test/java/org/jboss/embedded/testsuite/fulldep/ejb3/OutputLocalBusiness.java	2009-07-03 06:14:08 UTC (rev 90801)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.testsuite.fulldep.ejb3;
+
+/**
+ * OutputLocalBusiness
+ * 
+ * Local business interface to an SLSB which will 
+ * return a contracted String output
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ */
+public interface OutputLocalBusiness
+{
+   //-------------------------------------------------------------------------------||
+   // Constants --------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------||
+
+   String OUTPUT = "Embedded SLSB Local Business Output";
+
+   //-------------------------------------------------------------------------------||
+   // Contracts --------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------||
+
+   /**
+    * Returns the contracted output
+    */
+   String getOutput();
+}




More information about the jboss-cvs-commits mailing list