Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/OpenSessionRequest.java')
-rw-r--r--plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/OpenSessionRequest.java39
1 files changed, 11 insertions, 28 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/OpenSessionRequest.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/OpenSessionRequest.java
index 71cb7994fc..f4af60ff7f 100644
--- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/OpenSessionRequest.java
+++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/OpenSessionRequest.java
@@ -10,6 +10,7 @@
**************************************************************************/
package org.eclipse.emf.internal.cdo.protocol;
+import org.eclipse.emf.cdo.internal.protocol.id.CDOIDObjectFactoryImpl;
import org.eclipse.emf.cdo.protocol.CDOProtocolConstants;
import org.eclipse.emf.cdo.protocol.id.CDOIDMetaRange;
import org.eclipse.emf.cdo.protocol.id.CDOIDUtil;
@@ -118,10 +119,17 @@ public class OpenSessionRequest extends RequestWithConfirmation<OpenSessionResul
}
int classes = in.readInt();
- result.setCDOIDObjectFactoryClass(deserializeClass(in));
- for (int i = 1; i < classes; i++)
+ if (classes == 0)
{
- result.addCDOIDObjectClass(deserializeClass(in));
+ result.setCDOIDObjectFactoryClass(CDOIDObjectFactoryImpl.class);
+ }
+ else
+ {
+ result.setCDOIDObjectFactoryClass(deserializeClass(in));
+ for (int i = 1; i < classes; i++)
+ {
+ result.addCDOIDObjectClass(deserializeClass(in));
+ }
}
return result;
@@ -158,29 +166,4 @@ public class OpenSessionRequest extends RequestWithConfirmation<OpenSessionResul
throw WrappedException.wrap(ex);
}
}
-
- private static final class CustomObjectInputStream extends ObjectInputStream
- {
- public CustomObjectInputStream(InputStream in) throws IOException
- {
- super(in);
- }
-
- @Override
- protected Class<?> resolveClass(ObjectStreamClass v) throws IOException, ClassNotFoundException
- {
- String className = v.getName();
- ClassLoader loader = getClass().getClassLoader();
-
- try
- {
- return loader.loadClass(className);
- }
- catch (ClassNotFoundException ex)
- {
- ex.printStackTrace();
- return super.resolveClass(v);
- }
- }
- }
}

Back to the top