You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cl...@apache.org on 2013/09/26 19:51:20 UTC
svn commit: r1526626 [2/3] - in /felix/trunk/ipojo:
manipulator/annotations/src/main/java/org/apache/felix/ipojo/annotations/
manipulator/ipojo-ant-task/src/main/resources/META-INF/xsd/
manipulator/manipulator/src/main/java/org/apache/felix/ipojo/manip...
Copied: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/main/resources/metadata.xml (from r1526161, felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/main/resources/metadata.xml)
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/main/resources/metadata.xml?p2=felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/main/resources/metadata.xml&p1=felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/main/resources/metadata.xml&r1=1526161&r2=1526626&rev=1526626&view=diff
==============================================================================
--- felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/main/resources/metadata.xml (original)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/main/resources/metadata.xml Thu Sep 26 17:51:18 2013
@@ -18,245 +18,125 @@
-->
<ipojo
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="org.apache.felix.ipojo"
- xmlns:temp="org.apache.felix.ipojo.handler.temporal">
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-CheckServiceProvider">
- <temp:requires field="fs"/>
- <provides/>
- </component>
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-CheckServiceProviderUsingTemporal">
- <temp:temporal field="fs"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-ProxiedCheckServiceProvider">
- <temp:requires field="fs" proxy="true"/>
- <provides/>
- </component>
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-ProxiedCheckServiceProviderUsingTemporal">
- <temp:temporal field="fs" proxy="true"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-CheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300"/>
- <provides/>
- </component>
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-CheckServiceProviderTimeoutUsingTemporal">
- <temp:temporal field="fs" timeout="300"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-ProxiedCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" timeout="300"/>
- <provides/>
- </component>
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-ProxiedCheckServiceProviderTimeoutUsingTemporal">
- <temp:temporal field="fs" proxy="true" timeout="300"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-MultipleCheckServiceProvider">
- <temp:requires field="fs" id="foo"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-ColCheckServiceProvider">
- <temp:requires field="fs" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-ProxiedColCheckServiceProvider">
- <temp:requires field="fs" proxy="true" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.FooProvider" name="TEMPORAL-FooProvider">
- <provides/>
- </component>
-
- <!-- Dependencies using nullables -->
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-NullableMultipleCheckServiceProvider">
- <temp:requires field="fs" onTimeout="nullable"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-NullableColCheckServiceProvider">
- <temp:requires field="fs" onTimeout="nullable" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-NullableProxiedColCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="nullable" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-NullableCheckServiceProvider">
- <temp:requires field="fs" onTimeout="nullable"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-NullableProxiedCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="nullable"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-NullableCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="nullable"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-NullableProxiedCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" onTimeout="nullable" timeout="300"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-NullableMultipleCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="nullable"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-NullableColCheckServiceProviderTimeout">
- <temp:requires field="fs" onTimeout="nullable" timeout="300" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-NullableProxiedColCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" onTimeout="nullable" timeout="300" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <!-- Dependencies using default implementation -->
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-DIMultipleCheckServiceProvider">
- <temp:requires field="fs" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-DIColCheckServiceProvider">
- <temp:requires field="fs" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-DIProxiedColCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-DICheckServiceProvider">
- <temp:requires field="fs" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-DIProxiedCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-DICheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-DIProxiedCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" timeout="300" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-DIMultipleCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-DIColCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-DIProxiedColCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" timeout="300" onTimeout="org.apache.felix.ipojo.handler.temporal.components.NullableFooProvider" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <!-- Dependencies using null -->
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-NullMultipleCheckServiceProvider">
- <temp:requires field="fs" onTimeout="null"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-NullColCheckServiceProvider">
- <temp:requires field="fs" onTimeout="null" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-NullProxiedColCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="null" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-NullCheckServiceProvider">
- <temp:requires field="fs" onTimeout="null"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-NullProxiedCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="null"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CheckServiceProvider" name="TEMPORAL-NullCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="null"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCheckServiceProvider" name="TEMPORAL-NullProxiedCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" timeout="300" onTimeout="null"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-NullMultipleCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="null"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-NullColCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="null" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-NullProxiedColCheckServiceProviderTimeout">
- <temp:requires field="fs" proxy="true" timeout="300" onTimeout="null" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <!-- Dependencies using empty arrays -->
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-EmptyMultipleCheckServiceProvider">
- <temp:requires field="fs" onTimeout="empty-array"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-EmptyColCheckServiceProvider">
- <temp:requires field="fs" onTimeout="empty" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-EmptyProxiedColCheckServiceProvider">
- <temp:requires field="fs" proxy="true" onTimeout="empty" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.MultipleCheckServiceProvider" name="TEMPORAL-EmptyMultipleCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="empty-array"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.CollectionCheckServiceProvider" name="TEMPORAL-EmptyColCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" onTimeout="empty" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
-
- <component classname="org.apache.felix.ipojo.handler.temporal.components.proxy.HelpedCollectionCheckServiceProvider" name="TEMPORAL-EmptyProxiedColCheckServiceProviderTimeout">
- <temp:requires field="fs" timeout="300" proxy="true" onTimeout="empty" specification="org.apache.felix.ipojo.handler.temporal.services.FooService"/>
- <provides/>
- </component>
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="org.apache.felix.ipojo">
+
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="CheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300"/>
+ <provides/>
+ </component>
+
+
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.FooProvider"
+ name="FooProvider">
+ <provides/>
+ </component>
+
+ <!-- Dependencies using nullables (scalar dependency only) -->
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="NullableCheckServiceProvider">
+ <requires field="fs" optional="true"/>
+ <provides/>
+ </component>
+
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="NullableCheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300"/>
+ <provides/>
+ </component>
+
+
+ <!-- Dependencies using default implementation (scalar dependency only)-->
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="DICheckServiceProvider">
+ <requires field="fs" optional="true"
+ default-implementation="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.NullableFooProvider"/>
+ <provides/>
+ </component>
+
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="DICheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300"
+ default-implementation="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.NullableFooProvider"/>
+ <provides/>
+ </component>
+
+
+ <!-- Dependencies using null (nullable = false, scalar dependency only) -->
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="NullCheckServiceProvider">
+ <requires field="fs" optional="true" nullable="false"/>
+ <provides/>
+ </component>
+
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="NullCheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300" nullable="false"/>
+ <provides/>
+ </component>
+
+ <!-- Dependencies using empty arrays or collections (aggregate dependency only), it's the default policy. -->
+ <component
+ classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.MultipleCheckServiceProvider"
+ name="EmptyMultipleCheckServiceProvider">
+ <requires field="fs" optional="true"/>
+ <provides/>
+ </component>
+
+ <component
+ classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CollectionCheckServiceProvider"
+ name="EmptyColCheckServiceProvider">
+ <requires field="fs" optional="true"
+ specification="org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.FooService"/>
+ <provides/>
+ </component>
+
+ <component
+ classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.MultipleCheckServiceProvider"
+ name="EmptyMultipleCheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300"/>
+ <provides/>
+ </component>
+
+ <component
+ classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CollectionCheckServiceProvider"
+ name="EmptyColCheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300"
+ specification="org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.FooService"/>
+ <provides/>
+ </component>
+
+ <!-- Dependencies using exceptions (aggregate and scalar) -->
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="ExceptionCheckServiceProvider">
+ <requires field="fs" optional="true" exception="java.lang.RuntimeException"/>
+ <provides/>
+ </component>
+
+ <component classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CheckServiceProvider"
+ name="ExceptionCheckServiceProviderTimeout">
+ <requires field="fs" optional="true" timeout="300" exception="java.lang.RuntimeException"/>
+ <provides/>
+ </component>
+
+ <component
+ classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CollectionCheckServiceProvider"
+ name="ExceptionColCheckServiceProvider">
+ <requires field="fs" optional="true"
+ exception="java.lang.RuntimeException"
+ specification="org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.FooService"/>
+ <provides/>
+ </component>
+
+ <component
+ classname="org.apache.felix.ipojo.runtime.test.dependencies.timeout.components.CollectionCheckServiceProvider"
+ name="ExceptionColCheckServiceProviderTimeout">
+ <requires field="fs" optional="true"
+ exception="java.lang.RuntimeException"
+ timeout="300"
+ specification="org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.FooService"/>
+ <provides/>
+ </component>
+
</ipojo>
\ No newline at end of file
Added: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/Common.java
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/Common.java?rev=1526626&view=auto
==============================================================================
--- felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/Common.java (added)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/Common.java Thu Sep 26 17:51:18 2013
@@ -0,0 +1,31 @@
+/*
+ * 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
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.felix.ipojo.runtime.test.dependencies.timeout;
+
+import org.ow2.chameleon.testing.helpers.BaseTest;
+
+/**
+ * Bootstrap the test from this project
+ */
+public class Common extends BaseTest {
+
+
+
+}
Added: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DefaultImplementationTest.java
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DefaultImplementationTest.java?rev=1526626&view=auto
==============================================================================
--- felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DefaultImplementationTest.java (added)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DefaultImplementationTest.java Thu Sep 26 17:51:18 2013
@@ -0,0 +1,105 @@
+/*
+ * 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
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.felix.ipojo.runtime.test.dependencies.timeout;
+
+import org.apache.felix.ipojo.ComponentInstance;
+import org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.*;
+import org.junit.Test;
+import org.osgi.framework.ServiceReference;
+
+import static org.junit.Assert.*;
+
+public class DefaultImplementationTest extends Common {
+
+ @Test
+ public void testDefaultImplementationTimeout() {
+ String prov = "provider";
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
+ String un = "under-1";
+ ComponentInstance under = ipojoHelper.createComponentInstance("DICheckServiceProvider", un);
+
+ ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
+ assertNotNull("Check foo availability", ref_fs);
+
+ ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
+ assertNotNull("Check cs availability", ref_cs);
+
+ CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
+ assertTrue("Check invocation", cs.check());
+
+ // Stop the provider.
+ provider.stop();
+ ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
+ assertNotNull("Check cs availability - 2", ref_cs);
+ cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
+ boolean res = false;
+ try {
+ res = cs.check();
+ } catch (RuntimeException e) {
+ fail("A nullable was expected ...");
+ }
+ assertFalse("Check nullable", res);
+
+ provider.stop();
+ provider.dispose();
+ under.stop();
+ under.dispose();
+ }
+
+ @Test
+ public void testDelayTimeout() {
+ String prov = "provider";
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
+ String un = "under-1";
+ ComponentInstance under = ipojoHelper.createComponentInstance("DICheckServiceProviderTimeout", un);
+
+ ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
+ assertNotNull("Check foo availability", ref_fs);
+
+ ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
+ assertNotNull("Check cs availability", ref_cs);
+
+ CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
+ assertTrue("Check invocation", cs.check());
+
+ // Stop the provider.
+ provider.stop();
+ ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
+ assertNotNull("Check cs availability - 2", ref_cs);
+ long begin = System.currentTimeMillis();
+ DelayedProvider dp = new DelayedProvider(provider, 200);
+ dp.start();
+ cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
+ assertTrue("Check invocation - 2", cs.check());
+ long end = System.currentTimeMillis();
+
+ assertTrue("Assert delay", (end - begin) >= 200);
+
+ ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
+ assertNotNull("Check cs availability - 3", ref_cs);
+ cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
+ assertTrue("Check invocation - 3", cs.check());
+
+ provider.stop();
+ provider.dispose();
+ under.stop();
+ under.dispose();
+ }
+}
Copied: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayTest.java (from r1526161, felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/DelayTest.java)
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayTest.java?p2=felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayTest.java&p1=felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/DelayTest.java&r1=1526161&r2=1526626&rev=1526626&view=diff
==============================================================================
--- felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/DelayTest.java (original)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayTest.java Thu Sep 26 17:51:18 2013
@@ -16,11 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.felix.ipojo.handler.temporal.test;
+
+package org.apache.felix.ipojo.runtime.test.dependencies.timeout;
import org.apache.felix.ipojo.ComponentInstance;
-import org.apache.felix.ipojo.handler.temporal.services.CheckService;
-import org.apache.felix.ipojo.handler.temporal.services.FooService;
+import org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.*;
import org.junit.Test;
import org.osgi.framework.ServiceReference;
@@ -29,169 +29,11 @@ import static org.junit.Assert.*;
public class DelayTest extends Common {
@Test
- public void testDelay() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-CheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- assertNull("No FooService", osgiHelper.getServiceReference(FooService.class.getName(), null));
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider, 200);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
-
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
-
- assertTrue("Assert delay (" + (end - begin) + ")", (end - begin) >= 200);
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testDelayWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-ProxiedCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider, 200);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
-
- assertTrue("Assert delay", (end - begin) >= 200);
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testTimeout() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-CheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 4000);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- try {
- cs.check();
- } catch (RuntimeException e) {
- // OK
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- fail("Timeout expected");
- }
-
- @Test
- public void testTimeoutWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-ProxiedCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 4000);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- try {
- cs.check();
- } catch (RuntimeException e) {
- // OK
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- fail("Timeout expected");
- }
-
- @Test
public void testDelayTimeout() {
String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-CheckServiceProviderTimeout", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("CheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -226,90 +68,14 @@ public class DelayTest extends Common {
under.dispose();
}
- @Test
- public void testDelayTimeoutWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-ProxiedCheckServiceProviderTimeout", un);
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider, 200);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
-
- assertTrue("Assert delay", (end - begin) >= 200);
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- }
@Test
- public void testSetTimeout() {
+ public void testTimeoutWithException() {
String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-CheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 400);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- try {
- cs.check();
- } catch (RuntimeException e) {
- // OK
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- fail("Timeout expected");
- }
-
- @Test
- public void testSetTimeoutWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-ProxiedCheckServiceProviderTimeout", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("ExceptionCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -345,11 +111,12 @@ public class DelayTest extends Common {
@Test
public void testDelayOnMultipleDependency() {
String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider1 = ipojoHelper.createComponentInstance("FooProvider", prov);
String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
+ ComponentInstance provider2 = ipojoHelper.createComponentInstance("FooProvider", prov2);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-MultipleCheckServiceProvider", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("EmptyMultipleCheckServiceProviderTimeout",
+ un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -395,61 +162,11 @@ public class DelayTest extends Common {
@Test
public void testDelayOnCollectionDependency() {
String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-ColCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the providers.
- provider1.stop();
- provider2.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider1, 1500);
- DelayedProvider dp2 = new DelayedProvider(provider2, 100);
- dp.start();
- dp2.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
- System.out.println("delay = " + (end - begin));
- assertTrue("Assert min delay", (end - begin) >= 100);
- assertTrue("Assert max delay", (end - begin) <= 1000);
- dp.stop();
- dp2.stop();
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider1.stop();
- provider2.stop();
- provider1.dispose();
- provider2.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testDelayOnProxiedCollectionDependency() {
- String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider1 = ipojoHelper.createComponentInstance("FooProvider", prov);
String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
+ ComponentInstance provider2 = ipojoHelper.createComponentInstance("FooProvider", prov2);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-ProxiedColCheckServiceProvider", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("EmptyColCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
Added: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayedProvider.java
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayedProvider.java?rev=1526626&view=auto
==============================================================================
--- felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayedProvider.java (added)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/DelayedProvider.java Thu Sep 26 17:51:18 2013
@@ -0,0 +1,72 @@
+/*
+ * 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
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.felix.ipojo.runtime.test.dependencies.timeout;
+
+import org.apache.felix.ipojo.ComponentInstance;
+
+public class DelayedProvider implements Runnable {
+
+
+ public static final long DELAY = 1000;
+ ComponentInstance instance;
+ long delay = DELAY;
+ Thread thread;
+
+ public DelayedProvider(ComponentInstance ci) {
+ instance =ci;
+ }
+
+ public DelayedProvider(ComponentInstance ci, long time) {
+ instance =ci;
+ delay = time;
+ }
+
+ public void start() {
+ thread = new Thread(this);
+ thread.start();
+ }
+
+ public void stop() {
+ if (thread != null) {
+ thread.interrupt();
+ }
+ }
+
+ public void run() {
+ System.out.println("Start sleeping for " + delay);
+ long begin = System.currentTimeMillis();
+ try {
+ Thread.sleep(delay);
+ long end = System.currentTimeMillis();
+ if (end - begin < delay) {
+ // Wait for the remaining time
+ Thread.sleep(delay - (end - begin));
+ }
+ } catch (InterruptedException e) {
+ System.out.println("Interrupted ...");
+ return;
+ }
+ System.out.println("Wakeup");
+ thread = null;
+ instance.start();
+ System.out.println(instance.getInstanceName() + " started");
+ }
+
+}
Copied: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/EmptyTest.java (from r1526161, felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/EmptyTest.java)
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/EmptyTest.java?p2=felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/EmptyTest.java&p1=felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/EmptyTest.java&r1=1526161&r2=1526626&rev=1526626&view=diff
==============================================================================
--- felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/EmptyTest.java (original)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/EmptyTest.java Thu Sep 26 17:51:18 2013
@@ -16,11 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.felix.ipojo.handler.temporal.test;
+
+package org.apache.felix.ipojo.runtime.test.dependencies.timeout;
import org.apache.felix.ipojo.ComponentInstance;
-import org.apache.felix.ipojo.handler.temporal.services.CheckService;
-import org.apache.felix.ipojo.handler.temporal.services.FooService;
+import org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.*;
import org.junit.Test;
import org.osgi.framework.ServiceReference;
@@ -31,9 +31,10 @@ public class EmptyTest extends Common {
@Test
public void testEmptyArrayTimeout() {
String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-EmptyMultipleCheckServiceProviderTimeout", un);
+ ComponentInstance under = ipojoHelper
+ .createComponentInstance("EmptyMultipleCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -64,54 +65,15 @@ public class EmptyTest extends Common {
provider.dispose();
under.stop();
under.dispose();
- return;
}
@Test
public void testEmptyCollectionTimeout() {
String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-EmptyColCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 400);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- boolean res = false;
- try {
- res = cs.check();
- } catch (RuntimeException e) {
- fail("An empty array was expected ...");
- }
- assertTrue("Check empty array", res);
-
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- @Test
- public void testEmptyProxiedCollectionTimeout() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-EmptyProxiedColCheckServiceProviderTimeout", un);
+ ComponentInstance under = ipojoHelper
+ .createComponentInstance("EmptyColCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -142,17 +104,16 @@ public class EmptyTest extends Common {
provider.dispose();
under.stop();
under.dispose();
- return;
}
@Test
public void testDelayOnMultipleDependency() {
String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider1 = ipojoHelper.createComponentInstance("FooProvider", prov);
String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
+ ComponentInstance provider2 = ipojoHelper.createComponentInstance("FooProvider", prov2);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-EmptyMultipleCheckServiceProvider", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("EmptyMultipleCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -200,63 +161,11 @@ public class EmptyTest extends Common {
@Test
public void testDelayOnCollectionDependency() {
String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-EmptyColCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the providers.
- provider1.stop();
- provider2.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider1, 1500);
- DelayedProvider dp2 = new DelayedProvider(provider2, 100);
- dp.start();
- dp2.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
- System.out.println("delay = " + (end - begin));
- assertTrue("Assert min delay", (end - begin) >= 100);
- assertTrue("Assert max delay", (end - begin) <= 1000);
- dp.stop();
- dp2.stop();
-
- provider1.stop();
- provider2.stop();
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
-
- assertTrue("Check invocation - 3", cs.check());
-
- provider1.dispose();
- provider2.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testDelayOnProxiedCollectionDependency() {
- String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider1 = ipojoHelper.createComponentInstance("FooProvider", prov);
String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
+ ComponentInstance provider2 = ipojoHelper.createComponentInstance("FooProvider", prov2);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-EmptyProxiedColCheckServiceProvider", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("EmptyColCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
Copied: felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/NullTest.java (from r1526161, felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/NullTest.java)
URL: http://svn.apache.org/viewvc/felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/NullTest.java?p2=felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/NullTest.java&p1=felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/NullTest.java&r1=1526161&r2=1526626&rev=1526626&view=diff
==============================================================================
--- felix/trunk/ipojo/handler/temporal/temporal-dependency-handler-it/src/it/temporal-it/src/test/java/org/apache/felix/ipojo/handler/temporal/test/NullTest.java (original)
+++ felix/trunk/ipojo/runtime/core-it/ipojo-core-service-dependency-timeout-test/src/test/java/org/apache/felix/ipojo/runtime/test/dependencies/timeout/NullTest.java Thu Sep 26 17:51:18 2013
@@ -16,11 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.felix.ipojo.handler.temporal.test;
+
+package org.apache.felix.ipojo.runtime.test.dependencies.timeout;
import org.apache.felix.ipojo.ComponentInstance;
-import org.apache.felix.ipojo.handler.temporal.services.CheckService;
-import org.apache.felix.ipojo.handler.temporal.services.FooService;
+import org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.CheckService;
+import org.apache.felix.ipojo.runtime.test.dependencies.timeout.services.FooService;
import org.junit.Test;
import org.osgi.framework.ServiceReference;
@@ -29,87 +30,11 @@ import static org.junit.Assert.*;
public class NullTest extends Common {
@Test
- public void testNull() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider, 200);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
-
- assertTrue("Assert delay", (end - begin) >= 200);
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testNullTimeout() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- boolean res = false;
- try {
- res = cs.check();
- } catch (RuntimeException e) {
- fail("A null was expected ...");
- }
- assertFalse("Check null", res); // Return false when the foo service is null.
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- @Test
public void testDelayTimeout() {
String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
+ ComponentInstance provider = ipojoHelper.createComponentInstance("FooProvider", prov);
String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullCheckServiceProviderTimeout", un);
+ ComponentInstance under = ipojoHelper.createComponentInstance("NullCheckServiceProviderTimeout", un);
ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
assertNotNull("Check foo availability", ref_fs);
@@ -143,394 +68,4 @@ public class NullTest extends Common {
under.stop();
under.dispose();
}
-
- @Test
- public void testNullWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullProxiedCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider, 200);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
-
- assertTrue("Assert delay", (end - begin) >= 200);
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testNullTimeoutWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullProxiedCheckServiceProvider", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- boolean res = false;
- try {
- res = cs.check();
- } catch (RuntimeException e) {
- fail("A null was expected ...");
- }
- assertFalse("Check null", res); // Return false when the foo service is null.
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- @Test
- public void testDelayTimeoutWithProxy() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullProxiedCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider, 200);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
-
- assertTrue("Assert delay", (end - begin) >= 200);
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 3", cs.check());
-
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testNullMultipleTimeout() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullMultipleCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 400);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- boolean res = false;
- try {
- res = cs.check();
- } catch (RuntimeException e) {
- fail("A null was expected ...");
- }
- assertTrue("Check nullable", res);
-
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- @Test
- public void testNullCollectionTimeout() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullColCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 400);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- boolean res = false;
- try {
- res = cs.check();
- } catch (RuntimeException e) {
- fail("A null was expected ...");
- }
- assertTrue("Check nullable", res);
-
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- @Test
- public void testNullProxiedCollectionTimeout() {
- String prov = "provider";
- ComponentInstance provider = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullProxiedColCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the provider.
- provider.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- DelayedProvider dp = new DelayedProvider(provider, 400);
- dp.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- boolean res = false;
- try {
- res = cs.check();
- } catch (RuntimeException e) {
- fail("A null was expected ... : " + e.getMessage());
- e.printStackTrace();
- }
- assertTrue("Check nullable", res);
-
- dp.stop();
- provider.stop();
- provider.dispose();
- under.stop();
- under.dispose();
- return;
- }
-
- @Test
- public void testDelayOnMultipleDependency() {
- String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullableMultipleCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the providers.
- provider1.stop();
- provider2.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider1, 1500);
- DelayedProvider dp2 = new DelayedProvider(provider2, 100);
- dp.start();
- dp2.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
- System.out.println("delay = " + (end - begin));
- assertTrue("Assert min delay", (end - begin) >= 100);
- assertTrue("Assert max delay", (end - begin) <= 1000);
- dp.stop();
- dp2.stop();
-
- provider1.stop();
- provider2.stop();
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
-
- assertFalse("Check invocation - 3", cs.check()); // Will return false as the contained nullable will return false to the foo method.
-
- provider1.dispose();
- provider2.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testDelayOnCollectionDependency() {
- String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullableColCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the providers.
- provider1.stop();
- provider2.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider1, 1500);
- DelayedProvider dp2 = new DelayedProvider(provider2, 100);
- dp.start();
- dp2.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
- System.out.println("delay = " + (end - begin));
- assertTrue("Assert min delay", (end - begin) >= 100);
- assertTrue("Assert max delay", (end - begin) <= 1000);
- dp.stop();
- dp2.stop();
-
- provider1.stop();
- provider2.stop();
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
-
- assertFalse("Check invocation - 3", cs.check()); // Will return false as the contained nullable will return false to the foo method.
-
- provider1.dispose();
- provider2.dispose();
- under.stop();
- under.dispose();
- }
-
- @Test
- public void testDelayOnProxiedCollectionDependency() {
- String prov = "provider";
- ComponentInstance provider1 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov);
- String prov2 = "provider2";
- ComponentInstance provider2 = ipojoHelper.createComponentInstance("TEMPORAL-FooProvider", prov2);
- String un = "under-1";
- ComponentInstance under = ipojoHelper.createComponentInstance("TEMPORAL-NullableProxiedColCheckServiceProviderTimeout", un);
-
- ServiceReference ref_fs = ipojoHelper.getServiceReferenceByName(FooService.class.getName(), prov);
- assertNotNull("Check foo availability", ref_fs);
-
- ServiceReference ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability", ref_cs);
-
- CheckService cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation", cs.check());
-
- // Stop the providers.
- provider1.stop();
- provider2.stop();
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 2", ref_cs);
- long begin = System.currentTimeMillis();
- DelayedProvider dp = new DelayedProvider(provider1, 1500);
- DelayedProvider dp2 = new DelayedProvider(provider2, 100);
- dp.start();
- dp2.start();
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
- assertTrue("Check invocation - 2", cs.check());
- long end = System.currentTimeMillis();
- System.out.println("delay = " + (end - begin));
- assertTrue("Assert min delay", (end - begin) >= 100);
- assertTrue("Assert max delay", (end - begin) <= 1000);
- dp.stop();
- dp2.stop();
-
- provider1.stop();
- provider2.stop();
-
- ref_cs = ipojoHelper.getServiceReferenceByName(CheckService.class.getName(), un);
- assertNotNull("Check cs availability - 3", ref_cs);
- cs = (CheckService) osgiHelper.getServiceObject(ref_cs);
-
- assertFalse("Check invocation - 3", cs.check()); // Will return false as the contained nullable will return false to the foo method.
-
- provider1.dispose();
- provider2.dispose();
- under.stop();
- under.dispose();
- }
}