Author: clement
Date: Thu Mar 17 17:54:52 2011
New Revision: 1082610

URL: http://svn.apache.org/viewvc?rev=1082610&view=rev
Log:
Try to reproduce FELIX-2430.
Seems to work in iPOJO 1.8.0

Added:
    
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/CallSuperSuperConstructorWithNew.java
    
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/ParentClass2.java
    
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/SuperParentClass.java
Modified:
    felix/trunk/ipojo/tests/manipulator/creation/pom.xml
    
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/manipulation/POJOCreation.java
    felix/trunk/ipojo/tests/manipulator/creation/src/main/resources/metadata.xml

Modified: felix/trunk/ipojo/tests/manipulator/creation/pom.xml
URL: 
http://svn.apache.org/viewvc/felix/trunk/ipojo/tests/manipulator/creation/pom.xml?rev=1082610&r1=1082609&r2=1082610&view=diff
==============================================================================
--- felix/trunk/ipojo/tests/manipulator/creation/pom.xml (original)
+++ felix/trunk/ipojo/tests/manipulator/creation/pom.xml Thu Mar 17 17:54:52 
2011
@@ -104,6 +104,24 @@
           <target>1.4</target>
         </configuration>
       </plugin>
+
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-junit4osgi-plugin</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <goals>
+              <goal>test</goal>
+            </goals>
+            <configuration>
+              <configuration>
+              <org.osgi.http.port>8083</org.osgi.http.port>
+              </configuration>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
     </plugins>
   </build>
 </project>

Added: 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/CallSuperSuperConstructorWithNew.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/CallSuperSuperConstructorWithNew.java?rev=1082610&view=auto
==============================================================================
--- 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/CallSuperSuperConstructorWithNew.java
 (added)
+++ 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/CallSuperSuperConstructorWithNew.java
 Thu Mar 17 17:54:52 2011
@@ -0,0 +1,10 @@
+package org.apache.felix.ipojo.test.scenarios.component;
+
+public class CallSuperSuperConstructorWithNew extends ParentClass2 {
+
+    public CallSuperSuperConstructorWithNew() {
+        super(new String("test"));
+        System.out.println("plop");
+    }
+
+}

Added: 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/ParentClass2.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/ParentClass2.java?rev=1082610&view=auto
==============================================================================
--- 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/ParentClass2.java
 (added)
+++ 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/ParentClass2.java
 Thu Mar 17 17:54:52 2011
@@ -0,0 +1,9 @@
+package org.apache.felix.ipojo.test.scenarios.component;
+
+public class ParentClass2 extends SuperParentClass {
+
+    public ParentClass2(String n) {
+        super(n);
+    }
+
+}

Added: 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/SuperParentClass.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/SuperParentClass.java?rev=1082610&view=auto
==============================================================================
--- 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/SuperParentClass.java
 (added)
+++ 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/component/SuperParentClass.java
 Thu Mar 17 17:54:52 2011
@@ -0,0 +1,17 @@
+package org.apache.felix.ipojo.test.scenarios.component;
+
+public class SuperParentClass {
+
+    private String name;
+
+    public SuperParentClass(final String n) {
+        System.out.println("Hello from super super !");
+        name = n;
+    }
+
+    public SuperParentClass(final StringBuffer n) {
+        name = n.toString();
+    }
+
+
+}

Modified: 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/manipulation/POJOCreation.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/manipulation/POJOCreation.java?rev=1082610&r1=1082609&r2=1082610&view=diff
==============================================================================
--- 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/manipulation/POJOCreation.java
 (original)
+++ 
felix/trunk/ipojo/tests/manipulator/creation/src/main/java/org/apache/felix/ipojo/test/scenarios/manipulation/POJOCreation.java
 Thu Mar 17 17:54:52 2011
