Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbbokowski2005-08-17 06:16:48 +0000
committerbbokowski2005-08-17 06:16:48 +0000
commitfbb64a3d23b8544c579743492a5aec1ff3f91660 (patch)
tree0ad0a1eea6bbf70b5dab5be2befa6002a4899ecd
parentbbcd1980d731bdbd2793eb4068731c71d6edeff0 (diff)
downloadorg.eclipse.ecf-fbb64a3d23b8544c579743492a5aec1ff3f91660.tar.gz
org.eclipse.ecf-fbb64a3d23b8544c579743492a5aec1ff3f91660.tar.xz
org.eclipse.ecf-fbb64a3d23b8544c579743492a5aec1ff3f91660.zip
Changed implementations of getAdapter() to conform to what the Javadoc says
-rw-r--r--framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/SOContainer.java8
-rw-r--r--framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/ServerSOContainer.java5
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/container/XMPPClientSOContainer.java9
3 files changed, 10 insertions, 12 deletions
diff --git a/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/SOContainer.java b/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/SOContainer.java
index 8116a31f6..5f4f41a02 100644
--- a/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/SOContainer.java
+++ b/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/SOContainer.java
@@ -22,6 +22,7 @@ import java.util.Iterator;
import java.util.Map;
import java.util.Vector;
+import org.eclipse.core.runtime.Platform;
import org.eclipse.ecf.core.ContainerJoinException;
import org.eclipse.ecf.core.IOSGIService;
import org.eclipse.ecf.core.ISharedObject;
@@ -455,8 +456,11 @@ public abstract class SOContainer implements ISharedObjectContainer {
* @see org.eclipse.ecf.core.ISharedObjectContainer#getAdapter(java.lang.Class)
*/
public Object getAdapter(Class adapter) {
- if (adapter.equals(ISharedObjectContainer.class)) return this;
- else return null;
+ if (adapter.isInstance(this)) {
+ return this;
+ } else {
+ return Platform.getAdapterManager().getAdapter(this, adapter);
+ }
}
/**
diff --git a/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/ServerSOContainer.java b/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/ServerSOContainer.java
index 411a7d1a6..e8aad9b53 100644
--- a/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/ServerSOContainer.java
+++ b/framework/bundles/org.eclipse.ecf.provider/src/org/eclipse/ecf/provider/generic/ServerSOContainer.java
@@ -40,11 +40,6 @@ public class ServerSOContainer extends SOContainer implements ISharedObjectConta
super(config);
}
- public Object getAdapter(Class clazz) {
- if (clazz.equals(ISharedObjectContainerGroupManager.class)) {
- return this;
- } else return super.getAdapter(clazz);
- }
public boolean isGroupManager() {
return true;
}
diff --git a/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/container/XMPPClientSOContainer.java b/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/container/XMPPClientSOContainer.java
index 87812a903..d135cbbec 100644
--- a/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/container/XMPPClientSOContainer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.xmpp/src/org/eclipse/ecf/provider/xmpp/container/XMPPClientSOContainer.java
@@ -15,7 +15,6 @@ import java.util.Map;
import javax.security.auth.callback.Callback;
import org.eclipse.ecf.core.ContainerJoinException;
-import org.eclipse.ecf.core.ISharedObjectContainer;
import org.eclipse.ecf.core.SharedObjectAddException;
import org.eclipse.ecf.core.comm.AsynchConnectionEvent;
import org.eclipse.ecf.core.comm.ConnectionInstantiationException;
@@ -323,8 +322,7 @@ public class XMPPClientSOContainer extends ClientSOContainer {
}
public Object getAdapter(Class clazz) {
- if (clazz.equals(ISharedObjectContainer.class)) return this;
- if (clazz.equals(IPresenceContainer.class)) {
+ if (clazz.equals(IPresenceContainer.class)) {
return new IPresenceContainer() {
public void addPresenceListener(IPresenceListener listener) {
@@ -417,7 +415,8 @@ public class XMPPClientSOContainer extends ClientSOContainer {
}
};
- }
- return null;
+ } else {
+ return super.getAdapter(clazz);
+ }
}
} \ No newline at end of file

Back to the top