diff options
author | Eike Stepper | 2008-10-01 11:55:39 +0000 |
---|---|---|
committer | Eike Stepper | 2008-10-01 11:55:39 +0000 |
commit | 47853bf9695b107109923d656308e0a8f6b76509 (patch) | |
tree | e80d2fcc41458f2a59478f82159263484fb1afc3 /plugins | |
parent | 2e40f2d3123fad301a884a67d52ab2f8794d6002 (diff) | |
download | cdo-47853bf9695b107109923d656308e0a8f6b76509.tar.gz cdo-47853bf9695b107109923d656308e0a8f6b76509.tar.xz cdo-47853bf9695b107109923d656308e0a8f6b76509.zip |
[249296] Provide the userID also for IChannel through IUserAware
https://bugs.eclipse.org/bugs/show_bug.cgi?id=249296
Diffstat (limited to 'plugins')
11 files changed, 50 insertions, 17 deletions
diff --git a/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IAccount.java b/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IAccount.java index c276a28041..7576978824 100644 --- a/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IAccount.java +++ b/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IAccount.java @@ -10,15 +10,15 @@ **************************************************************************/ package org.eclipse.net4j.buddies.common; +import org.eclipse.net4j.util.security.IUserAware; + import java.util.Map; /** * @author Eike Stepper */ -public interface IAccount +public interface IAccount extends IUserAware { - public String getUserID(); - public void setPassword(String password); public boolean authenticate(String password); diff --git a/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IBuddy.java b/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IBuddy.java index 63a29dcf68..ea8dc1bfb2 100644 --- a/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IBuddy.java +++ b/plugins/org.eclipse.net4j.buddies.common/src/org/eclipse/net4j/buddies/common/IBuddy.java @@ -10,6 +10,8 @@ **************************************************************************/ package org.eclipse.net4j.buddies.common; +import org.eclipse.net4j.util.security.IUserAware; + import org.eclipse.core.runtime.IAdaptable; import java.util.Collection; @@ -18,10 +20,8 @@ import java.util.Set; /** * @author Eike Stepper */ -public interface IBuddy extends IMembershipContainer, ICollaborationProvider, IAdaptable +public interface IBuddy extends IUserAware, IMembershipContainer, ICollaborationProvider, IAdaptable { - public String getUserID(); - public State getState(); public IAccount getAccount(); diff --git a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ControlChannel.java b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ControlChannel.java index 262df3a07c..bc0aee7d09 100644 --- a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ControlChannel.java +++ b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ControlChannel.java @@ -61,6 +61,7 @@ public class ControlChannel extends Channel setChannelIndex(CONTROL_CHANNEL_INDEX); setChannelMultiplexer(connector); setReceiveExecutor(connector.getConfig().getReceiveExecutor()); + setUserID(connector.getUserID()); } public TCPConnector getConnector() diff --git a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/ICredentials.java b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/ICredentials.java index 84823b6534..d3daa02396 100644 --- a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/ICredentials.java +++ b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/ICredentials.java @@ -13,7 +13,6 @@ package org.eclipse.net4j.util.security; /** * @author Eike Stepper */ -public interface ICredentials +public interface ICredentials extends IUserAware { - public String getUserID(); } diff --git a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IPasswordCredentials.java b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IPasswordCredentials.java index e712cfee44..8ad34f359c 100644 --- a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IPasswordCredentials.java +++ b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IPasswordCredentials.java @@ -15,7 +15,5 @@ package org.eclipse.net4j.util.security; */ public interface IPasswordCredentials extends ICredentials { - public String getUserID(); - public char[] getPassword(); } diff --git a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IUserAware.java b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IUserAware.java new file mode 100644 index 0000000000..eaf8195165 --- /dev/null +++ b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/security/IUserAware.java @@ -0,0 +1,20 @@ +/*************************************************************************** + * Copyright (c) 2004 - 2008 Eike Stepper, Germany. + * 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: + * Eike Stepper - initial API and implementation + **************************************************************************/ +package org.eclipse.net4j.util.security; + +/** + * @author Eike Stepper + * @since 2.0 + */ +public interface IUserAware +{ + public String getUserID(); +} diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/channel/Channel.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/channel/Channel.java index 3c89a92155..c9b568f81e 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/channel/Channel.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/channel/Channel.java @@ -38,6 +38,8 @@ public class Channel extends Lifecycle implements InternalChannel { private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_CHANNEL, Channel.class); + private String userID; + private IChannelMultiplexer channelMultiplexer; private short channelIndex = IBuffer.NO_CHANNEL; @@ -60,6 +62,16 @@ public class Channel extends Lifecycle implements InternalChannel { } + public String getUserID() + { + return userID; + } + + public void setUserID(String userID) + { + this.userID = userID; + } + public Location getLocation() { return channelMultiplexer.getLocation(); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java index 681214b3e7..630befe79b 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/connector/Connector.java @@ -417,6 +417,7 @@ public abstract class Connector extends Container<IChannel> implements InternalC { channel.setChannelMultiplexer(this); channel.setReceiveExecutor(getConfig().getReceiveExecutor()); + channel.setUserID(getUserID()); if (protocol != null) { protocol.setChannel(channel); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannel.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannel.java index d5378629e5..f4a354dd38 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannel.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/channel/IChannel.java @@ -15,6 +15,7 @@ import org.eclipse.net4j.buffer.IBuffer; import org.eclipse.net4j.buffer.IBufferHandler; import org.eclipse.net4j.connector.IConnector; import org.eclipse.net4j.util.event.INotifier; +import org.eclipse.net4j.util.security.IUserAware; /** * A bidirectional communications channel for the asynchronous exchange of {@link IBuffer}s. A channel is lightweight @@ -59,7 +60,7 @@ import org.eclipse.net4j.util.event.INotifier; * @author Eike Stepper * @noimplement This interface is not intended to be implemented by clients. */ -public interface IChannel extends ILocationAware, IBufferHandler, INotifier +public interface IChannel extends IUserAware, ILocationAware, IBufferHandler, INotifier { /** * Returns the index of this channel within the array of channels returned from the {@link IConnector#getChannels() diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/connector/IConnector.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/connector/IConnector.java index 157e1e94ea..d14957250e 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/connector/IConnector.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/connector/IConnector.java @@ -18,6 +18,7 @@ import org.eclipse.net4j.util.container.IContainer; import org.eclipse.net4j.util.event.IListener; import org.eclipse.net4j.util.factory.IFactory; import org.eclipse.net4j.util.lifecycle.ILifecycle; +import org.eclipse.net4j.util.security.IUserAware; import java.util.List; @@ -50,7 +51,7 @@ import java.util.List; * * @author Eike Stepper */ -public interface IConnector extends IContainer<IChannel> +public interface IConnector extends IUserAware, IContainer<IChannel> { /** * @since 2.0 @@ -68,11 +69,6 @@ public interface IConnector extends IContainer<IChannel> public String getURL(); /** - * Returns the userID of this connector. - */ - public String getUserID(); - - /** * Returns the current state of this onnector. */ public ConnectorState getState(); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/spi/net4j/InternalChannel.java b/plugins/org.eclipse.net4j/src/org/eclipse/spi/net4j/InternalChannel.java index 57c2c7d279..e496302444 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/spi/net4j/InternalChannel.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/spi/net4j/InternalChannel.java @@ -24,6 +24,11 @@ import java.util.concurrent.ExecutorService; */ public interface InternalChannel extends IChannel, IBufferProvider, ILifecycle.Introspection { + /** + * @since 2.0 + */ + public void setUserID(String userID); + public void setChannelIndex(short channelIndex); public ExecutorService getReceiveExecutor(); |