@@ -1,4 +1,4 @@
-/* 
+/*
  * 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
@@ -33,96 +33,96 @@ import org.osgi.framework.ServiceReferen
  * Check the different method to create POJO object.
  */
 public class POJOCreation extends OSGiTestCase {
-    
+
     private IPOJOHelper helper;
-       
-       private ComponentInstance ci_lazzy;
-       private ComponentInstance ci_immediate;
-       private ComponentInstance ci_immediate_singleton;
-       
-       private Architecture lazzyArch;
-       private Architecture immeArch;
-       private Architecture immeArchSing;
-       
-       
+
+    private ComponentInstance ci_lazzy;
+    private ComponentInstance ci_immediate;
+    private ComponentInstance ci_immediate_singleton;
+
+    private Architecture lazzyArch;
+    private Architecture immeArch;
+    private Architecture immeArchSing;
+
+
     private ComponentInstance ci_lazzy_sing;
     private ComponentInstance ci_lazzy_sev;
-   
+
     private Architecture lazzyArchSing;
     private Architecture lazzyArchSev;
     private ComponentInstance ci_lazzy_singM;
     private ComponentInstance ci_lazzy_sevM;
-   
+
     private Architecture lazzyArchSingM;
     private Architecture lazzyArchSevM;
-       
-       public void setUp() {
-           helper = new IPOJOHelper(this);
-           
-               String factName = "ManipulationCreation-FooProviderType-1";
-               String compName = "FooProvider-1";
-               ci_lazzy = helper.createComponentInstance(factName ,compName);
-               
-               String factName2 = 
"ManipulationCreation-ImmediateFooProviderType";
-               String compName2 = "FooProvider-2";
-               ci_immediate = helper.createComponentInstance(factName2, 
compName2);
-               
-               String factName3 = 
"ManipulationCreation-ImmediateFooProviderTypeSingleton";
+
+    public void setUp() {
+        helper = new IPOJOHelper(this);
+
+        String factName = "ManipulationCreation-FooProviderType-1";
+        String compName = "FooProvider-1";
+        ci_lazzy = helper.createComponentInstance(factName ,compName);
+
+        String factName2 = "ManipulationCreation-ImmediateFooProviderType";
+        String compName2 = "FooProvider-2";
+        ci_immediate = helper.createComponentInstance(factName2, compName2);
+
+        String factName3 = 
"ManipulationCreation-ImmediateFooProviderTypeSingleton";
         String compName3 = "FooProvider-3";
         ci_immediate_singleton = helper.createComponentInstance(factName3, 
compName3);
-        
+
         String factName4 = "ManipulationCreation-FooProviderType-1-Sing";
         String compName4 = "FooProvider-1-Sing";
         ci_lazzy_sing = helper.createComponentInstance(factName4, compName4);
-        
+
         String factName5 = "ManipulationCreation-FooProviderType-1-Sev";
         String compName5 = "FooProvider-1-Sev";
         ci_lazzy_sev = helper.createComponentInstance(factName5, compName5);
-        
+
         String factName6 = "ManipulationCreation-FooProviderType-1-SingM";
         String compName6 = "FooProvider-1-SingM";
         ci_lazzy_singM = helper.createComponentInstance(factName6, compName6);
-        
+
         String factName7 = "ManipulationCreation-FooProviderType-1-SevM";
         String compName7 = "FooProvider-1-SevM";
         ci_lazzy_sevM = helper.createComponentInstance(factName7, compName7);
-               
-               lazzyArch = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName+")");
-               immeArch =   (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName2+")");
-               immeArchSing = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName3+")");
-               lazzyArchSing = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName4+")");
-               lazzyArchSev = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName5+")");
-               lazzyArchSingM = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName6+")");
-               lazzyArchSevM = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName7+")");
-       }
-       
-       public void tearDown() {
-               lazzyArch = null;
-               immeArch = null;
-               immeArchSing = null;
-               lazzyArchSing = null;
-               lazzyArchSev = null;
-               lazzyArchSingM = null;
+
+        lazzyArch = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName+")");
+        immeArch =   (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName2+")");
+        immeArchSing = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName3+")");
+        lazzyArchSing = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName4+")");
+        lazzyArchSev = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName5+")");
+        lazzyArchSingM = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName6+")");
+        lazzyArchSevM = (Architecture) 
getServiceObject(Architecture.class.getName(), 
"(architecture.instance="+compName7+")");
+    }
+
+    public void tearDown() {
+        lazzyArch = null;
+        immeArch = null;
+        immeArchSing = null;
+        lazzyArchSing = null;
+        lazzyArchSev = null;
+        lazzyArchSingM = null;
         lazzyArchSevM = null;
         helper.dispose();
-       }
-       
-       /**
-        * Check lazy creation.
-        */
-       public void testLazyCreation() {
-               assertEquals("Check that no objects are created ", 0, 
((PrimitiveInstanceDescription) 
lazzyArch.getInstanceDescription()).getCreatedObjects().length);
-               ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_lazzy.getInstanceName());
-               assertNotNull("Check that a FooService from " + 
ci_lazzy.getInstanceName() + " is available",ref);
-               FooService fs = (FooService) getServiceObject(ref);
-               assertTrue("Check the FooService invocation", fs.foo());
-               assertEquals("Check the creation of 1 object",1,  
((PrimitiveInstanceDescription) 
lazzyArch.getInstanceDescription()).getCreatedObjects().length);
-       }
-       
-       /**
-        * Check lazy and singleton creation.
-        */
-       public void testLazyCreationSingleton() {
+    }
+
+    /**
+     * Check lazy creation.
+     */
+    public void testLazyCreation() {
+        assertEquals("Check that no objects are created ", 0, 
((PrimitiveInstanceDescription) 
lazzyArch.getInstanceDescription()).getCreatedObjects().length);
+        ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_lazzy.getInstanceName());
+        assertNotNull("Check that a FooService from " + 
ci_lazzy.getInstanceName() + " is available",ref);
+        FooService fs = (FooService) getServiceObject(ref);
+        assertTrue("Check the FooService invocation", fs.foo());
+        assertEquals("Check the creation of 1 object",1,  
((PrimitiveInstanceDescription) 
lazzyArch.getInstanceDescription()).getCreatedObjects().length);
+    }
+
+    /**
+     * Check lazy and singleton creation.
+     */
+    public void testLazyCreationSingleton() {
         assertEquals("Check that no objects are created ", 0,  
((PrimitiveInstanceDescription) 
lazzyArchSing.getInstanceDescription()).getCreatedObjects().length);
         ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_lazzy_sing.getInstanceName());
         assertNotNull("Check that a FooService from " + 
ci_lazzy_sing.getInstanceName() + " is available",ref);
@@ -130,11 +130,11 @@ public class POJOCreation extends OSGiTe
         assertTrue("Check the FooService invocation", fs.foo());
         assertEquals("Check the creation of 1 object",1,  
((PrimitiveInstanceDescription) 
lazzyArchSing.getInstanceDescription()).getCreatedObjects().length);
     }
