Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-06-11 15:19:43 +0000
committerEike Stepper2013-06-11 15:19:43 +0000
commitbcee5b5481be52f6329d630585c0d9d869f2d424 (patch)
treed6cf512fa1aaafb50036dd4aa083cd14f97203fd
parent050e2a2b4d32451ce75fecb7c4cba533059d1d5a (diff)
downloadcdo-bcee5b5481be52f6329d630585c0d9d869f2d424.tar.gz
cdo-bcee5b5481be52f6329d630585c0d9d869f2d424.tar.xz
cdo-bcee5b5481be52f6329d630585c0d9d869f2d424.zip
[409057] CDOIDs are missing default constructors for (Hessian)
deserialization https://bugs.eclipse.org/bugs/show_bug.cgi?id=409057
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDExternalImpl.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongImpl.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongWithClassifierImpl.java10
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringImpl.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringWithClassifierImpl.java10
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectUUIDImpl.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectExternalImpl.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectImpl.java9
8 files changed, 74 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDExternalImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDExternalImpl.java
index 6ad0f58ed4..bd252a6252 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDExternalImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDExternalImpl.java
@@ -41,6 +41,15 @@ public final class CDOIDExternalImpl extends AbstractCDOID implements CDOIDExter
this.uri = uri;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDExternalImpl()
+ {
+ uri = null;
+ }
+
@Override
public void write(CDODataOutput out) throws IOException
{
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongImpl.java
index d7061bec92..da63413137 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongImpl.java
@@ -41,6 +41,15 @@ public final class CDOIDObjectLongImpl extends AbstractCDOID implements Internal
this.value = value;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDObjectLongImpl()
+ {
+ value = 0L;
+ }
+
public long getLongValue()
{
return value;
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongWithClassifierImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongWithClassifierImpl.java
index 93127e0414..3edbc4efe5 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongWithClassifierImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectLongWithClassifierImpl.java
@@ -47,6 +47,16 @@ public final class CDOIDObjectLongWithClassifierImpl extends AbstractCDOID imple
this.classifierRef = classifierRef;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDObjectLongWithClassifierImpl()
+ {
+ value = 0L;
+ classifierRef = null;
+ }
+
public long getLongValue()
{
return value;
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringImpl.java
index 707b0e4ae0..2fd66a574f 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringImpl.java
@@ -41,6 +41,15 @@ public final class CDOIDObjectStringImpl extends AbstractCDOID implements Intern
this.value = value;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDObjectStringImpl()
+ {
+ value = null;
+ }
+
@Override
public void write(CDODataOutput out) throws IOException
{
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringWithClassifierImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringWithClassifierImpl.java
index d57acc4517..b6e780ec14 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringWithClassifierImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectStringWithClassifierImpl.java
@@ -47,6 +47,16 @@ public final class CDOIDObjectStringWithClassifierImpl extends AbstractCDOID imp
this.classifierRef = classifierRef;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDObjectStringWithClassifierImpl()
+ {
+ value = null;
+ classifierRef = null;
+ }
+
public String getStringValue()
{
return value;
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectUUIDImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectUUIDImpl.java
index b87052cc80..d6debfb7de 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectUUIDImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDObjectUUIDImpl.java
@@ -43,6 +43,15 @@ public final class CDOIDObjectUUIDImpl extends AbstractCDOID implements Internal
this.value = value;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDObjectUUIDImpl()
+ {
+ value = null;
+ }
+
public byte[] getByteArrayValue()
{
return value;
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectExternalImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectExternalImpl.java
index 7e25a5f354..9dbdc3090b 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectExternalImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectExternalImpl.java
@@ -42,6 +42,15 @@ public final class CDOIDTempObjectExternalImpl extends AbstractCDOID implements
this.uri = uri;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDTempObjectExternalImpl()
+ {
+ uri = null;
+ }
+
@Override
public void write(CDODataOutput out) throws IOException
{
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectImpl.java
index c764b7702f..b26e8e1585 100644
--- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectImpl.java
+++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/id/CDOIDTempObjectImpl.java
@@ -40,6 +40,15 @@ public final class CDOIDTempObjectImpl extends AbstractCDOID implements CDOIDTem
this.value = value;
}
+ /**
+ * A private default constructor for technologies (such as Hessian) that initialize the instance fields via reflection.
+ * Note that {@link #readResolve()} must be called in any case to ensure value uniqueness.
+ */
+ private CDOIDTempObjectImpl()
+ {
+ value = 0;
+ }
+
public int getIntValue()
{
return value;

Back to the top