diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeBaseVarchar.java b/ebean-core-type/src/main/java/io/ebean/core/type/ScalarTypeBaseVarchar.java similarity index 84% rename from ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeBaseVarchar.java rename to ebean-core-type/src/main/java/io/ebean/core/type/ScalarTypeBaseVarchar.java index 71785fb3d..99c83561b 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeBaseVarchar.java +++ b/ebean-core-type/src/main/java/io/ebean/core/type/ScalarTypeBaseVarchar.java @@ -1,11 +1,7 @@ -package io.ebeaninternal.server.type; +package io.ebean.core.type; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonParser; -import io.ebean.core.type.DataBinder; -import io.ebean.core.type.DataReader; -import io.ebean.core.type.DocPropertyType; -import io.ebean.core.type.ScalarTypeBase; import java.io.DataInput; import java.io.DataOutput; @@ -17,13 +13,13 @@ import java.sql.Types; * Base ScalarType for types which converts to and from a VARCHAR database * column. */ -abstract class ScalarTypeBaseVarchar extends ScalarTypeBase { +public abstract class ScalarTypeBaseVarchar extends ScalarTypeBase { - ScalarTypeBaseVarchar(Class type) { + public ScalarTypeBaseVarchar(Class type) { super(type, false, Types.VARCHAR); } - ScalarTypeBaseVarchar(Class type, boolean jdbcNative, int jdbcType) { + public ScalarTypeBaseVarchar(Class type, boolean jdbcNative, int jdbcType) { super(type, jdbcNative, jdbcType); } @@ -102,7 +98,8 @@ abstract class ScalarTypeBaseVarchar extends ScalarTypeBase { if (value == null) { dataOutput.writeBoolean(false); } else { - ScalarHelp.writeUTF(dataOutput, convertToDbString(value)); + dataOutput.writeBoolean(true); + dataOutput.writeUTF(convertToDbString(value)); } } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeChar.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeChar.java index 6be7012b6..c7d9760b7 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeChar.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeChar.java @@ -2,6 +2,7 @@ package io.ebeaninternal.server.type; import io.ebean.core.type.DataBinder; import io.ebean.core.type.DataReader; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebeaninternal.server.core.BasicTypeConverter; import java.sql.SQLException; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCharArray.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCharArray.java index 28380b48d..13a06d931 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCharArray.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCharArray.java @@ -1,9 +1,9 @@ package io.ebeaninternal.server.type; -import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonParser; import io.ebean.core.type.DataBinder; import io.ebean.core.type.DataReader; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebeaninternal.server.core.BasicTypeConverter; import java.io.IOException; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCidr.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCidr.java index 6c9f18b82..e355c2936 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCidr.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCidr.java @@ -2,6 +2,7 @@ package io.ebeaninternal.server.type; import io.ebean.config.dbplatform.ExtraDbTypes; import io.ebean.core.type.DataBinder; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebean.types.Cidr; import java.sql.SQLException; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeClass.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeClass.java index f5e45a84e..3fae086ec 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeClass.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeClass.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import javax.persistence.PersistenceException; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCurrency.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCurrency.java index cc2568e43..ad38e6efb 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCurrency.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeCurrency.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.util.Currency; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInet.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInet.java index 122fdcc5a..40f52aca6 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInet.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInet.java @@ -2,6 +2,7 @@ package io.ebeaninternal.server.type; import io.ebean.config.dbplatform.ExtraDbTypes; import io.ebean.core.type.DataBinder; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebean.types.Inet; import java.sql.SQLException; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddress.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddress.java index 613fb7f7c..8d0fefd0a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddress.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddress.java @@ -1,5 +1,6 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebean.text.TextException; import java.net.InetAddress; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddressPostgres.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddressPostgres.java index a4ff9074d..a09e7cfb0 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddressPostgres.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeInetAddressPostgres.java @@ -2,6 +2,7 @@ package io.ebeaninternal.server.type; import io.ebean.config.dbplatform.ExtraDbTypes; import io.ebean.core.type.DataBinder; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebean.text.TextException; import java.net.InetAddress; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeJodaPeriod.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeJodaPeriod.java index 731e44760..abe0c9da3 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeJodaPeriod.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeJodaPeriod.java @@ -1,5 +1,6 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; import org.joda.time.Period; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeLocale.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeLocale.java index 7eb53e37b..5afed0e38 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeLocale.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeLocale.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.util.Locale; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeOffsetTime.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeOffsetTime.java index 72702721b..7807e1118 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeOffsetTime.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeOffsetTime.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.time.OffsetTime; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePath.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePath.java index a5e318881..40c1d948d 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePath.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePath.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.net.URI; import java.net.URISyntaxException; import java.nio.file.Path; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePeriod.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePeriod.java index ceb34c865..91d0e074f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePeriod.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypePeriod.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.time.Period; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeTimeZone.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeTimeZone.java index cae7d2b08..df4798276 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeTimeZone.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeTimeZone.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.util.TimeZone; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURI.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURI.java index f7c9bcc81..56d34d534 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURI.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURI.java @@ -1,5 +1,6 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebean.text.TextException; import java.net.URI; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURL.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURL.java index c93cd2a38..841de15c2 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURL.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeURL.java @@ -1,5 +1,6 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; import io.ebean.text.TextException; import java.net.MalformedURLException; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneId.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneId.java index d1dca2b72..98979a538 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneId.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneId.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.time.ZoneId; /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneOffset.java b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneOffset.java index 2b960af74..17cbfdfb8 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneOffset.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/type/ScalarTypeZoneOffset.java @@ -1,5 +1,7 @@ package io.ebeaninternal.server.type; +import io.ebean.core.type.ScalarTypeBaseVarchar; + import java.time.ZoneOffset; /**