-       
-       /**
-        * Check lazy and "several" creation.
-        */
-       public void testLazyCreationSeveral() {
+
+    /**
+     * Check lazy and "several" creation.
+     */
+    public void testLazyCreationSeveral() {
         assertEquals("Check that no objects are created ", 0,  
((PrimitiveInstanceDescription) 
lazzyArchSev.getInstanceDescription()).getCreatedObjects().length);
         ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_lazzy_sev.getInstanceName());
         assertNotNull("Check that a FooService from " + 
ci_lazzy_sev.getInstanceName() + " is available", ref);
@@ -144,19 +144,19 @@ public class POJOCreation extends OSGiTe
         assertTrue("Check the FooService invocation-2", fs2.foo());
         assertEquals("Check the creation of 1 object",1, 
((PrimitiveInstanceDescription) 
lazzyArchSev.getInstanceDescription()).getCreatedObjects().length);
     }
-       
-       /**
-        * Check immediate creation.
-        */
-       public void testImmediateCreation() {
-               assertEquals("Check that one object is created ", 1, 
((PrimitiveInstanceDescription) 
immeArch.getInstanceDescription()).getCreatedObjects().length);
-               ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_immediate.getInstanceName());
-               assertNotNull("Check that a FooService from " + 
ci_immediate.getInstanceName() + " is available", ref);
-               FooService fs = (FooService) getServiceObject(ref);
-               assertTrue("Check the FooService invocation", fs.foo());
-               assertEquals("Check the creation of 1 object", 1, 
((PrimitiveInstanceDescription) 
immeArch.getInstanceDescription()).getCreatedObjects().length);
-       }
-    
+
+    /**
+     * Check immediate creation.
+     */
+    public void testImmediateCreation() {
+        assertEquals("Check that one object is created ", 1, 
((PrimitiveInstanceDescription) 
immeArch.getInstanceDescription()).getCreatedObjects().length);
+        ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_immediate.getInstanceName());
+        assertNotNull("Check that a FooService from " + 
ci_immediate.getInstanceName() + " is available", ref);
+        FooService fs = (FooService) getServiceObject(ref);
+        assertTrue("Check the FooService invocation", fs.foo());
+        assertEquals("Check the creation of 1 object", 1, 
((PrimitiveInstanceDescription) 
immeArch.getInstanceDescription()).getCreatedObjects().length);
+    }
+
     /**
      * Check bundle context injection.
      */
