Commit composite service providing test suite
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@654249 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/ipojo/tests/tests.composite.service.providing/src/main/resources/metadata.xml b/ipojo/tests/tests.composite.service.providing/src/main/resources/metadata.xml
new file mode 100644
index 0000000..e544b1c
--- /dev/null
+++ b/ipojo/tests/tests.composite.service.providing/src/main/resources/metadata.xml
@@ -0,0 +1,150 @@
+<ipojo>
+ <composite name="composite.test.3" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.BazService"
+ aggregate="true" filter="(factory.name=BazProviderType)" />
+ <provides action="export"
+ specification="org.apache.felix.ipojo.test.composite.service.BazService" />
+ </composite>
+
+ <composite name="composite.test.2" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.CheckService"
+ filter="(factory.name=Baz2CheckProvider)" />
+ <provides action="export"
+ specification="org.apache.felix.ipojo.test.composite.service.CheckService" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.BazService"
+ scope="composite" />
+ </composite>
+
+ <composite name="composite.test.1" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.BazService"
+ filter="(factory.name=composite.test.3)" />
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.CheckService"
+ filter="(factory.name=composite.test.2)" />
+ <provides action="export"
+ specification="org.apache.felix.ipojo.test.composite.service.CheckService" />
+ </composite>
+
+ <composite name="composite.instantiator" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.BazService"
+ filter="(factory.name=composite.test.3)" />
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.FooService" />
+ <provides action="export"
+ specification="org.apache.felix.ipojo.test.composite.service.BazService" />
+ <provides action="export"
+ specification="org.apache.felix.ipojo.test.composite.service.FooService" />
+ </composite>
+
+ <!-- Test composition provides -->
+
+ <composite name="comp-0" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota" />
+ </composite>
+
+ <composite name="comp-1" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota">
+ <delegation method="tataInt" policy="One" />
+ <delegation method="toto1" policy="All" />
+ </provides>
+ </composite>
+
+ <composite name="comp-2" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata"
+ aggregate="true" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto"
+ aggregate="true" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota">
+ <delegation method="tataInt" policy="One" />
+ <delegation method="toto1" policy="All" />
+ </provides>
+ </composite>
+
+ <composite name="comp-3" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto"
+ optional="true" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota">
+ </provides>
+ </composite>
+
+ <composite name="comp-4" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto"
+ optional="true" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota">
+ <delegation method="tataInt" policy="One" />
+ <delegation method="toto1" policy="All" />
+ </provides>
+ </composite>
+
+ <composite name="comp-5" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata"
+ aggregate="true" />
+ <!-- <subservice action="import" specification="org.apache.felix.ipojo.test.composite.service.Toto" aggregate ="true" optional="true"/> -->
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota">
+ <delegation method="tataInt" policy="One" />
+ <delegation method="toto1" policy="All" />
+ </provides>
+ </composite>
+
+ <composite name="comp-6" architecture="true">
+ <subservice action="instantiate"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata"
+ aggregate="true" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto"
+ aggregate="true" optional="true" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto">
+ <delegation method="toto1" policy="All" />
+ </provides>
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tata">
+ <delegation method="tataInt" policy="One" />
+ </provides>
+ </composite>
+
+ <composite name="comp-7" architecture="true">
+ <instance component="tata" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota" />
+ </composite>
+
+ <composite name="comp-8" architecture="true">
+ <instance component="tata" />
+ <instance component="totoglue" />
+ <subservice action="import"
+ specification="org.apache.felix.ipojo.test.composite.service.Toto" />
+ <provides action="implement"
+ specification="org.apache.felix.ipojo.test.composite.service.Tota" />
+ </composite>
+</ipojo>