You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2012/10/19 14:09:17 UTC
svn commit: r1400062 - in
/cayenne/main/trunk/framework/cayenne-lifecycle/src:
main/java/org/apache/cayenne/lifecycle/id/IdCoder.java
test/java/org/apache/cayenne/lifecycle/id/IdCoderTest.java
Author: aadamchik
Date: Fri Oct 19 12:09:16 2012
New Revision: 1400062
URL: http://svn.apache.org/viewvc?rev=1400062&view=rev
Log:
CAY-1748 IdCoder/EntityIdCoder improvements to work with ObjectIds, including temp ones
idCoder.getStringId(ObjectId id)
Modified:
cayenne/main/trunk/framework/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/IdCoder.java
cayenne/main/trunk/framework/cayenne-lifecycle/src/test/java/org/apache/cayenne/lifecycle/id/IdCoderTest.java
Modified: cayenne/main/trunk/framework/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/IdCoder.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/IdCoder.java?rev=1400062&r1=1400061&r2=1400062&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/IdCoder.java (original)
+++ cayenne/main/trunk/framework/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/IdCoder.java Fri Oct 19 12:09:16 2012
@@ -52,16 +52,22 @@ public class IdCoder {
return coder.toObjectId(id);
}
- public String getStringId(Persistent referenceable) {
+ /**
+ * @since 3.2
+ */
+ public String getStringId(ObjectId id) {
+ EntityIdCoder coder = getCoder(id.getEntityName());
+ return coder.toStringId(id);
+ }
+
+ public String getStringId(Persistent object) {
- if (referenceable == null) {
+ if (object == null) {
throw new NullPointerException("Null object");
}
- ObjectId id = referenceable.getObjectId();
-
- EntityIdCoder coder = getCoder(id.getEntityName());
- return coder.toStringId(id);
+ ObjectId id = object.getObjectId();
+ return getStringId(id);
}
protected EntityIdCoder getCoder(String entityName) {
Modified: cayenne/main/trunk/framework/cayenne-lifecycle/src/test/java/org/apache/cayenne/lifecycle/id/IdCoderTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-lifecycle/src/test/java/org/apache/cayenne/lifecycle/id/IdCoderTest.java?rev=1400062&r1=1400061&r2=1400062&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-lifecycle/src/test/java/org/apache/cayenne/lifecycle/id/IdCoderTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-lifecycle/src/test/java/org/apache/cayenne/lifecycle/id/IdCoderTest.java Fri Oct 19 12:09:16 2012
@@ -47,6 +47,11 @@ public class IdCoderTest extends TestCas
assertEquals("E1:5", handler.getStringId(e1));
}
+ public void testGetStringId_ObjectId() {
+ IdCoder handler = new IdCoder(runtime.getChannel().getEntityResolver());
+ assertEquals("E1:5", handler.getStringId(new ObjectId("E1", "ID", 5)));
+ }
+
public void testGetStringId_TempException() {
IdCoder handler = new IdCoder(runtime.getChannel().getEntityResolver());
@@ -55,8 +60,7 @@ public class IdCoderTest extends TestCas
try {
handler.getStringId(e1);
- }
- catch (IllegalArgumentException e) {
+ } catch (IllegalArgumentException e) {
// expected
}
}