@@ -173,12 +173,12 @@ public class POJOCreation extends OSGiTe
      * Test immediate singleton creation.
      */
     public void testImmediateSingletonCreation() {
-       assertEquals("Check that one object is created ", 1, 
((PrimitiveInstanceDescription) 
immeArchSing.getInstanceDescription()).getCreatedObjects().length);
-       ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_immediate_singleton.getInstanceName());
-       assertNotNull("Check that a FooService from " + 
ci_immediate_singleton.getInstanceName() + " is available",ref);
-       FooService fs = (FooService) getServiceObject(ref);
-       assertTrue("Check the FooService invocation", fs.foo());
-       assertEquals("Check the creation of 1 object", 1, 
((PrimitiveInstanceDescription) 
immeArchSing.getInstanceDescription()).getCreatedObjects().length);
+        assertEquals("Check that one object is created ", 1, 
((PrimitiveInstanceDescription) 
immeArchSing.getInstanceDescription()).getCreatedObjects().length);
+        ServiceReference ref = 
helper.getServiceReferenceByName(FooService.class.getName(), 
ci_immediate_singleton.getInstanceName());
+        assertNotNull("Check that a FooService from " + 
ci_immediate_singleton.getInstanceName() + " is available",ref);
+        FooService fs = (FooService) getServiceObject(ref);
+        assertTrue("Check the FooService invocation", fs.foo());
+        assertEquals("Check the creation of 1 object", 1, 
((PrimitiveInstanceDescription) 
immeArchSing.getInstanceDescription()).getCreatedObjects().length);
     }
 
     /**
@@ -212,7 +212,7 @@ public class POJOCreation extends OSGiTe
         // Only one object as the getService method is called only once 
(service factory) despite the policy="method".
         assertEquals("Check the creation of 1 object",1, 
((PrimitiveInstanceDescription) 
lazzyArchSevM.getInstanceDescription()).getCreatedObjects().length);
     }
-    
+
     /**
      * Test a custom constructor.
      * Not manipulated.
@@ -224,7 +224,7 @@ public class POJOCreation extends OSGiTe
         assertEquals("Check foo", "foo", props.get("foo"));
         assertEquals("Check context", getContext(), props.get("context"));
     }
-    
+
     public void testSuperCall() {
         try {
             
helper.createComponentInstance("org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructor");
@@ -232,7 +232,7 @@ public class POJOCreation extends OSGiTe
             fail(e.getMessage());
         }
     }
-    
+
     public void testSuperCallWithNew() {
         try {
             
helper.createComponentInstance("org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructorWithNew");
@@ -240,7 +240,15 @@ public class POJOCreation extends OSGiTe
             fail(e.getMessage());
         }
     }
-    
+
+    public void testSuperSuperCallWithNew() {
+        try {
+            
helper.createComponentInstance("org.apache.felix.ipojo.test.scenarios.component.CallSuperSuperConstructorWithNew");
+        } catch (Throwable e) {
+            fail(e.getMessage());
+        }
+    }
+
     public void testSuperCallWithBC() {
         try {
             
helper.createComponentInstance("org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructorWithBC");
@@ -248,7 +256,7 @@ public class POJOCreation extends OSGiTe
             fail(e.getMessage());
         }
     }
-    
-    
+
+
 
 }
\ No newline at end of file

Modified: 
felix/trunk/ipojo/tests/manipulator/creation/src/main/resources/metadata.xml
URL: 
http://svn.apache.org/viewvc/felix/trunk/ipojo/tests/manipulator/creation/src/main/resources/metadata.xml?rev=1082610&r1=1082609&r2=1082610&view=diff
==============================================================================
--- 
felix/trunk/ipojo/tests/manipulator/creation/src/main/resources/metadata.xml 
(original)
+++ 
felix/trunk/ipojo/tests/manipulator/creation/src/main/resources/metadata.xml 
Thu Mar 17 17:54:52 2011
@@ -3,72 +3,73 @@
     xsi:schemaLocation="org.apache.felix.ipojo 
http://felix.apache.org/ipojo/schemas/SNAPSHOT/core.xsd";
     xmlns="org.apache.felix.ipojo"
 >
-       <!-- Simple provider  used for manipulation analysis -->
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-FooProviderType-1" 
architecture="true">
-               <provides />
-       </component>
-       
-       <!-- Non lazzy service provider, to check instantiation -->
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-ImmediateFooProviderType" 
immediate="true"
-               architecture="true">
-               <provides />
-       </component>
-       
-       <!-- Type checking different creation policy -->
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-FooProviderType-1-Sing" 
factory-method="singleton"
-               architecture="true">
-               <provides />
-       </component>
-       
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-FooProviderType-1-Sev" 
factory-method="several"
-               architecture="true">
-               <provides />
-       </component>
-       
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-FooProviderType-1-SingM" 
factory-method="singleton"
-               architecture="true">
-               <provides/>
-       </component>
-       
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-FooProviderType-1-SevM" 
factory-method="several"
-               architecture="true">
-               <provides/>
-       </component>
-       
-       <component
-               
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
-               name="ManipulationCreation-ImmediateFooProviderTypeSingleton" 
immediate="true"
-               factory-method="singleton" architecture="true">
-               <provides />
-       </component>
-       
-       
-       <!-- Try calling super constructors -->
-        <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructor"
 immediate="true"/>
-     <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructorWithNew"
 immediate="true"/>
-        <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructorWithBC"
 immediate="true"/>
-        
-        <!--  Several constructors -->
-        <component 
classname="org.apache.felix.ipojo.test.scenarios.component.SeveralConstructors">
-               <provides/>
-        </component>
-        <!--  No Empty constructor -->
-        <component 
classname="org.apache.felix.ipojo.test.scenarios.component.NoEmptyConstructor">
-               <provides/>
-        </component>
-        <component 
classname="org.apache.felix.ipojo.test.scenarios.component.NoEmptyConstructorWithParentClass">
-               <provides/>
-        </component>
+  <!-- Simple provider  used for manipulation analysis -->
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-FooProviderType-1" architecture="true">
+    <provides />
+  </component>
+
+  <!-- Non lazzy service provider, to check instantiation -->
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-ImmediateFooProviderType" immediate="true"
+    architecture="true">
+    <provides />
+  </component>
+
+  <!-- Type checking different creation policy -->
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-FooProviderType-1-Sing" 
factory-method="singleton"
+    architecture="true">
+    <provides />
+  </component>
+
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-FooProviderType-1-Sev" factory-method="several"
+    architecture="true">
+    <provides />
+  </component>
+
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-FooProviderType-1-SingM" 
factory-method="singleton"
+    architecture="true">
+    <provides/>
+  </component>
+
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-FooProviderType-1-SevM" factory-method="several"
+    architecture="true">
+    <provides/>
+  </component>
+
+  <component
+    
classname="org.apache.felix.ipojo.test.scenarios.component.FooProviderType1"
+    name="ManipulationCreation-ImmediateFooProviderTypeSingleton" 
immediate="true"
+    factory-method="singleton" architecture="true">
+    <provides />
+  </component>
+
+
+  <!-- Try calling super constructors -->
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructor"
 immediate="true"/>
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructorWithNew"
 immediate="true"/>
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperConstructorWithBC"
 immediate="true"/>
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.CallSuperSuperConstructorWithNew"
 immediate="true"/>
+
+   <!--  Several constructors -->
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.SeveralConstructors">
+     <provides/>
+   </component>
+   <!--  No Empty constructor -->
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.NoEmptyConstructor">
+     <provides/>
+   </component>
+   <component 
classname="org.apache.felix.ipojo.test.scenarios.component.NoEmptyConstructorWithParentClass">
+     <provides/>
+   </component>
 </ipojo>


Reply via email to