You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by cs...@apache.org on 2016/03/15 14:53:29 UTC
aries-rsa git commit: Improving InterfaceMonitorManager and test
Repository: aries-rsa
Updated Branches:
refs/heads/master 54df28a3c -> 6037e363d
Improving InterfaceMonitorManager and test
Project: http://git-wip-us.apache.org/repos/asf/aries-rsa/repo
Commit: http://git-wip-us.apache.org/repos/asf/aries-rsa/commit/6037e363
Tree: http://git-wip-us.apache.org/repos/asf/aries-rsa/tree/6037e363
Diff: http://git-wip-us.apache.org/repos/asf/aries-rsa/diff/6037e363
Branch: refs/heads/master
Commit: 6037e363d15e67fa3a0edd2c3a62b90885c61af9
Parents: 54df28a
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Tue Mar 15 14:53:21 2016 +0100
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Tue Mar 15 14:53:21 2016 +0100
----------------------------------------------------------------------
.../subscribe/InterfaceMonitorManager.java | 11 ++----
.../rsa/discovery/zookeeper/util/Utils.java | 3 ++
.../subscribe/InterfaceMonitorManagerTest.java | 39 ++++++++++----------
3 files changed, 26 insertions(+), 27 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/aries-rsa/blob/6037e363/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManager.java
----------------------------------------------------------------------
diff --git a/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManager.java b/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManager.java
index 3a02a48..857588c 100644
--- a/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManager.java
+++ b/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManager.java
@@ -76,14 +76,11 @@ public class InterfaceMonitorManager {
LOG.debug("Skipping our own EndpointListener");
return;
}
-
- LOG.info("updating EndpointListener interests: {}", endpointListener);
- if (LOG.isDebugEnabled()) {
- LOG.debug("updated EndpointListener properties: {}", getProperties(endpointListener));
- }
- for (String scope : getScopes(endpointListener)) {
+ List<String> scopes = getScopes(endpointListener);
+ LOG.debug("adding Interests: {}", scopes);
+
+ for (String scope : scopes) {
String objClass = getObjectClass(scope);
- LOG.debug("Adding interest in scope {}, objectClass {}", scope, objClass);
addInterest(endpointListener, scope, objClass);
}
}
http://git-wip-us.apache.org/repos/asf/aries-rsa/blob/6037e363/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/util/Utils.java
----------------------------------------------------------------------
diff --git a/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/util/Utils.java b/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/util/Utils.java
index 82ccb85..289ae32 100644
--- a/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/util/Utils.java
+++ b/discovery/zookeeper/src/main/java/org/apache/aries/rsa/discovery/zookeeper/util/Utils.java
@@ -42,6 +42,9 @@ public final class Utils {
*/
public static List<String> removeEmpty(List<String> strings) {
List<String> result = new ArrayList<String>();
+ if (strings == null) {
+ return result;
+ }
for (String s : strings) {
if (s != null && !s.isEmpty()) {
result.add(s);
http://git-wip-us.apache.org/repos/asf/aries-rsa/blob/6037e363/discovery/zookeeper/src/test/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManagerTest.java
----------------------------------------------------------------------
diff --git a/discovery/zookeeper/src/test/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManagerTest.java b/discovery/zookeeper/src/test/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManagerTest.java
index 49c9dad..41684eb 100644
--- a/discovery/zookeeper/src/test/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManagerTest.java
+++ b/discovery/zookeeper/src/test/java/org/apache/aries/rsa/discovery/zookeeper/subscribe/InterfaceMonitorManagerTest.java
@@ -18,19 +18,21 @@
*/
package org.apache.aries.rsa.discovery.zookeeper.subscribe;
+import static org.easymock.EasyMock.getCurrentArguments;
import static org.junit.Assert.assertEquals;
-import java.util.HashMap;
+import java.util.Collections;
+import java.util.Dictionary;
+import java.util.Hashtable;
import java.util.List;
-import java.util.Map;
-import org.apache.aries.rsa.discovery.zookeeper.subscribe.InterfaceMonitorManager;
import org.apache.zookeeper.ZooKeeper;
import org.easymock.EasyMock;
import org.easymock.IAnswer;
import org.easymock.IMocksControl;
import org.junit.Test;
import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
import org.osgi.framework.ServiceReference;
import org.osgi.service.remoteserviceadmin.EndpointListener;
@@ -40,8 +42,8 @@ public class InterfaceMonitorManagerTest {
public void testEndpointListenerTrackerCustomizer() {
IMocksControl c = EasyMock.createNiceControl();
BundleContext ctx = c.createMock(BundleContext.class);
- ServiceReference<EndpointListener> sref = createService(c);
- ServiceReference<EndpointListener> sref2 = createService(c);
+ ServiceReference<EndpointListener> sref = createService(c, "(objectClass=mine)", "mine");
+ ServiceReference<EndpointListener> sref2 = createService(c, "(objectClass=mine)", "mine");
ZooKeeper zk = c.createMock(ZooKeeper.class);
InterfaceMonitorManager eltc = new InterfaceMonitorManager(ctx, zk);
@@ -51,17 +53,17 @@ public class InterfaceMonitorManagerTest {
assertEquals(0, eltc.getEndpointListenerScopes().size());
assertEquals(0, eltc.getInterests().size());
- eltc.addInterest(sref, "(objectClass=mine)", "mine");
+ eltc.addInterest(sref);
assertScopeIncludes(sref, eltc);
assertEquals(1, eltc.getEndpointListenerScopes().size());
assertEquals(1, eltc.getInterests().size());
- eltc.addInterest(sref, "(objectClass=mine)", "mine");
+ eltc.addInterest(sref);
assertScopeIncludes(sref, eltc);
assertEquals(1, eltc.getEndpointListenerScopes().size());
assertEquals(1, eltc.getInterests().size());
- eltc.addInterest(sref2, "(objectClass=mine)", "mine");
+ eltc.addInterest(sref2);
assertScopeIncludes(sref, eltc);
assertScopeIncludes(sref2, eltc);
assertEquals(2, eltc.getEndpointListenerScopes().size());
@@ -85,26 +87,23 @@ public class InterfaceMonitorManagerTest {
}
@SuppressWarnings("unchecked")
- private ServiceReference<EndpointListener> createService(IMocksControl c) {
- final Map<String, ?> p = new HashMap<String, Object>();
+ private ServiceReference<EndpointListener> createService(IMocksControl c, String scope, String objectClass) {
ServiceReference<EndpointListener> sref = c.createMock(ServiceReference.class);
- EasyMock.expect(sref.getPropertyKeys()).andAnswer(new IAnswer<String[]>() {
- public String[] answer() throws Throwable {
- return p.keySet().toArray(new String[p.size()]);
- }
- }).anyTimes();
-
+ final Dictionary<String, String> props = new Hashtable<>();
+ props.put(EndpointListener.ENDPOINT_LISTENER_SCOPE, scope);
+ props.put(Constants.OBJECTCLASS, objectClass);
+ String[] keys = Collections.list(props.keys()).toArray(new String[]{});
+ EasyMock.expect(sref.getPropertyKeys()).andReturn(keys).anyTimes();
EasyMock.expect(sref.getProperty((String)EasyMock.anyObject())).andAnswer(new IAnswer<Object>() {
public Object answer() throws Throwable {
- String key = (String)(EasyMock.getCurrentArguments()[0]);
- return p.get(key);
+ return props.get(getCurrentArguments()[0]);
}
}).anyTimes();
return sref;
}
- private void assertScopeIncludes(ServiceReference<EndpointListener> sref, InterfaceMonitorManager eltc) {
- List<String> srefScope = eltc.getEndpointListenerScopes().get(sref);
+ private void assertScopeIncludes(ServiceReference<EndpointListener> sref, InterfaceMonitorManager imm) {
+ List<String> srefScope = imm.getEndpointListenerScopes().get(sref);
assertEquals(1, srefScope.size());
assertEquals("(objectClass=mine)", srefScope.get(0));