You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by pd...@apache.org on 2015/11/04 21:53:01 UTC
svn commit: r1712643 - in /felix/sandbox/pderop/dependencymanager.ds:
org.apache.felix.dependencymanager.ds.itest/resource/
org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/
org.apache.felix.dependencymanager.ds.itest/sr...
Author: pderop
Date: Wed Nov 4 20:53:00 2015
New Revision: 1712643
URL: http://svn.apache.org/viewvc?rev=1712643&view=rev
Log:
Keep the code up-to-date with the felix-trunk version.
Added:
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/MutatingServiceConsumer.java
Modified:
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/resource/integration_test_circular.xml
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/ComponentConcurrencyTest.java
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/Felix4984Test.java
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/AFactory.java
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/CFactory.java
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds/src/org/apache/felix/scr/impl/ScrCommand.java
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/resource/integration_test_circular.xml
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/resource/integration_test_circular.xml?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
Binary files - no diff available.
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java Wed Nov 4 20:53:00 2015
@@ -279,6 +279,34 @@ public class CircularReferenceTest exten
assertEquals( 1, b.getAs().size() );
}
+ /**
+ * A > 1.1 > B > 0..n > A Both should start (B first) and both should have references
+ * @throws InvalidSyntaxException
+ */
+ @Test
+ public void test_A11_immediate_B0n_delayed_B_first() throws InvalidSyntaxException
+ {
+ String componentNameB = "8.B.0.n.dynamic";
+ final ComponentConfigurationDTO componentB = findComponentConfigurationByName( componentNameB, ComponentConfigurationDTO.ACTIVE );
+ ServiceReference[] serviceReferencesB = bundleContext.getServiceReferences( B.class.getName(), "(service.pid=" + componentNameB + ")" );
+ TestCase.assertEquals( 1, serviceReferencesB.length );
+ ServiceReference<B> serviceReferenceB = serviceReferencesB[0];
+ B b = bundleContext.getService( serviceReferenceB );
+
+ String componentNameA = "8.A.1.1.static";
+ ComponentConfigurationDTO componentA = findComponentConfigurationByName( componentNameA, ComponentConfigurationDTO.SATISFIED );
+ ServiceReference[] serviceReferencesA = bundleContext.getServiceReferences( A.class.getName(), "(service.pid=" + componentNameA + ")" );
+ TestCase.assertEquals( 1, serviceReferencesA.length );
+ ServiceReference<A> serviceReferenceA = serviceReferencesA[0];
+ A a = bundleContext.getService( serviceReferenceA );
+ assertNotNull( a );
+ assertEquals( 1, a.getBs().size());
+ //test currently does not show desired result.
+// assertEquals( 1, b.getAs().size() );
+// assertNotNull( b.getAs().get(0) );
+
+ }
+
private void assertABoundToOneB(A a) {
if (a.getBs().size() != 1) {
getLog().log(LogService.LOG_WARNING, "detected problem ...");
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/ComponentConcurrencyTest.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/ComponentConcurrencyTest.java?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/ComponentConcurrencyTest.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/ComponentConcurrencyTest.java Wed Nov 4 20:53:00 2015
@@ -49,7 +49,7 @@ public class ComponentConcurrencyTest ex
// Currently, this test fails with all sort of exceptions.
// for now, let's make this test fail. and post on the mailing list to see if someone could take a look.
- if (true) {
+ if (true) { // FIXME
log.log(LogService.LOG_WARNING, "ComponentConcurrencyTest is currently failing and is disabled (ask to mailing list about it).");
return;
}
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/Felix4984Test.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/Felix4984Test.java?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/Felix4984Test.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/Felix4984Test.java Wed Nov 4 20:53:00 2015
@@ -1,3 +1,21 @@
+/*
+ * 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.scr.integration;
import org.apache.felix.scr.integration.components.felix4984.A;
Added: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/MutatingServiceConsumer.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/MutatingServiceConsumer.java?rev=1712643&view=auto
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/MutatingServiceConsumer.java (added)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/MutatingServiceConsumer.java Wed Nov 4 20:53:00 2015
@@ -0,0 +1,61 @@
+/*
+ * 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.scr.integration.components;
+
+import java.util.Map;
+
+public class MutatingServiceConsumer
+{
+
+ private Boolean updatedInSet;
+ private Boolean updatedInUpdated;
+ private Boolean updatedInUnset;
+
+ void setMutatingService(MutatingService ms, Map<String, Object> props)
+ {
+ updatedInSet = props.containsKey("theValue");
+ }
+
+ void updatedMutatingService(MutatingService ms, Map<String, Object> props)
+ {
+ updatedInUpdated = props.containsKey("theValue");
+ }
+
+ void unsetMutatingService(MutatingService ms, Map<String, Object> props)
+ {
+ updatedInUnset = props.containsKey("theValue");
+ }
+
+ public Boolean isUpdatedInSet()
+ {
+ return updatedInSet;
+ }
+
+ public Boolean isUpdatedInUpdated()
+ {
+ return updatedInUpdated;
+ }
+
+ public Boolean isUpdatedInUnset()
+ {
+ return updatedInUnset;
+ }
+
+
+}
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/AFactory.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/AFactory.java?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/AFactory.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/AFactory.java Wed Nov 4 20:53:00 2015
@@ -18,7 +18,7 @@ import org.osgi.service.component.Compon
public class AFactory implements Runnable {
private ComponentFactory _aFactory;
- private Thread[] _threads = new Thread[1];
+ private Thread[] _threads = new Thread[2];
private final CountDownLatch STOPLATCH = new CountDownLatch(1); // must match number of threads (1 for now).
private volatile boolean _running;
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/CFactory.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/CFactory.java?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/CFactory.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/concurrency/CFactory.java Wed Nov 4 20:53:00 2015
@@ -18,7 +18,7 @@ import org.osgi.service.component.Compon
public class CFactory implements Runnable {
private ComponentFactory _cFactory;
- private Thread[] _threads = new Thread[1];
+ private Thread[] _threads = new Thread[2];
private final CountDownLatch STOPLATCH = new CountDownLatch(1); // must match number of threads (1 for now).
private volatile boolean _running;
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds/src/org/apache/felix/scr/impl/ScrCommand.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds/src/org/apache/felix/scr/impl/ScrCommand.java?rev=1712643&r1=1712642&r2=1712643&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds/src/org/apache/felix/scr/impl/ScrCommand.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds/src/org/apache/felix/scr/impl/ScrCommand.java Wed Nov 4 20:53:00 2015
@@ -313,6 +313,8 @@ public class ScrCommand implements ScrIn
out.println( "Component Description:");
out.print( " Name: " );
out.println( component.name );
+ out.print( " Implementation Class: " );
+ out.println( component.implementationClass );
out.print( " Default State: " );
out.println( component.defaultEnabled ? "enabled" : "disabled" );
out.print( " Activation: " );