[webbeans-commits] Webbeans SVN: r1000 - in tck/trunk: impl/src/main/java/org/jboss/webbeans/tck/impl and 1 other directories.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Thu Jan 15 20:22:44 EST 2009


Author: pete.muir at jboss.org
Date: 2009-01-15 20:22:43 -0500 (Thu, 15 Jan 2009)
New Revision: 1000

Added:
   tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/Containers.java
Modified:
   tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TCKConfiguration.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/WebBeansTCKImpl.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/AbstractTest.java
Log:
Add support for container bootstrap

Added: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/Containers.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/Containers.java	                        (rev 0)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/Containers.java	2009-01-16 01:22:43 UTC (rev 1000)
@@ -0,0 +1,39 @@
+package org.jboss.webbeans.tck.api;
+
+import javax.webbeans.manager.Manager;
+
+/**
+ * Container related operations
+ * 
+ * @author Pete Muir
+ *
+ */
+public interface Containers
+{
+   
+   public static final String PROPERTY_NAME = Containers.class.getName();
+   
+   /**
+    * <p>Bootstrap the container by registering Beans and Observers, raising 
+    * @Initialized event, validating the deployment, and raising the 
+    * @Deployed event.</p>
+    * 
+    * <p>Any classes passed in should be fully deployed. This includes:</p>
+    * 
+    * <ul>
+    * <li>Simple beans</li>
+    * <li>Session beans</li>
+    * <li>Producer methods and producer fields</li>
+    * <li>Observer methods</li>
+    * <li>support for Event and Instance injection points</li> 
+    * </ul>
+    * 
+    * The container should be in an fully initialized state when the
+    * method returns
+    * 
+    * @param classes the classes to deploy
+    * @return the manager created as a result of initializing the container
+    */
+   public Manager deploy(Class<?>...classes);
+   
+}


Property changes on: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/Containers.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TCKConfiguration.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TCKConfiguration.java	2009-01-16 00:28:17 UTC (rev 999)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TCKConfiguration.java	2009-01-16 01:22:43 UTC (rev 1000)
@@ -5,9 +5,9 @@
 public class TCKConfiguration
 {
    
-   public static final TCKConfiguration newInstance(Beans beans, Contexts<?> contexts, Managers managers, TestSuite testSuite)
+   public static final TCKConfiguration newInstance(Beans beans, Contexts<?> contexts, Managers managers, Containers containers, TestSuite testSuite)
    {
-      return new TCKConfiguration(beans, contexts, managers, testSuite);
+      return new TCKConfiguration(beans, contexts, managers, containers, testSuite);
    }
    
    private Beans beans;
@@ -17,13 +17,16 @@
    private Managers managers;
    
    private TestSuite testSuite;
+   
+   private Containers containers;
 
-   protected TCKConfiguration(Beans beans, Contexts<?> contexts, Managers managers, TestSuite testSuite)
+   protected TCKConfiguration(Beans beans, Contexts<?> contexts, Managers managers, Containers containers, TestSuite testSuite)
    {
       super();
       this.beans = beans;
       this.contexts = contexts;
       this.managers = managers;
+      this.containers = containers;
       if (testSuite == null)
       {
          this.testSuite = testSuite;
@@ -55,4 +58,9 @@
       return testSuite;
    }
    
+   public Containers getContainers()
+   {
+      return containers;
+   }
+   
 }

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/WebBeansTCKImpl.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/WebBeansTCKImpl.java	2009-01-16 00:28:17 UTC (rev 999)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/WebBeansTCKImpl.java	2009-01-16 01:22:43 UTC (rev 1000)
@@ -9,6 +9,7 @@
 import javax.xml.parsers.ParserConfigurationException;
 
 import org.jboss.webbeans.tck.api.Beans;
+import org.jboss.webbeans.tck.api.Containers;
 import org.jboss.webbeans.tck.api.Contexts;
 import org.jboss.webbeans.tck.api.Managers;
 import org.jboss.webbeans.tck.api.TCKConfiguration;
@@ -94,10 +95,11 @@
    {
       DeploymentProperties deploymentProperties = new DeploymentProperties();
       Managers managers = create(deploymentProperties.getClasses(Managers.PROPERTY_NAME, Managers.class), Managers.class, true);
+      Containers containers = create(deploymentProperties.getClasses(Containers.PROPERTY_NAME, Containers.class), Containers.class, true);
       Beans beans = create(deploymentProperties.getClasses(Beans.PROPERTY_NAME, Beans.class), Beans.class, true);
       Contexts<?> contexts = create(deploymentProperties.getClasses(Contexts.PROPERTY_NAME, Contexts.class), Contexts.class, true);
       TestSuite testSuite = create(deploymentProperties.getClasses(TestSuite.PROPERTY_NAME, TestSuite.class), TestSuite.class, false);
-      return TCKConfiguration.newInstance(beans, contexts, managers, testSuite);
+      return TCKConfiguration.newInstance(beans, contexts, managers, containers, testSuite);
    }
    
    private static <T> T create(Set<Class<? extends T>> classes, Class<T> expectedType, boolean required)

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/AbstractTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/AbstractTest.java	2009-01-16 00:28:17 UTC (rev 999)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/AbstractTest.java	2009-01-16 01:22:43 UTC (rev 1000)
@@ -19,7 +19,7 @@
 import javax.webbeans.manager.Bean;
 import javax.webbeans.manager.Manager;
 
-import org.jboss.webbeans.tck.impl.util.Reflections;
+import org.testng.annotations.AfterMethod;
 import org.testng.annotations.BeforeMethod;
 
 @SuppressWarnings("unchecked")
@@ -41,6 +41,12 @@
       configuration().getManagers().setEnabledDeploymentTypes(getEnabledDeploymentTypes());
    }
    
+   @AfterMethod
+   public void after()
+   {
+      manager = null;
+   }
+   
    public <T> Bean<T> getSimpleBean(Class<T> beanClass)
    {
       return configuration().getBeans().createSimpleBean(beanClass);
@@ -53,7 +59,7 @@
 
    protected void deployBeans(Class<?>... classes)
    {
-      
+      manager = configuration().getContainers().deploy(classes);
    }
 
    protected <T> Bean<T> registerBean(Class<T> clazz)




More information about the weld-commits mailing list