diff options
author | Eike Stepper | 2007-03-12 08:19:32 +0000 |
---|---|---|
committer | Eike Stepper | 2007-03-12 08:19:32 +0000 |
commit | 77728e846cc69120550d12d98b8df47562b45e75 (patch) | |
tree | 111fc52ec29dbe40824a692c910c7387f26c6625 | |
parent | 24520f9acd9a10e79ddc99f56ec600e912347969 (diff) | |
download | cdo-77728e846cc69120550d12d98b8df47562b45e75.tar.gz cdo-77728e846cc69120550d12d98b8df47562b45e75.tar.xz cdo-77728e846cc69120550d12d98b8df47562b45e75.zip |
*** empty log message ***
16 files changed, 115 insertions, 67 deletions
diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOSessionsItemProvider.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOSessionsItemProvider.java index 5f580e318b..02f015af01 100644 --- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOSessionsItemProvider.java +++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOSessionsItemProvider.java @@ -19,6 +19,7 @@ import org.eclipse.emf.cdo.internal.ui.bundle.SharedIcons; import org.eclipse.net4j.util.event.IEvent; import org.eclipse.net4j.util.event.IListener; import org.eclipse.net4j.util.registry.IRegistry; +import org.eclipse.net4j.util.registry.IRegistryEvent; import org.eclipse.swt.graphics.Image; diff --git a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/AbstractJVMConnector.java b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/AbstractJVMConnector.java index b263249332..4704d077c7 100644 --- a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/AbstractJVMConnector.java +++ b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/AbstractJVMConnector.java @@ -16,7 +16,6 @@ import org.eclipse.net4j.transport.IChannel; import org.eclipse.internal.net4j.transport.Channel; import org.eclipse.internal.net4j.transport.Connector; -import org.eclipse.internal.net4j.transport.DescriptionUtil; import java.util.Queue; @@ -92,7 +91,6 @@ public abstract class AbstractJVMConnector extends Connector protected void doBeforeActivate() throws Exception { super.doBeforeActivate(); - name = DescriptionUtil.getElement(getDescription(), 2); if (name == null) { throw new IllegalStateException("name == null"); diff --git a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ClientJVMConnectorImpl.java b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ClientJVMConnectorImpl.java index d9b27510b6..330ba59fb6 100644 --- a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ClientJVMConnectorImpl.java +++ b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ClientJVMConnectorImpl.java @@ -11,8 +11,12 @@ package org.eclipse.net4j.internal.jvm; import org.eclipse.net4j.transport.ConnectorLocation; +import org.eclipse.net4j.util.event.IListener; +import org.eclipse.net4j.util.lifecycle.ILifecycle; import org.eclipse.net4j.util.lifecycle.LifecycleUtil; +import org.eclipse.internal.net4j.util.lifecycle.LifecycleEventAdapter; + /** * @author Eike Stepper */ @@ -20,17 +24,10 @@ public class ClientJVMConnectorImpl extends AbstractJVMConnector { private JVMAcceptorImpl acceptor; - private LifecycleListener peerLifecycleListener = new LifecycleListener() + private IListener peerLifecycleListener = new LifecycleEventAdapter() { - public void notifyLifecycleAboutToActivate(LifecycleNotifier notifier) - { - } - - public void notifyLifecycleActivated(LifecycleNotifier notifier) - { - } - - public void notifyLifecycleDeactivating(LifecycleNotifier notifier) + @Override + protected void onAboutToDeactivate(ILifecycle lifecycle) { setPeer(null); deactivate(); @@ -63,7 +60,7 @@ public class ClientJVMConnectorImpl extends AbstractJVMConnector } @Override - protected void onActivate() throws Exception + protected void doActivate() throws Exception { super.doActivate(); AbstractJVMConnector peer = acceptor.handleAccept(this); @@ -71,7 +68,7 @@ public class ClientJVMConnectorImpl extends AbstractJVMConnector } @Override - protected void onDeactivate() throws Exception + protected void doDeactivate() throws Exception { LifecycleUtil.deactivateNoisy(getPeer()); super.doDeactivate(); @@ -82,7 +79,7 @@ public class ClientJVMConnectorImpl extends AbstractJVMConnector ServerJVMConnectorImpl server = new ServerJVMConnectorImpl(this); server.setBufferProvider(getBufferProvider()); server.setReceiveExecutor(getReceiveExecutor()); - server.addLifecycleListener(peerLifecycleListener); + server.addListener(peerLifecycleListener); server.activate(); return server; } diff --git a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMAcceptorFactoryImpl.java b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMAcceptorFactoryImpl.java index 1651f2bf85..f92ec8aa24 100644 --- a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMAcceptorFactoryImpl.java +++ b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMAcceptorFactoryImpl.java @@ -12,7 +12,6 @@ package org.eclipse.net4j.internal.jvm; import org.eclipse.net4j.jvm.JVMConstants; import org.eclipse.net4j.transport.IAcceptor; -import org.eclipse.net4j.transport.IAcceptorFactory; /** * @author Eike Stepper diff --git a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMConnectorFactoryImpl.java b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMConnectorFactoryImpl.java index 30c81efb92..b724717634 100644 --- a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMConnectorFactoryImpl.java +++ b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/JVMConnectorFactoryImpl.java @@ -12,7 +12,6 @@ package org.eclipse.net4j.internal.jvm; import org.eclipse.net4j.jvm.JVMConstants; import org.eclipse.net4j.transport.IConnector; -import org.eclipse.net4j.transport.IConnectorFactory; /** * @author Eike Stepper diff --git a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ServerJVMConnectorImpl.java b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ServerJVMConnectorImpl.java index 4ac6949416..1fddd23e20 100644 --- a/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ServerJVMConnectorImpl.java +++ b/plugins/org.eclipse.net4j.jvm/src/org/eclipse/net4j/internal/jvm/ServerJVMConnectorImpl.java @@ -29,7 +29,7 @@ public class ServerJVMConnectorImpl extends AbstractJVMConnector } @Override - protected void onDeactivate() throws Exception + protected void doDeactivate() throws Exception { LifecycleUtil.deactivateNoisy(getPeer()); super.doDeactivate(); diff --git a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/AbstractTCPConnector.java b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/AbstractTCPConnector.java index ded8811015..70871ecf86 100644 --- a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/AbstractTCPConnector.java +++ b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/AbstractTCPConnector.java @@ -22,7 +22,6 @@ import org.eclipse.net4j.util.om.trace.ContextTracer; import org.eclipse.internal.net4j.bundle.Net4j; import org.eclipse.internal.net4j.transport.Channel; import org.eclipse.internal.net4j.transport.Connector; -import org.eclipse.internal.net4j.transport.DescriptionUtil; import java.nio.ByteBuffer; import java.nio.channels.ClosedChannelException; @@ -286,14 +285,11 @@ public abstract class AbstractTCPConnector extends Connector implements TCPConne throw new IllegalStateException("selector == null"); } - String[] elements = DescriptionUtil.getElements(getDescription()); - host = elements[2]; if (host == null) { throw new IllegalStateException("host == null"); } - port = Integer.parseInt(elements[3]); if (port == 0) { throw new IllegalStateException("port == 0"); diff --git a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ClientTCPConnectorImpl.java b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ClientTCPConnectorImpl.java index 7a1291ec8a..f126cc3a7d 100644 --- a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ClientTCPConnectorImpl.java +++ b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ClientTCPConnectorImpl.java @@ -47,7 +47,14 @@ public class ClientTCPConnectorImpl extends AbstractTCPConnector @Override public String toString() { - return MessageFormat.format("ClientTCPConnector[{0}]", getDescription()); //$NON-NLS-1$ + if (getUserID() == null) + { + return MessageFormat.format("ClientTCPConnector[{0}:{1}]", getHost(), getPort()); //$NON-NLS-1$ + } + else + { + return MessageFormat.format("ClientTCPConnector[{3}@{0}:{1}]", getHost(), getPort(), getUserID()); //$NON-NLS-1$ + } } @Override diff --git a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ServerTCPConnectorImpl.java b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ServerTCPConnectorImpl.java index 3a7058c92b..217276ad09 100644 --- a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ServerTCPConnectorImpl.java +++ b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/ServerTCPConnectorImpl.java @@ -30,18 +30,39 @@ public class ServerTCPConnectorImpl extends AbstractTCPConnector public String getHost() { - return getSocketChannel().socket().getInetAddress().getHostAddress(); + try + { + return getSocketChannel().socket().getInetAddress().getHostAddress(); + } + catch (RuntimeException ex) + { + return null; + } } public int getPort() { - return getSocketChannel().socket().getPort(); + try + { + return getSocketChannel().socket().getPort(); + } + catch (RuntimeException ex) + { + return 0; + } } @Override public String toString() { - return MessageFormat.format("ServerTCPConnector[{0}]", getDescription()); //$NON-NLS-1$ + if (getUserID() == null) + { + return MessageFormat.format("ServerTCPConnector[{0}:{1}]", getHost(), getPort()); //$NON-NLS-1$ + } + else + { + return MessageFormat.format("ServerTCPConnector[{3}@{0}:{1}]", getHost(), getPort(), getUserID()); //$NON-NLS-1$ + } } @Override diff --git a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPAcceptorFactoryImpl.java b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPAcceptorFactoryImpl.java index cc07dd9dcb..1330087dc8 100644 --- a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPAcceptorFactoryImpl.java +++ b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPAcceptorFactoryImpl.java @@ -12,7 +12,6 @@ package org.eclipse.net4j.internal.tcp; import org.eclipse.net4j.tcp.TCPConstants; import org.eclipse.net4j.transport.IAcceptor; -import org.eclipse.net4j.transport.IAcceptorFactory; /** * @author Eike Stepper diff --git a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPConnectorFactoryImpl.java b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPConnectorFactoryImpl.java index 27af6067b7..ea4255902c 100644 --- a/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPConnectorFactoryImpl.java +++ b/plugins/org.eclipse.net4j.tcp/src/org/eclipse/net4j/internal/tcp/TCPConnectorFactoryImpl.java @@ -12,7 +12,6 @@ package org.eclipse.net4j.internal.tcp; import org.eclipse.net4j.tcp.TCPConstants; import org.eclipse.net4j.transport.IConnector; -import org.eclipse.net4j.transport.IConnectorFactory; /** * @author Eike Stepper diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/container/ContainerEventAdapter.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/container/ContainerEventAdapter.java index dc7cf99f10..7b4de98720 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/container/ContainerEventAdapter.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/container/ContainerEventAdapter.java @@ -19,7 +19,7 @@ import org.eclipse.net4j.util.event.IListener; /** * @author Eike Stepper */ -public class ContainerEventAdapter implements IListener +public class ContainerEventAdapter<E> implements IListener { public final void notifyEvent(IEvent event) { @@ -34,17 +34,17 @@ public class ContainerEventAdapter implements IListener } } - protected void notifyContainerEvent(IContainerEvent event) + protected void notifyContainerEvent(IContainerEvent<E> event) { - final IContainer container = event.getContainer(); - event.accept(new IContainerEventVisitor() + final IContainer<E> container = event.getContainer(); + event.accept(new IContainerEventVisitor<E>() { - public void added(Object element) + public void added(E element) { onAdded(container, element); } - public void removed(Object element) + public void removed(E element) { onRemoved(container, element); } @@ -55,11 +55,11 @@ public class ContainerEventAdapter implements IListener { } - protected void onAdded(IContainer container, Object element) + protected void onAdded(IContainer<E> container, E element) { } - protected void onRemoved(IContainer container, Object element) + protected void onRemoved(IContainer<E> container, E element) { } } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/Registry.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/Registry.java index b3dbc1e3d4..adb1f581cf 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/Registry.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/Registry.java @@ -14,7 +14,6 @@ import org.eclipse.net4j.util.container.IContainerDelta; import org.eclipse.net4j.util.registry.IRegistry; import org.eclipse.internal.net4j.bundle.Net4j; -import org.eclipse.internal.net4j.util.container.ContainerEvent; import org.eclipse.internal.net4j.util.event.Notifier; import java.util.Collection; @@ -249,7 +248,7 @@ public abstract class Registry<K, V> extends Notifier implements IRegistry<K, V> { private int nesting = 1; - private ContainerEvent<Map.Entry<K, V>> event; + private RegistryEvent<K, V> event; private Thread owner; @@ -261,7 +260,7 @@ public abstract class Registry<K, V> extends Notifier implements IRegistry<K, V> private void initEvent() { - event = new ContainerEvent(Registry.this); + event = new RegistryEvent(Registry.this); } public boolean isOwned() diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEvent.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEvent.java new file mode 100644 index 0000000000..a866c15b1c --- /dev/null +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEvent.java @@ -0,0 +1,26 @@ +package org.eclipse.internal.net4j.util.registry; + +import org.eclipse.net4j.util.registry.IRegistry; +import org.eclipse.net4j.util.registry.IRegistryEvent; + +import org.eclipse.internal.net4j.util.container.ContainerEvent; + +import java.util.Map; + +/** + * @author Eike Stepper + */ +public class RegistryEvent<K, V> extends ContainerEvent<Map.Entry<K, V>> implements IRegistryEvent<K, V> +{ + private static final long serialVersionUID = 1L; + + public RegistryEvent(IRegistry registry) + { + super(registry); + } + + public IRegistry getRegistry() + { + return (IRegistry)getContainer(); + } +}
\ No newline at end of file diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEventAdapter.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEventAdapter.java index 0aa3afe539..c348a04e7d 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEventAdapter.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/util/registry/RegistryEventAdapter.java @@ -10,26 +10,25 @@ **************************************************************************/ package org.eclipse.internal.net4j.util.registry; -import org.eclipse.net4j.util.container.IContainer; -import org.eclipse.net4j.util.container.IContainerEvent; import org.eclipse.net4j.util.container.IContainerEventVisitor; import org.eclipse.net4j.util.event.IEvent; import org.eclipse.net4j.util.event.IListener; import org.eclipse.net4j.util.registry.IRegistry; +import org.eclipse.net4j.util.registry.IRegistryEvent; import java.util.Map; /** * @author Eike Stepper */ -public class RegistryEventAdapter implements IListener +public class RegistryEventAdapter<K, V> implements IListener { public final void notifyEvent(IEvent event) { - if (event instanceof IContainerEvent) + if (event instanceof IRegistryEvent) { - IContainerEvent e = (IContainerEvent)event; - notifyContainerEvent(e); + IRegistryEvent e = (IRegistryEvent)event; + notifyRegistryEvent(e); } else { @@ -37,33 +36,18 @@ public class RegistryEventAdapter implements IListener } } - protected void notifyContainerEvent(IContainerEvent event) + protected void notifyRegistryEvent(IRegistryEvent<K, V> event) { - IContainer container = event.getContainer(); - if (container instanceof IRegistry) + final IRegistry<K, V> registry = event.getRegistry(); + event.accept(new IContainerEventVisitor<Map.Entry<K, V>>() { - notifyRegistryEvent(event); - } - else - { - notifyOtherEvent(event); - } - } - - protected void notifyRegistryEvent(IContainerEvent event) - { - final IRegistry registry = (IRegistry)event.getContainer(); - event.accept(new IContainerEventVisitor() - { - public void added(Object element) + public void added(Map.Entry<K, V> entry) { - Map.Entry entry = (Map.Entry)element; onAdded(registry, entry.getKey(), entry.getValue()); } - public void removed(Object element) + public void removed(Map.Entry<K, V> entry) { - Map.Entry entry = (Map.Entry)element; onRemoved(registry, entry.getKey(), entry.getValue()); } }); @@ -73,11 +57,11 @@ public class RegistryEventAdapter implements IListener { } - protected void onAdded(IRegistry registry, Object key, Object value) + protected void onAdded(IRegistry<K, V> registry, K key, V value) { } - protected void onRemoved(IRegistry registry, Object key, Object value) + protected void onRemoved(IRegistry<K, V> registry, K key, V value) { } } diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/net4j/util/registry/IRegistryEvent.java b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/util/registry/IRegistryEvent.java new file mode 100644 index 0000000000..36dfa15763 --- /dev/null +++ b/plugins/org.eclipse.net4j/src/org/eclipse/net4j/util/registry/IRegistryEvent.java @@ -0,0 +1,23 @@ +/*************************************************************************** + * Copyright (c) 2004-2007 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.registry; + +import org.eclipse.net4j.util.container.IContainerEvent; + +import java.util.Map; + +/** + * @author Eike Stepper + */ +public interface IRegistryEvent<K, V> extends IContainerEvent<Map.Entry<K, V>> +{ + public IRegistry getRegistry(); +} |