modify array handling

This commit is contained in:
Shinsuke Sugaya 2015-10-01 12:24:57 +09:00
parent 9488d39f0d
commit bad0dfdf53
6 changed files with 32 additions and 7 deletions

View file

@ -44,7 +44,6 @@ $manager.makeDirectory($request.generateDirPath)
#end
#end
#elseif ($request.isResourceTypeElasticsearch())
#set ($arrayColumnNames = ["groups", "roles"])
#if ($request.requestName.startsWith("Elasticsearch"))
##
## <<< Elasticsearch Schema Gen >>>

View file

@ -55,10 +55,11 @@ public abstract class Bs${table.camelizedName}Bhv extends AbstractBehavior<${tab
protected <RESULT extends ${table.camelizedName}> RESULT createEntity(Map<String, Object> source, Class<? extends RESULT> entityType) {
try {
final RESULT result = entityType.newInstance();
#set ($tableMetaSettings = ${table.indexSettings.settings.index.dbflute.get($table.name)})
#foreach ($column in $table.columnList)
#if ($column.isNormalColumn)
#set ($javaNative = ${column.type})
#if ($arrayColumnNames.contains($column.name))
#if ($tableMetaSettings.properties.get($column.name).array)
result.set${column.capCamelName}(to${javaNative}Array(source.get("${column.name}")));
#else
result.set${column.capCamelName}(DfTypeUtil.to$javaNative(source.get("${column.name}")));

View file

@ -33,13 +33,14 @@ public class Bs${table.camelizedName} extends AbstractEntity {
// ===================================================================================
// Attribute
// =========
#set ($tableMetaSettings = ${table.indexSettings.settings.index.dbflute.get($table.name)})
#foreach ($column in $table.columnList)
#if ($column.isNormalColumn)
#set ($javaNative = ${column.type})
#elseif ($column.isRefColumn)
#set ($javaNative = ${column.camelizedName})
#end
#if ($arrayColumnNames.contains($column.name))#set($arrayType = "[]")#else#set($arrayType = "")#end
#if ($tableMetaSettings.properties.get($column.name).array)#set($arrayType = "[]")#else#set($arrayType = "")#end
#if ($column.name != $idColumn)
/** ${column.name} */
protected ${javaNative}${arrayType} ${column.uncapCamelName};
@ -60,7 +61,7 @@ public class Bs${table.camelizedName} extends AbstractEntity {
#elseif ($column.isRefColumn)
#set ($javaNative = ${column.camelizedName})
#end
#if ($arrayColumnNames.contains($column.name))#set($arrayType = "[]")#else#set($arrayType = "")#end
#if ($tableMetaSettings.properties.get($column.name).array)#set($arrayType = "[]")#else#set($arrayType = "")#end
#if ($column.name != $idColumn)
#if ($javaNative == "boolean")
public ${javaNative} is${column.capCamelName}() {

View file

@ -38,13 +38,14 @@ public class ${table.camelizedName}Dbm extends AbstractDBMeta {
// ---------------
protected final Map<String, PropertyGateway> _epgMap = newHashMap();
{
#set ($tableMetaSettings = ${table.indexSettings.settings.index.dbflute.get($table.name)})
#foreach ($col in $table.columnList)
#if ($col.isNormalColumn)
#set ($javaNative = ${col.type})
#elseif ($col.isRefColumn)
#set ($javaNative = ${col.camelizedName})
#end
#if ($arrayColumnNames.contains($col.name))
#if ($tableMetaSettings.properties.get($col.name).array)
setupEpg(_epgMap, et-> ((${table.camelizedName})et).get${col.camelizedName}(),(et,vl)->((${table.camelizedName}) et).set${col.camelizedName}((${javaNative}[])vl), "${col.uncapCamelName}");
#else
setupEpg(_epgMap, et-> ((${table.camelizedName})et).get${col.camelizedName}(),(et,vl)->((${table.camelizedName}) et).set${col.camelizedName}(DfTypeUtil.to${javaNative}(vl)), "${col.uncapCamelName}");
@ -66,7 +67,7 @@ public class ${table.camelizedName}Dbm extends AbstractDBMeta {
#elseif ($col.isRefColumn)
#set ($javaNative = ${col.camelizedName})
#end
#if ($arrayColumnNames.contains($col.name))#set($arrayType = "[]")#else#set($arrayType = "")#end
#if ($tableMetaSettings.properties.get($col.name).array)#set($arrayType = "[]")#else#set($arrayType = "")#end
protected final ColumnInfo _column${col.camelizedName} = cci("${col.name}", "${col.name}", null, null, ${javaNative}${arrayType}.class, "${col.uncapCamelName}", null, false, false, false, "${col.type}", 0, 0, null, false, null, null, null, null, null, false);
#end

View file

@ -71,7 +71,18 @@
"settings" : {
"index" : {
"refresh_interval" : "1s",
"number_of_shards" : "5",
"dbflute" : {
"user" : {
"properties" : {
"groups" : {
"array" : "true"
},
"roles" : {
"array" : "true"
}
}
}
},
"number_of_replicas" : "0"
}
}

View file

@ -4,6 +4,18 @@
"refresh_interval": "1s",
"number_of_shards": 5,
"number_of_replicas": 0
},
"dbflute": {
"user": {
"properties": {
"groups": {
"array": true
},
"roles": {
"array": true
}
}
}
}
}
}