[jboss-cvs] JBossAS SVN: r80141 - in projects/microcontainer/branches/Branch_2_0/kernel/src: main/java/org/jboss/beans/metadata/spi/builder and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Oct 28 08:12:29 EDT 2008


Author: alesj
Date: 2008-10-28 08:12:28 -0400 (Tue, 28 Oct 2008)
New Revision: 80141

Modified:
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/BeanMetaDataBuilderImpl.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/LifecycleMetaDataBuilder.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/test/java/org/jboss/test/kernel/config/test/BeanMetaDataBuilderTestCase.java
Log:
Port JBMICROCONT-373 to branch.

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/BeanMetaDataBuilderImpl.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/BeanMetaDataBuilderImpl.java	2008-10-28 12:08:28 UTC (rev 80140)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/BeanMetaDataBuilderImpl.java	2008-10-28 12:12:28 UTC (rev 80141)
@@ -683,6 +683,12 @@
       return properties;
    }
 
+   public BeanMetaDataBuilder ignoreCreate()
+   {
+      createBuilder.setIgnored();
+      return this;
+   }
+
    public BeanMetaDataBuilder setCreate(String methodName)
    {
       createBuilder.createStateActionMetaData(methodName);
@@ -707,6 +713,12 @@
       return this;
    }
 
+   public BeanMetaDataBuilder ignoreStart()
+   {
+      startBuilder.setIgnored();
+      return this;
+   }
+
    public BeanMetaDataBuilder setStart(String methodName)
    {
       startBuilder.createStateActionMetaData(methodName);
@@ -731,6 +743,12 @@
       return this;
    }
 
+   public BeanMetaDataBuilder ignoreStop()
+   {
+      stopBuilder.setIgnored();
+      return this;
+   }
+
    public BeanMetaDataBuilder setStop(String methodName)
    {
       stopBuilder.createStateActionMetaData(methodName);
@@ -755,6 +773,12 @@
       return this;
    }
 
+   public BeanMetaDataBuilder ignoreDestroy()
+   {
+      destroyBuilder.setIgnored();
+      return this;
+   }
+
    public BeanMetaDataBuilder setDestroy(String methodName)
    {
       destroyBuilder.createStateActionMetaData(methodName);

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/LifecycleMetaDataBuilder.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/LifecycleMetaDataBuilder.java	2008-10-28 12:08:28 UTC (rev 80140)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/builder/LifecycleMetaDataBuilder.java	2008-10-28 12:12:28 UTC (rev 80141)
@@ -57,7 +57,22 @@
    }
 
    /**
+    * Set ignored no lifecycle metadata.
+    */
+   public void setIgnored()
+   {
+      LifecycleMetaData lmd = getCheckedLifecycle();
+      if (lmd instanceof AbstractLifecycleMetaData)
+      {
+         AbstractLifecycleMetaData almd = (AbstractLifecycleMetaData)lmd;
+         almd.setIgnored(true);
+      }
+   }
+
+   /**
     * Check lifecycle.
+    * 
+    * TODO - fix name in 2.2 version!
     */
    protected void checkLlifecycle()
    {
@@ -69,6 +84,20 @@
    }
 
    /**
+    * Get checked lifecycle.
+    *
+    * @return checked lifecycle
+    */
+   protected LifecycleMetaData getCheckedLifecycle()
+   {
+      LifecycleMetaData lifecycle = getLifecycle(beanMetaData);
+      if (lifecycle == null)
+         lifecycle = createStateActionMetaData(null);
+
+      return lifecycle;
+   }
+
+   /**
     * Add parameter.
     *
     * @param type the type

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java	2008-10-28 12:08:28 UTC (rev 80140)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/spi/builder/BeanMetaDataBuilder.java	2008-10-28 12:12:28 UTC (rev 80141)
@@ -468,6 +468,13 @@
    public abstract BeanMetaDataBuilder addPropertyMetaData(String name, Map<ValueMetaData, ValueMetaData> value);
    
    /**
+    * Should we ignore default create invocation.
+    *
+    * @return the builder
+    */
+   public abstract BeanMetaDataBuilder ignoreCreate();
+
+   /**
     * Set the create method
     * 
     * @param methodName the method name
@@ -503,6 +510,13 @@
    public abstract BeanMetaDataBuilder addCreateParameter(String type, ValueMetaData value);
 
    /**
+    * Should we ignore default start invocation.
+    *
+    * @return the builder
+    */
+   public abstract BeanMetaDataBuilder ignoreStart();
+
+   /**
     * Set the start method
     * 
     * @param methodName the method name
@@ -538,6 +552,13 @@
    public abstract BeanMetaDataBuilder addStartParameter(String type, ValueMetaData value);
 
    /**
+    * Should we ignore default stop invocation.
+    *
+    * @return the builder
+    */
+   public abstract BeanMetaDataBuilder ignoreStop();
+
+   /**
     * Set the stop method
     * 
     * @param methodName the method name
@@ -573,6 +594,13 @@
    public abstract BeanMetaDataBuilder addStopParameter(String type, ValueMetaData value);
 
    /**
+    * Should we ignore default destroy invocation.
+    *
+    * @return the builder
+    */
+   public abstract BeanMetaDataBuilder ignoreDestroy();
+
+   /**
     * Set the destroy method
     * 
     * @param methodName the method name

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/test/java/org/jboss/test/kernel/config/test/BeanMetaDataBuilderTestCase.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/test/java/org/jboss/test/kernel/config/test/BeanMetaDataBuilderTestCase.java	2008-10-28 12:08:28 UTC (rev 80140)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/test/java/org/jboss/test/kernel/config/test/BeanMetaDataBuilderTestCase.java	2008-10-28 12:12:28 UTC (rev 80141)
@@ -41,6 +41,7 @@
 import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
 import org.jboss.beans.metadata.spi.CallbackMetaData;
 import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.beans.metadata.spi.LifecycleMetaData;
 import org.jboss.beans.metadata.spi.RelatedClassMetaData;
 import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
 import org.jboss.dependency.spi.Cardinality;
@@ -890,4 +891,24 @@
 
       assertEquals(related, bmd.getRelated());
    }
+
+   public void testIgnoredLifecycle() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder("test");
+      builder.ignoreCreate();
+      builder.ignoreStart();
+      builder.ignoreStop();
+      builder.ignoreDestroy();
+      BeanMetaData bmd = builder.getBeanMetaData();
+      assertIgnoredLifecycle(bmd.getCreate());
+      assertIgnoredLifecycle(bmd.getStart());
+      assertIgnoredLifecycle(bmd.getStop());
+      assertIgnoredLifecycle(bmd.getDestroy());
+   }
+
+   protected void assertIgnoredLifecycle(LifecycleMetaData lmd)
+   {
+      assertNotNull(lmd);
+      assertTrue(lmd.isIgnored());
+   }
 }




More information about the jboss-cvs-commits mailing list