You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2017/12/06 07:15:00 UTC
cayenne git commit: CAY-2387 Can't select byte[] property with
ColumnSelect
Repository: cayenne
Updated Branches:
refs/heads/master fe43288be -> 01815158c
CAY-2387 Can't select byte[] property with ColumnSelect
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/01815158
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/01815158
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/01815158
Branch: refs/heads/master
Commit: 01815158c9577e43318a808f78e359557ec3131a
Parents: fe43288
Author: Nikita Timofeev <st...@gmail.com>
Authored: Wed Dec 6 10:14:54 2017 +0300
Committer: Nikita Timofeev <st...@gmail.com>
Committed: Wed Dec 6 10:14:54 2017 +0300
----------------------------------------------------------------------
.../select/DefaultSelectTranslator.java | 2 +-
.../org/apache/cayenne/query/ColumnSelectIT.java | 19 +++++++++++++++++++
docs/doc/src/main/resources/RELEASE-NOTES.txt | 1 +
3 files changed, 21 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/01815158/cayenne-server/src/main/java/org/apache/cayenne/access/translator/select/DefaultSelectTranslator.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/access/translator/select/DefaultSelectTranslator.java b/cayenne-server/src/main/java/org/apache/cayenne/access/translator/select/DefaultSelectTranslator.java
index adcf71a..0af3ae6 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/access/translator/select/DefaultSelectTranslator.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/access/translator/select/DefaultSelectTranslator.java
@@ -455,7 +455,7 @@ public class DefaultSelectTranslator extends QueryAssembler implements SelectTra
int type = getJdbcTypeForProperty(property);
ColumnDescriptor descriptor;
if(property.getType() != null) {
- descriptor = new ColumnDescriptor(builder.toString(), type, property.getType().getName());
+ descriptor = new ColumnDescriptor(builder.toString(), type, property.getType().getCanonicalName());
} else {
descriptor = new ColumnDescriptor(builder.toString(), type);
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/01815158/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectIT.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectIT.java b/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectIT.java
index fe4edba..bf1a6d6 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectIT.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectIT.java
@@ -21,6 +21,7 @@ package org.apache.cayenne.query;
import java.math.BigDecimal;
import java.math.BigInteger;
+import java.sql.SQLException;
import java.sql.Types;
import java.text.DateFormat;
import java.util.Date;
@@ -45,6 +46,7 @@ import org.apache.cayenne.test.jdbc.TableHelper;
import org.apache.cayenne.testdo.testmap.Artist;
import org.apache.cayenne.testdo.testmap.Gallery;
import org.apache.cayenne.testdo.testmap.Painting;
+import org.apache.cayenne.testdo.testmap.PaintingInfo;
import org.apache.cayenne.unit.PostgresUnitDbAdapter;
import org.apache.cayenne.unit.UnitDbAdapter;
import org.apache.cayenne.unit.di.server.CayenneProjects;
@@ -1074,4 +1076,21 @@ public class ColumnSelectIT extends ServerCase {
}
}
+ @Test
+ public void testByteArraySelect() throws SQLException {
+ new TableHelper(dbHelper, "PAINTING_INFO")
+ .setColumns("IMAGE_BLOB", "PAINTING_ID")
+ .setColumnTypes(Types.LONGVARBINARY, Types.INTEGER)
+ .insert(new byte[]{(byte)1, (byte)2, (byte)3, (byte)4, (byte)5}, 1)
+ .insert(new byte[]{(byte)5, (byte)4, (byte)3, (byte)2}, 2);
+
+ List<byte[]> blobs = ObjectSelect.columnQuery(PaintingInfo.class, PaintingInfo.IMAGE_BLOB)
+ .orderBy("db:" + PaintingInfo.PAINTING_ID_PK_COLUMN)
+ .select(context);
+
+ assertEquals(2, blobs.size());
+ assertArrayEquals(new byte[]{(byte)1, (byte)2, (byte)3, (byte)4, (byte)5}, blobs.get(0));
+ assertArrayEquals(new byte[]{(byte)5, (byte)4, (byte)3, (byte)2}, blobs.get(1));
+ }
+
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/01815158/docs/doc/src/main/resources/RELEASE-NOTES.txt
----------------------------------------------------------------------
diff --git a/docs/doc/src/main/resources/RELEASE-NOTES.txt b/docs/doc/src/main/resources/RELEASE-NOTES.txt
index a76e0b3..9ac29b5 100644
--- a/docs/doc/src/main/resources/RELEASE-NOTES.txt
+++ b/docs/doc/src/main/resources/RELEASE-NOTES.txt
@@ -21,6 +21,7 @@ CAY-2379 Modeler: Visualization issue after an undo action for a deleted ObjAttr
CAY-2380 ReferenceMap should not store or return null values
CAY-2382 Lack of synchronization in DataContext serialization
CAY-2384 Modeler: Visualization issue after an undo action for a deleted ObjRelationship
+CAY-2387 Can't select byte[] property with ColumnSelect
----------------------------------
Release: 4.1.M1