Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorslewis2009-03-07 06:37:30 +0000
committerslewis2009-03-07 06:37:30 +0000
commitb56afa7ffdaff2caf0856d7cc6d4a9516cdb685f (patch)
treea650a112c6ce876c637cc015e1cd65708b0e4a9f /server-side/bundles/org.eclipse.ecf.server.generic/src
parentc6d46adba3e6d184686ce717f796777b0adef931 (diff)
downloadorg.eclipse.ecf-b56afa7ffdaff2caf0856d7cc6d4a9516cdb685f.tar.gz
org.eclipse.ecf-b56afa7ffdaff2caf0856d7cc6d4a9516cdb685f.tar.xz
org.eclipse.ecf-b56afa7ffdaff2caf0856d7cc6d4a9516cdb685f.zip
Updates to address bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=267481
Diffstat (limited to 'server-side/bundles/org.eclipse.ecf.server.generic/src')
-rw-r--r--server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/internal/server/generic/Activator.java8
-rw-r--r--server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/AbstractGenericServer.java30
-rw-r--r--server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/GenericServerContainer.java52
-rw-r--r--server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/ServerManager.java6
4 files changed, 59 insertions, 37 deletions
diff --git a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/internal/server/generic/Activator.java b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/internal/server/generic/Activator.java
index 4a723a149..13a7d81eb 100644
--- a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/internal/server/generic/Activator.java
+++ b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/internal/server/generic/Activator.java
@@ -2,7 +2,7 @@ package org.eclipse.ecf.internal.server.generic;
import org.eclipse.core.runtime.*;
import org.eclipse.ecf.core.util.LogHelper;
-import org.eclipse.ecf.discovery.service.IDiscoveryService;
+import org.eclipse.ecf.discovery.IDiscoveryAdvertiser;
import org.eclipse.ecf.server.generic.ServerManager;
import org.osgi.framework.*;
import org.osgi.service.log.LogService;
@@ -40,8 +40,8 @@ public class Activator implements BundleActivator {
return (IExtensionRegistry) extensionRegistryTracker.getService();
}
- public IDiscoveryService getDiscovery() {
- return (IDiscoveryService) discoveryTracker.getService();
+ public IDiscoveryAdvertiser getDiscovery() {
+ return (IDiscoveryAdvertiser) discoveryTracker.getService();
}
public Bundle getBundle() {
@@ -74,7 +74,7 @@ public class Activator implements BundleActivator {
plugin = this;
this.extensionRegistryTracker = new ServiceTracker(ctxt, IExtensionRegistry.class.getName(), null);
this.extensionRegistryTracker.open();
- this.discoveryTracker = new ServiceTracker(ctxt, IDiscoveryService.class.getName(), null);
+ this.discoveryTracker = new ServiceTracker(ctxt, IDiscoveryAdvertiser.class.getName(), null);
this.discoveryTracker.open();
serverManager = new ServerManager();
}
diff --git a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/AbstractGenericServer.java b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/AbstractGenericServer.java
index 6dd9bff1e..721a7e031 100644
--- a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/AbstractGenericServer.java
+++ b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/AbstractGenericServer.java
@@ -3,40 +3,12 @@ package org.eclipse.ecf.server.generic;
import java.io.IOException;
import java.security.PermissionCollection;
import java.util.*;
-import org.eclipse.ecf.core.IContainerListener;
-import org.eclipse.ecf.core.events.*;
import org.eclipse.ecf.core.identity.*;
import org.eclipse.ecf.core.security.IConnectHandlerPolicy;
-import org.eclipse.ecf.core.sharedobject.ISharedObjectContainerConfig;
import org.eclipse.ecf.provider.generic.*;
public abstract class AbstractGenericServer {
- protected class GenericServerContainer extends TCPServerSOContainer {
-
- private IContainerListener departedListener = new IContainerListener() {
- public void handleEvent(IContainerEvent event) {
- if (event instanceof IContainerDisconnectedEvent) {
- IContainerDisconnectedEvent de = (IContainerDisconnectedEvent) event;
- handleDisconnect(de.getTargetID());
- } else if (event instanceof IContainerEjectedEvent) {
- IContainerEjectedEvent de = (IContainerEjectedEvent) event;
- handleEject(de.getTargetID());
- }
- }
- };
-
- public GenericServerContainer(ISharedObjectContainerConfig config, TCPServerSOContainerGroup listener, String path, int keepAlive) {
- super(config, listener, path, keepAlive);
- addListener(departedListener);
- }
-
- public void dispose() {
- removeListener(departedListener);
- super.dispose();
- }
- }
-
protected void handleDisconnect(ID targetID) {
// nothing to do
}
@@ -97,7 +69,7 @@ public abstract class AbstractGenericServer {
protected void createAndInitializeServer(String path, int keepAlive) throws IDCreateException {
if (path == null || path.equals("")) //$NON-NLS-1$
throw new NullPointerException("Cannot create ID with null or empty path"); //$NON-NLS-1$
- GenericServerContainer s = new GenericServerContainer(createServerConfig(path), serverGroup, path, keepAlive);
+ GenericServerContainer s = new GenericServerContainer(this, createServerConfig(path), serverGroup, path, keepAlive);
IConnectHandlerPolicy policy = createConnectHandlerPolicy(s, path);
if (policy != null)
s.setConnectPolicy(policy);
diff --git a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/GenericServerContainer.java b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/GenericServerContainer.java
new file mode 100644
index 000000000..9b0eece59
--- /dev/null
+++ b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/GenericServerContainer.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+* Copyright (c) 2009 EclipseSource and others. All rights reserved. This
+* program and the accompanying materials are made available under the terms of
+* the Eclipse Public License v1.0 which accompanies this distribution, and is
+* available at http://www.eclipse.org/legal/epl-v10.html
+*
+* Contributors:
+* EclipseSource - initial API and implementation
+******************************************************************************/
+/**
+ *
+ */
+package org.eclipse.ecf.server.generic;
+
+import org.eclipse.ecf.core.IContainerListener;
+import org.eclipse.ecf.core.events.*;
+import org.eclipse.ecf.core.sharedobject.ISharedObjectContainerConfig;
+import org.eclipse.ecf.provider.generic.TCPServerSOContainer;
+import org.eclipse.ecf.provider.generic.TCPServerSOContainerGroup;
+
+/**
+ *
+ * @since 2.0
+ *
+ */
+public class GenericServerContainer extends TCPServerSOContainer {
+
+ final AbstractGenericServer abstractGenericServer;
+
+ private IContainerListener departedListener = new IContainerListener() {
+ public void handleEvent(IContainerEvent event) {
+ if (event instanceof IContainerDisconnectedEvent) {
+ IContainerDisconnectedEvent de = (IContainerDisconnectedEvent) event;
+ GenericServerContainer.this.abstractGenericServer.handleDisconnect(de.getTargetID());
+ } else if (event instanceof IContainerEjectedEvent) {
+ IContainerEjectedEvent de = (IContainerEjectedEvent) event;
+ GenericServerContainer.this.abstractGenericServer.handleEject(de.getTargetID());
+ }
+ }
+ };
+
+ public GenericServerContainer(AbstractGenericServer abstractGenericServer, ISharedObjectContainerConfig config, TCPServerSOContainerGroup listener, String path, int keepAlive) {
+ super(config, listener, path, keepAlive);
+ this.abstractGenericServer = abstractGenericServer;
+ addListener(departedListener);
+ }
+
+ public void dispose() {
+ removeListener(departedListener);
+ super.dispose();
+ }
+} \ No newline at end of file
diff --git a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/ServerManager.java b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/ServerManager.java
index 87e97c59b..c6ed608d0 100644
--- a/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/ServerManager.java
+++ b/server-side/bundles/org.eclipse.ecf.server.generic/src/org/eclipse/ecf/server/generic/ServerManager.java
@@ -19,10 +19,8 @@ import java.util.*;
import org.eclipse.core.runtime.*;
import org.eclipse.ecf.core.identity.*;
import org.eclipse.ecf.core.sharedobject.ISharedObjectContainer;
-import org.eclipse.ecf.discovery.ServiceInfo;
-import org.eclipse.ecf.discovery.ServiceProperties;
+import org.eclipse.ecf.discovery.*;
import org.eclipse.ecf.discovery.identity.IServiceID;
-import org.eclipse.ecf.discovery.service.IDiscoveryService;
import org.eclipse.ecf.internal.server.generic.Activator;
import org.eclipse.ecf.internal.server.generic.Messages;
import org.eclipse.ecf.provider.generic.*;
@@ -180,7 +178,7 @@ public class ServerManager {
}
private void registerServerForDiscovery(NamedGroup group, boolean pwrequired) {
- final IDiscoveryService discovery = Activator.getDefault().getDiscovery();
+ final IDiscoveryAdvertiser discovery = Activator.getDefault().getDiscovery();
if (discovery != null) {
try {
final String rawGroupName = group.getRawName();

Back to the top