From f3d274403d4c01895a314ee04da147f0e7d65efa Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Wed, 25 Jul 2007 09:28:09 +0000 Subject: *** empty log message *** --- .../cdo/internal/ui/dialogs/PackageManagerDialog.java | 2 +- .../emf/cdo/internal/ui/views/CDOItemProvider.java | 2 +- .../emf/internal/cdo/CDOPackageRegistryImpl.java | 2 +- .../src/org/eclipse/internal/net4j/Connector.java | 17 ++++++++++++++++- 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/dialogs/PackageManagerDialog.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/dialogs/PackageManagerDialog.java index 2743b664c4..b0dd3f4ff4 100644 --- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/dialogs/PackageManagerDialog.java +++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/dialogs/PackageManagerDialog.java @@ -157,7 +157,7 @@ public class PackageManagerDialog extends TitleAreaDialog { if (ePackage instanceof EPackage.Descriptor) { - return "PROXY"; + return "?"; } if (ePackage.getClass() == EPackageImpl.class) diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOItemProvider.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOItemProvider.java index 1445c36aef..37e3d57b2d 100644 --- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOItemProvider.java +++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/views/CDOItemProvider.java @@ -222,7 +222,7 @@ public class CDOItemProvider extends ContainerItemProvider { IConnector connector = session.getChannel().getConnector(); String repositoryName = session.getRepositoryName(); - return connector.getURL() + "/" + repositoryName + " [" + session.getSessionID() + "]"; + return "Session " + connector.getURL() + "/" + repositoryName + " [" + session.getSessionID() + "]"; } public static String getViewLabel(CDOView view) diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOPackageRegistryImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOPackageRegistryImpl.java index 24111cb0ef..b901b0bac8 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOPackageRegistryImpl.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOPackageRegistryImpl.java @@ -81,7 +81,7 @@ public class CDOPackageRegistryImpl extends EPackageRegistryImpl implements CDOP } CDOPackageImpl cdoPackage = ModelUtil.getCDOPackage(ePackage, session.getPackageManager()); - cdoPackage.setPersistent(false); + cdoPackage.setPersistent(!cdoPackage.getMetaIDRange().isTemporary()); } return super.put(key, value); diff --git a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/Connector.java b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/Connector.java index 49ec142681..fe55606a11 100644 --- a/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/Connector.java +++ b/plugins/org.eclipse.net4j/src/org/eclipse/internal/net4j/Connector.java @@ -27,6 +27,7 @@ import org.eclipse.net4j.internal.util.event.Event; import org.eclipse.net4j.internal.util.factory.FactoryKey; import org.eclipse.net4j.internal.util.lifecycle.Lifecycle; import org.eclipse.net4j.internal.util.om.trace.ContextTracer; +import org.eclipse.net4j.util.ReflectUtil; import org.eclipse.net4j.util.StringUtil; import org.eclipse.net4j.util.container.IContainer; import org.eclipse.net4j.util.container.IContainerDelta; @@ -294,6 +295,8 @@ public abstract class Connector extends Lifecycle implements IConnector public IChannel[] getChannels() { List result = new ArrayList(channels.size()); + + TRACE_SYNCHRONIZE(); synchronized (channels) { for (Channel channel : channels) @@ -396,6 +399,7 @@ public abstract class Connector extends Lifecycle implements IConnector { try { + TRACE_SYNCHRONIZE(); synchronized (channels) { return channels.get(channelIndex); @@ -415,6 +419,7 @@ public abstract class Connector extends Lifecycle implements IConnector protected List> getChannelBufferQueues() { final List> result = new ArrayList(channels.size()); + TRACE_SYNCHRONIZE(); synchronized (channels) { for (final Channel channel : channels) @@ -432,6 +437,7 @@ public abstract class Connector extends Lifecycle implements IConnector protected short findFreeChannelIndex() { + TRACE_SYNCHRONIZE(); synchronized (channels) { int size = channels.size(); @@ -449,6 +455,7 @@ public abstract class Connector extends Lifecycle implements IConnector protected void addChannel(Channel channel) { + TRACE_SYNCHRONIZE(); synchronized (channels) { short channelIndex = channel.getChannelIndex(); @@ -463,7 +470,7 @@ public abstract class Connector extends Lifecycle implements IConnector protected boolean removeChannel(Channel channel, boolean actively) { - // TODO Can cause deadlock on shutdown + TRACE_SYNCHRONIZE(); synchronized (channels) { int channelIndex = channel.getChannelIndex(); @@ -553,6 +560,7 @@ public abstract class Connector extends Lifecycle implements IConnector protected void doDeactivate() throws Exception { setState(ConnectorState.DISCONNECTED); + TRACE_SYNCHRONIZE(); synchronized (channels) { for (short i = 0; i < channels.size(); i++) @@ -570,6 +578,13 @@ public abstract class Connector extends Lifecycle implements IConnector super.doDeactivate(); } + private static void TRACE_SYNCHRONIZE() + { + Thread currentThread = Thread.currentThread(); + System.out.println("SYNCHRONIZE " + currentThread); // XXX + ReflectUtil.printStackTrace(System.out, currentThread.getStackTrace()); + } + protected abstract void registerChannelWithPeer(short channelIndex, IProtocol protocol) throws ConnectorException; /** -- cgit v1.2.3