Skip to content

Commit fba9f78

Browse files
author
Gyula Szalai
committed
Fixes Dao..update method generation with Oracle virtual columns
1 parent 037243a commit fba9f78

File tree

2 files changed

+40
-34
lines changed

2 files changed

+40
-34
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# EasyDao Changelog:
22

3+
## 3.2.1
4+
5+
* Fixes Dao.update method generation with Oracle virtual columns
6+
37
## 3.2.0
48

59
* Overriding of the default type map is now possible through a replacement-type.properties #16

easydao-maven-plugin/src/main/resources/hu/vanio/easydao/templates/dao.ftl

+36-34
Original file line numberDiff line numberDiff line change
@@ -264,27 +264,29 @@ ${fieldList?remove_ending(", ")}
264264
List paramsList = new java.util.ArrayList();
265265

266266
<#list t.nonPkFields as field>
267-
<#if field.array>
268-
<#if e.databaseType.name() == 'POSTGRESQL9'>
269-
paramsList.add(hu.vanio.easydao.core.postgresql.PostgreSqlArrayFactory.getForType(instance.get${field.javaName?cap_first}()));
270-
<#else>
271-
FIXME: array handling is not yet implemented for Oracle
272-
</#if>
273-
<#else>
274-
<#if field.blob||field.clob>
275-
if (updateLobFields) { paramsList.add(instance.get${field.javaName?cap_first}()); }
267+
<#if !field.virtual>
268+
<#if field.array>
269+
<#if e.databaseType.name() == 'POSTGRESQL9'>
270+
paramsList.add(hu.vanio.easydao.core.postgresql.PostgreSqlArrayFactory.getForType(instance.get${field.javaName?cap_first}()));
271+
<#else>
272+
FIXME: array handling is not yet implemented for Oracle
273+
</#if>
276274
<#else>
277-
<#if field.enumerated>
278-
<#if field.irregularEnum>
279-
paramsList.add(instance.get${field.javaName?cap_first}().getEnumName());
280-
<#else>
281-
paramsList.add(instance.get${field.javaName?cap_first}().name());
282-
</#if>
275+
<#if field.blob||field.clob>
276+
if (updateLobFields) { paramsList.add(instance.get${field.javaName?cap_first}()); }
283277
<#else>
284-
<#if field.customType>
285-
paramsList.add(${field.typeConverterClass}.convertValue(instance.get${field.javaName?cap_first}()));
278+
<#if field.enumerated>
279+
<#if field.irregularEnum>
280+
paramsList.add(instance.get${field.javaName?cap_first}().getEnumName());
281+
<#else>
282+
paramsList.add(instance.get${field.javaName?cap_first}().name());
283+
</#if>
286284
<#else>
287-
paramsList.add(instance.get${field.javaName?cap_first}());
285+
<#if field.customType>
286+
paramsList.add(${field.typeConverterClass}.convertValue(instance.get${field.javaName?cap_first}()));
287+
<#else>
288+
paramsList.add(instance.get${field.javaName?cap_first}());
289+
</#if>
288290
</#if>
289291
</#if>
290292
</#if>
@@ -310,28 +312,28 @@ ${fieldList?remove_ending(", ")}
310312
Object[] params = new Object[] {
311313
<#list t.nonPkFields as field>
312314
<#if !field.virtual>
313-
<#if field.array>
314-
<#if e.databaseType.name() == 'POSTGRESQL9'>
315-
hu.vanio.easydao.core.postgresql.PostgreSqlArrayFactory.getForType(instance.get${field.javaName?cap_first}()),
316-
<#else>
317-
FIXME: array handling is not yet implemented for Oracle
318-
</#if>
319-
<#else>
320-
<#if field.enumerated>
321-
<#if field.irregularEnum>
322-
instance.get${field.javaName?cap_first}() != null ? instance.get${field.javaName?cap_first}().getEnumName() : null,
315+
<#if field.array>
316+
<#if e.databaseType.name() == 'POSTGRESQL9'>
317+
hu.vanio.easydao.core.postgresql.PostgreSqlArrayFactory.getForType(instance.get${field.javaName?cap_first}()),
323318
<#else>
324-
instance.get${field.javaName?cap_first}() != null ? instance.get${field.javaName?cap_first}().name() : null,
319+
FIXME: array handling is not yet implemented for Oracle
325320
</#if>
326-
<#else>
327-
<#if field.customType>
328-
${field.typeConverterClass}.convertValue(instance.get${field.javaName?cap_first}()),
321+
<#else>
322+
<#if field.enumerated>
323+
<#if field.irregularEnum>
324+
instance.get${field.javaName?cap_first}() != null ? instance.get${field.javaName?cap_first}().getEnumName() : null,
325+
<#else>
326+
instance.get${field.javaName?cap_first}() != null ? instance.get${field.javaName?cap_first}().name() : null,
327+
</#if>
329328
<#else>
330-
instance.get${field.javaName?cap_first}(),
329+
<#if field.customType>
330+
${field.typeConverterClass}.convertValue(instance.get${field.javaName?cap_first}()),
331+
<#else>
332+
instance.get${field.javaName?cap_first}(),
333+
</#if>
331334
</#if>
332335
</#if>
333336
</#if>
334-
</#if>
335337
</#list>
336338
<#if t.compositePk>
337339
<#list t.pkFields as field>

0 commit comments

Comments
 (0)