Author: gk
Date: Mon Dec 20 17:41:20 2021
New Revision: 1896195

URL: http://svn.apache.org/viewvc?rev=1896195&view=rev
Log:
- use Java 8 streams, Java 7 switches, extract code duplicates into same named 
methods.
- fix log4j old versions, fix plugin configuration elements in pom.
- upgrade ant to 1.10.12 due to CVE-2021-36373
- cleanup / align assembly descriptors
- remove log4j2.xml from src/ressources

Removed:
    db/torque/trunk/torque-maven-plugin/src/main/resources/log4j2.xml
Modified:
    db/torque/trunk/README.md
    db/torque/trunk/pom.xml
    db/torque/trunk/src/main/assembly/bin-with-dependencies.xml
    db/torque/trunk/src/main/assembly/src.xml
    db/torque/trunk/torque-ant-tasks/pom.xml
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/DirectoryConfigurationProvider.java
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/outlet/JavaOutletSaxHandler.java
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/ConfigurableClassSaxHandler.java
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/FileSourceSaxHandler.java
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/control/Controller.java
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/jdbc/JdbcMetadataSource.java
    
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/stream/CombinedFileSource.java
    db/torque/trunk/torque-runtime/src/changes/changes.xml
    
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/CurrentDateTimePsPartBuilder.java
    
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/LikeBuilder.java
    
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/NullValueBuilder.java
    
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/AvgHelper.java
    
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/CountHelper.java
    
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/SummaryHelper.java
    
db/torque/trunk/torque-site/src/site/xdoc/documentation/tutorial/orm/step6-ant.xml
    db/torque/trunk/torque-templates/src/changes/changes.xml
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformPostgresqlImpl.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/FindHelper.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/OMColumnJavaTransformer.java
    
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/mapInit/DatabaseMapInitTransformer.java

Modified: db/torque/trunk/README.md
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/README.md?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/README.md (original)
+++ db/torque/trunk/README.md Mon Dec 20 17:41:20 2021
@@ -65,11 +65,11 @@ Two kinds of tests exist. Module "intern
 
 *Torque-test* allows to test against databases and provides a 
[README](torque-test/README.md) of its own. You need the ant tool installed.
 
-You may start Torque-Test module in the torque-test folder by this command 
(with default database derbyEmbedded) 
+You may start Torque-Test module in the **torque-test folder** by this command 
(with default database derbyEmbedded) 
 
     mvn clean install -PderbyEmbedded,beans,managers
     
-or in root folder (with default database derbyEmbedded-jenkins and activated 
module test)
+or in **root folder** (with default database **derbyEmbedded-jenkins** and 
activated module test
 
     mvn clean install -PderbyEmbedded-jenkins,beans,managers,test
 
@@ -119,9 +119,9 @@ Public Key is added to KEYS.
 
 - Deploy artifacts
 
-You will be asked for your gpg passphrase durign the build process, if not 
provided otherwise.
+You will be asked for your gpg passphrase during the build process, if not 
provided otherwise.
 
-    mvn package deploy
+    mvn package deploy 
-Papache-release,derbyEmbedded-jenkins,beans,managers,owasp
 
 - Release modules
 

Modified: db/torque/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/pom.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/pom.xml (original)
+++ db/torque/trunk/pom.xml Mon Dec 20 17:41:20 2021
@@ -492,15 +492,12 @@
                         <format>html</format>
                         <format>xml</format>
                     </formats>
+                    <check/>
                 </configuration>
             </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-pmd-plugin</artifactId>
-                <configuration>
-                    <linkXref>true</linkXref>
-                    <targetJdk>${maven.compiler.source}</targetJdk>
-                </configuration>
             </plugin>
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
@@ -547,7 +544,7 @@
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-pmd-plugin</artifactId>
-                    <version>3.13.0</version>
+                    <version>3.15.0</version>
                     <configuration>
                         <linkXref>true</linkXref>
                         <targetJdk>${maven.compiler.source}</targetJdk>
@@ -605,7 +602,7 @@
                     <artifactId>maven-javadoc-plugin</artifactId>
                     <version>3.3.1</version>
                     <configuration>
-                        <additionalparam>-Xdoclint:none</additionalparam>
+                        <doclint>none</doclint>
                         <source>1.8</source>
                     </configuration>
                     <executions>
@@ -654,7 +651,7 @@
                 </reportSets>
                 <configuration>
                     <!-- test project javadoc is not needed in the main site 
and javadoc fails during the release build, so skip -->
-                    <skipModules>torque-test</skipModules>
+                    <skippedModules>torque-test</skippedModules>
                 </configuration>
             </plugin>
             <plugin>
@@ -733,6 +730,7 @@
 
         <torque.compiler.fork>false</torque.compiler.fork>
         <torque.compiler.compilerVersion>1.8</torque.compiler.compilerVersion>
+        <!--suppress UnresolvedMavenProperty -->
         <torque.compiler.javac>${JAVA_HOME}/bin/javac</torque.compiler.javac>
         
         <project.build.outputTimestamp>1</project.build.outputTimestamp>

Modified: db/torque/trunk/src/main/assembly/bin-with-dependencies.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/src/main/assembly/bin-with-dependencies.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/src/main/assembly/bin-with-dependencies.xml (original)
+++ db/torque/trunk/src/main/assembly/bin-with-dependencies.xml Mon Dec 20 
17:41:20 2021
@@ -17,9 +17,8 @@
  specific language governing permissions and limitations
  under the License.
 -->
-<assembly 
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0";
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-  
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0
 http://maven.apache.org/xsd/assembly-1.1.0.xsd";>
+<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+  xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.0 
http://maven.apache.org/xsd/assembly-2.1.0.xsd";>
   <id>bin</id>
   <formats>
     <format>tar.gz</format>
@@ -27,10 +26,11 @@
   </formats>
   <fileSets>
     <fileSet>
+      <directory>${project.basedir}</directory>
       <includes>
-        <include>${project.basedir}/README*</include>
-        <include>${project.basedir}/LICENSE*</include>
-        <include>${project.basedir}/NOTICE*</include>
+        <include>README*</include>
+        <include>LICENSE*</include>
+        <include>NOTICE*</include>
       </includes>
     </fileSet>
     <fileSet>
@@ -38,7 +38,7 @@
       <includes>
         <include>*.jar</include>
       </includes>
-      <outputDirectory>.</outputDirectory>
+      <outputDirectory></outputDirectory>
     </fileSet>
   </fileSets>
   <dependencySets>

Modified: db/torque/trunk/src/main/assembly/src.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/src/main/assembly/src.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/src/main/assembly/src.xml (original)
+++ db/torque/trunk/src/main/assembly/src.xml Mon Dec 20 17:41:20 2021
@@ -1,6 +1,3 @@
-<assembly 
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"; 
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-  
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0
 http://maven.apache.org/xsd/assembly-1.1.0.xsd";>
 <!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
@@ -19,6 +16,8 @@
  specific language governing permissions and limitations
  under the License.
 -->
+<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+  xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.0 
http://maven.apache.org/xsd/assembly-2.1.0.xsd";>
   <id>src</id>
   <formats>
     <format>tar.gz</format>
@@ -27,7 +26,7 @@
   <fileSets>
     <fileSet>
       <directory>${project.basedir}</directory>
-      <outputDirectory>/</outputDirectory>
+      <outputDirectory></outputDirectory>
       <useDefaultExcludes>true</useDefaultExcludes>
       <excludes>
         <exclude>**/.project</exclude>

Modified: db/torque/trunk/torque-ant-tasks/pom.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-ant-tasks/pom.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/torque-ant-tasks/pom.xml (original)
+++ db/torque/trunk/torque-ant-tasks/pom.xml Mon Dec 20 17:41:20 2021
@@ -53,7 +53,7 @@
     <dependency>
       <groupId>org.apache.ant</groupId>
       <artifactId>ant</artifactId>
-      <version>1.10.9</version>
+      <version>1.10.12</version>
       <scope>provided</scope>
       <exclusions> 
         <exclusion>

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/DirectoryConfigurationProvider.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/DirectoryConfigurationProvider.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/DirectoryConfigurationProvider.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/DirectoryConfigurationProvider.java
 Mon Dec 20 17:41:20 2021
@@ -26,7 +26,9 @@ import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collection;
+import java.util.stream.Collectors;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -169,12 +171,11 @@ extends AbstractConfigurationProvider
         File[] sourceFiles = outletConfigDir.listFiles();
         if ( sourceFiles != null )
         {
-               for ( File srcFile : sourceFiles ) {
-                   if (!srcFile.isDirectory() && 
srcFile.getPath().endsWith("xml"))
-                   {
-                       result.add(srcFile.getName());
-                   }
-               }
+            result =
+                    Arrays.stream(sourceFiles)
+                            .filter(srcFile -> !srcFile.isDirectory() && 
srcFile.getPath().endsWith("xml"))
+                            .map(File::getName)
+                            .collect(Collectors.toCollection(ArrayList::new));
         }
         return result;
     }

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/outlet/JavaOutletSaxHandler.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/outlet/JavaOutletSaxHandler.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/outlet/JavaOutletSaxHandler.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/outlet/JavaOutletSaxHandler.java
 Mon Dec 20 17:41:20 2021
@@ -303,17 +303,7 @@ class JavaOutletSaxHandler extends Outle
                 BeanUtils.copyProperty(
                         getOutlet(), propertyName, propertyValue.toString());
             }
-            catch (InvocationTargetException e)
-            {
-                throw new SAXException("error while setting Property "
-                        + propertyName
-                        + " for java outlet "
-                        + getOutlet().getName()
-                        + " with value "
-                        + propertyValue.toString(),
-                        e);
-            }
-            catch (IllegalAccessException e)
+            catch (InvocationTargetException | IllegalAccessException e)
             {
                 throw new SAXException("error while setting Property "
                         + propertyName

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/ConfigurableClassSaxHandler.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/ConfigurableClassSaxHandler.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/ConfigurableClassSaxHandler.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/ConfigurableClassSaxHandler.java
 Mon Dec 20 17:41:20 2021
@@ -215,17 +215,7 @@ public class ConfigurableClassSaxHandler
                         propertyName,
                         propertyValue);
             }
-            catch (InvocationTargetException e)
-            {
-                throw new SAXException("error while setting Property "
-                        + propertyName
-                        + " for java transformer "
-                        + configuredClass.getClass().getName()
-                        + " with value "
-                        + propertyValue.toString(),
-                        e);
-            }
-            catch (IllegalAccessException e)
+            catch (InvocationTargetException | IllegalAccessException e)
             {
                 throw new SAXException("error while setting Property "
                         + propertyName

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/FileSourceSaxHandler.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/FileSourceSaxHandler.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/FileSourceSaxHandler.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/configuration/source/FileSourceSaxHandler.java
 Mon Dec 20 17:41:20 2021
@@ -100,29 +100,28 @@ public class FileSourceSaxHandler extend
             Attributes attributes)
                     throws SAXException
     {
-        if (rawName.equals(INCLUDE_TAG))
+        switch (rawName)
         {
-            currentInclude = new StringBuilder();
-        }
-        else if (rawName.equals(EXCLUDE_TAG))
-        {
-            currentExclude = new StringBuilder();
-        }
-        else if (rawName.equals(SOURCE_TAG))
-        {
-            super.startElement(uri, localName, rawName, attributes);
-            format = attributes.getValue(FORMAT_ATTRIBUTE);
-            if (attributes.getValue(COMBINE_FILES_ATTRIBUTE) != null)
-            {
-                combineFiles = SaxHelper.getBooleanAttribute(
-                        COMBINE_FILES_ATTRIBUTE,
-                        attributes,
-                        "the element " + SOURCE_TAG);
-            }
-        }
-        else
-        {
-            super.startElement(uri, localName, rawName, attributes);
+            case INCLUDE_TAG:
+                currentInclude = new StringBuilder();
+                break;
+            case EXCLUDE_TAG:
+                currentExclude = new StringBuilder();
+                break;
+            case SOURCE_TAG:
+                super.startElement(uri, localName, rawName, attributes);
+                format = attributes.getValue(FORMAT_ATTRIBUTE);
+                if (attributes.getValue(COMBINE_FILES_ATTRIBUTE) != null)
+                {
+                    combineFiles = SaxHelper.getBooleanAttribute(
+                            COMBINE_FILES_ATTRIBUTE,
+                            attributes,
+                            "the element " + SOURCE_TAG);
+                }
+                break;
+            default:
+                super.startElement(uri, localName, rawName, attributes);
+                break;
         }
     }
 
@@ -133,63 +132,62 @@ public class FileSourceSaxHandler extend
     public void endElement(String uri, String localName, String rawName)
             throws SAXException
     {
-        if (rawName.equals(INCLUDE_TAG))
-        {
-            includes.add(currentInclude.toString());
-            currentInclude = null;
-        }
-        else if (rawName.equals(EXCLUDE_TAG))
-        {
-            excludes.add(currentExclude.toString());
-            currentExclude = null;
-        }
-        else if (rawName.equals(SOURCE_TAG))
+        switch (rawName)
         {
-            try
-            {
-                StreamSourceFormat sourceFormat = null;
-                if (format != null)
+            case INCLUDE_TAG:
+                includes.add(currentInclude.toString());
+                currentInclude = null;
+                break;
+            case EXCLUDE_TAG:
+                excludes.add(currentExclude.toString());
+                currentExclude = null;
+                break;
+            case SOURCE_TAG:
+                try
                 {
-                    Set<StreamSourceFormat> sourceFormats
-                    = getConfigurationHandlers().getStreamSourceFormats();
-                    for (StreamSourceFormat candidate : sourceFormats)
+                    StreamSourceFormat sourceFormat = null;
+                    if (format != null)
                     {
-                        if (format.equals(candidate.getKey()))
+                        Set<StreamSourceFormat> sourceFormats
+                                = 
getConfigurationHandlers().getStreamSourceFormats();
+                        for (StreamSourceFormat candidate : sourceFormats)
                         {
-                            sourceFormat = candidate;
-                            break;
+                            if (format.equals(candidate.getKey()))
+                            {
+                                sourceFormat = candidate;
+                                break;
+                            }
+                        }
+                        if (sourceFormat == null)
+                        {
+                            throw new SAXException("Unknown source format : "
+                                    + format
+                                    + " Known types are: " + sourceFormats);
                         }
                     }
-                    if (sourceFormat == null)
-                    {
-                        throw new SAXException("Unknown source format : "
-                                + format
-                                + " Known types are: " + sourceFormats);
-                    }
-                }
-                Fileset sourceFileset = new Fileset(
-                        getUnitDescriptor().getProjectPaths()
-                        .getDefaultSourcePath(),
-                        includes,
-                        excludes);
+                    Fileset sourceFileset = new Fileset(
+                            getUnitDescriptor().getProjectPaths()
+                                    .getDefaultSourcePath(),
+                            includes,
+                            excludes);
 
-                sourceProvider = new FileSourceProvider(
-                        sourceFormat,
-                        sourceFileset,
-                        combineFiles);
-            }
-            catch (ConfigurationException e)
-            {
-                throw new SAXException("Could not create source: "
-                        + e.getMessage(),
-                        e);
-            }
-            super.endElement(uri, localName, rawName);
-            finished();
-        }
-        else
-        {
-            super.endElement(uri, localName, rawName);
+                    sourceProvider = new FileSourceProvider(
+                            sourceFormat,
+                            sourceFileset,
+                            combineFiles);
+                }
+                catch (ConfigurationException e)
+                {
+                    throw new SAXException("Could not create source: "
+                            + e.getMessage(),
+                            e);
+                }
+                super.endElement(uri, localName, rawName);
+                finished();
+                break;
+            default:
+                super.endElement(uri, localName, rawName);
+                break;
         }
     }
 

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/control/Controller.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/control/Controller.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/control/Controller.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/control/Controller.java
 Mon Dec 20 17:41:20 2021
@@ -489,16 +489,10 @@ public class Controller
         }
         log.debug("Processing new model " + model);
 
-        ExistingTargetStrategy existingTargetStrategy = null;
-        for (final ExistingTargetStrategy candidate : 
EXISTING_TARGET_STRATEGIES)
-        {
-            if (candidate.getStrategyName().equals(
-                    output.getExistingTargetStrategy()))
-            {
-                existingTargetStrategy = candidate;
-                break;
-            }
-        }
+        ExistingTargetStrategy existingTargetStrategy = 
EXISTING_TARGET_STRATEGIES.stream()
+                .filter(candidate -> candidate.getStrategyName().equals(
+                output.getExistingTargetStrategy()))
+                .findFirst().orElse(null);
         if (existingTargetStrategy == null)
         {
             throw new ControllerException("existingTargetStrategy "

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/jdbc/JdbcMetadataSource.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/jdbc/JdbcMetadataSource.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/jdbc/JdbcMetadataSource.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/jdbc/JdbcMetadataSource.java
 Mon Dec 20 17:41:20 2021
@@ -34,6 +34,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.stream.IntStream;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.logging.Log;
@@ -196,86 +197,12 @@ public class JdbcMetadataSource extends
                 Set<String> primaryKeys
                 = getPrimaryKeys(dbMetaData, tableName, schema);
 
-                for (ColumnMetadata col : columns)
-                {
-                    String name = col.getName();
-                    Integer type = col.getSqlType();
-                    int size = col.getSize().intValue();
-                    int scale = col.getDecimalDigits().intValue();
-
-                    Integer nullType = col.getNullType();
-                    String defValue = col.getDefValue();
-
-                    SourceElement column = new SourceElement("column");
-                    column.setAttribute("name", name);
-
-                    SchemaType schemaType = SchemaType.getByJdbcType(type);
-                    if (schemaType != null)
-                    {
-                        column.setAttribute("type", schemaType.toString());
-                    }
-
-                    if (size > 0 && (type.intValue() == Types.CHAR
-                            || type.intValue() == Types.VARCHAR
-                            || type.intValue() == Types.LONGVARCHAR
-                            || type.intValue() == Types.DECIMAL
-                            || type.intValue() == Types.NUMERIC))
-                    {
-                        column.setAttribute("size", String.valueOf(size));
-                    }
-
-                    if (scale > 0 && (type.intValue() == Types.DECIMAL
-                            || type.intValue() == Types.NUMERIC))
-                    {
-                        column.setAttribute("scale", String.valueOf(scale));
-                    }
-
-                    if (primaryKeys.contains(name))
-                    {
-                        column.setAttribute("primaryKey", "true");
-                    }
-                    else if (nullType.intValue() == 0)
-                    {
-                        column.setAttribute("required", "true");
-                    }
-
-                    if (StringUtils.isNotEmpty(defValue))
-                    {
-                        // trim out parens & quotes out of def value.
-                        // makes sense for MSSQL. not sure about others.
-                        if (defValue.startsWith("(") && defValue.endsWith(")"))
-                        {
-                            defValue = defValue.substring(1, defValue.length() 
- 1);
-                        }
-
-                        if (defValue.startsWith("'") && defValue.endsWith("'"))
-                        {
-                            defValue = defValue.substring(1, defValue.length() 
- 1);
-                        }
-
-                        column.setAttribute("default", defValue);
-                    }
-                    table.getChildren().add(column);
-                }
+                addTableColumns(table, columns, primaryKeys);
 
                 // Foreign keys for this table.
                 Collection<ForeignKeyMetadata> forgnKeys
                 = getForeignKeys(dbMetaData, tableName, schema);
-                for (ForeignKeyMetadata foreignKeyMetadata : forgnKeys)
-                {
-                    SourceElement fk = new SourceElement("foreign-key");
-                    fk.setAttribute(
-                            "foreignTable",
-                            foreignKeyMetadata.getReferencedTable());
-                    for (int m = 0; m < 
foreignKeyMetadata.getLocalColumns().size(); m++)
-                    {
-                        SourceElement ref = new SourceElement("reference");
-                        ref.setAttribute("local", 
foreignKeyMetadata.getLocalColumns().get(m));
-                        ref.setAttribute("foreign", 
foreignKeyMetadata.getForeignColumns().get(m));
-                        fk.getChildren().add(ref);
-                    }
-                    table.getChildren().add(fk);
-                }
+                addTableForeignKeys(table, forgnKeys);
             }
         }
         catch (SQLException e)
@@ -287,6 +214,85 @@ public class JdbcMetadataSource extends
         return rootElement;
     }
 
+    private void addTableForeignKeys(SourceElement table, 
Collection<ForeignKeyMetadata> forgnKeys) {
+        for (ForeignKeyMetadata foreignKeyMetadata : forgnKeys)
+        {
+            SourceElement fk = new SourceElement("foreign-key");
+            fk.setAttribute(
+                    "foreignTable",
+                    foreignKeyMetadata.getReferencedTable());
+            for (int m = 0; m < foreignKeyMetadata.getLocalColumns().size(); 
m++)
+            {
+                SourceElement ref = new SourceElement("reference");
+                ref.setAttribute("local", 
foreignKeyMetadata.getLocalColumns().get(m));
+                ref.setAttribute("foreign", 
foreignKeyMetadata.getForeignColumns().get(m));
+                fk.getChildren().add(ref);
+            }
+            table.getChildren().add(fk);
+        }
+    }
+
+    private void addTableColumns(SourceElement table, List<ColumnMetadata> 
columns, Set<String> primaryKeys) {
+        for (ColumnMetadata col : columns)
+        {
+            String name = col.getName();
+            Integer type = col.getSqlType();
+            int size = col.getSize().intValue();
+            int scale = col.getDecimalDigits().intValue();
+
+            Integer nullType = col.getNullType();
+            String defValue = col.getDefValue();
+
+            SourceElement column = new SourceElement("column");
+            column.setAttribute("name", name);
+
+            SchemaType schemaType = SchemaType.getByJdbcType(type);
+            if (schemaType != null)
+            {
+                column.setAttribute("type", schemaType.toString());
+            }
+
+            if (size > 0 && (IntStream.of(Types.CHAR, Types.VARCHAR, 
Types.LONGVARCHAR, Types.DECIMAL,
+                    Types.NUMERIC).anyMatch(j -> type.intValue() == j)) )
+            {
+                column.setAttribute("size", String.valueOf(size));
+            }
+
+            if (scale > 0 && (IntStream.of( Types.DECIMAL, Types.NUMERIC))
+                    .anyMatch(j -> j == type.intValue()) )
+            {
+                column.setAttribute("scale", String.valueOf(scale));
+            }
+
+            if (primaryKeys.contains(name))
+            {
+                column.setAttribute("primaryKey", "true");
+            }
+            else if (nullType.intValue() == 0)
+            {
+                column.setAttribute("required", "true");
+            }
+
+            if (StringUtils.isNotEmpty(defValue))
+            {
+                // trim out parens & quotes out of def value.
+                // makes sense for MSSQL. not sure about others.
+                if (defValue.startsWith("(") && defValue.endsWith(")"))
+                {
+                    defValue = defValue.substring(1, defValue.length() - 1);
+                }
+
+                if (defValue.startsWith("'") && defValue.endsWith("'"))
+                {
+                    defValue = defValue.substring(1, defValue.length() - 1);
+                }
+
+                column.setAttribute("default", defValue);
+            }
+            table.getChildren().add(column);
+        }
+    }
+
     @Override
     public String getDescription()
     {

Modified: 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/stream/CombinedFileSource.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/stream/CombinedFileSource.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/stream/CombinedFileSource.java
 (original)
+++ 
db/torque/trunk/torque-generator/src/main/java/org/apache/torque/generator/source/stream/CombinedFileSource.java
 Mon Dec 20 17:41:20 2021
@@ -24,6 +24,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -62,7 +63,7 @@ public class CombinedFileSource extends
     /**
      * The log of the class.
      */
-    private static Log log = LogFactory.getLog(CombinedFileSource.class);
+    private static final Log log = LogFactory.getLog(CombinedFileSource.class);
 
     /**
      * The list of contained file sources, not null..
@@ -130,16 +131,12 @@ public class CombinedFileSource extends
     @Override
     public String getDescription()
     {
-        StringBuilder result = new StringBuilder();
-        for (FileSource fileSource : fileSources)
-        {
-            if (result.length() > 0)
-            {
-                result.append(';');
-            }
-            result.append(fileSource.getPath());
-        }
-        return result.toString();
+        String result =
+                fileSources.stream()
+                        .map(fileSource ->
+                                String.valueOf(fileSource.getPath()))
+                        .collect(Collectors.joining(";"));
+        return result;
     }
 
     /**

Modified: db/torque/trunk/torque-runtime/src/changes/changes.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/changes/changes.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/torque-runtime/src/changes/changes.xml (original)
+++ db/torque/trunk/torque-runtime/src/changes/changes.xml Mon Dec 20 17:41:20 
2021
@@ -22,7 +22,9 @@
     <title>Changes</title>
   </properties>
   <body>
-  <release version="5.0-SNAPSHOT" date="in SVN">
+   <release version="5.1-SNAPSHOT" date="in SVN">
+   </release>
+   <release version="5.0-SNAPSHOT" date="2020-09-22">
     <action type="update" dev="gk">
        Use Commons Configuration, which allows for overriding, Update 
Beanutils 1.9.4
     </action>

Modified: 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/CurrentDateTimePsPartBuilder.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/CurrentDateTimePsPartBuilder.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/CurrentDateTimePsPartBuilder.java
 (original)
+++ 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/CurrentDateTimePsPartBuilder.java
 Mon Dec 20 17:41:20 2021
@@ -26,6 +26,8 @@ import org.apache.torque.criteria.SqlEnu
 import org.apache.torque.sql.Query;
 import org.apache.torque.sql.WhereClauseExpression;
 
+import java.util.stream.Stream;
+
 /**
  * A WhereClausePsPartBuilder which handles <code>SqlEnum.CURRENT_DATE</code>
  * and <code>SqlEnum.CURRENT_TIME</code>.
@@ -70,12 +72,9 @@ extends AbstractWhereClausePsPartBuilder
             final WhereClauseExpression whereClauseExpression,
             final Adapter adapter)
     {
-        if (whereClauseExpression.getOperator().equals(
-                SqlEnum.CURRENT_DATE)
-                || whereClauseExpression.getOperator().equals(
-                        SqlEnum.CURRENT_TIME)
-                || whereClauseExpression.getOperator().equals(
-                        SqlEnum.CURRENT_TIMESTAMP))
+        if (Stream.of(SqlEnum.CURRENT_DATE, SqlEnum.CURRENT_TIME, 
SqlEnum.CURRENT_TIMESTAMP)
+                .anyMatch(sqlEnum ->
+                        whereClauseExpression.getOperator().equals(sqlEnum)) )
         {
             return true;
         }

Modified: 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/LikeBuilder.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/LikeBuilder.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/LikeBuilder.java
 (original)
+++ 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/LikeBuilder.java
 Mon Dec 20 17:41:20 2021
@@ -26,6 +26,8 @@ import org.apache.torque.criteria.SqlEnu
 import org.apache.torque.sql.Query;
 import org.apache.torque.sql.WhereClauseExpression;
 
+import java.util.stream.Stream;
+
 /**
  * Builds a PreparedStatementPart from a WhereClauseExpression containing
  * a Like operator.
@@ -232,10 +234,10 @@ public class LikeBuilder extends Abstrac
             final WhereClauseExpression whereClauseExpression,
             final Adapter adapter)
     {
-        if (whereClauseExpression.getOperator().equals(SqlEnum.LIKE)
-                || whereClauseExpression.getOperator().equals(SqlEnum.NOT_LIKE)
-                || whereClauseExpression.getOperator().equals(SqlEnum.ILIKE)
-                || 
whereClauseExpression.getOperator().equals(SqlEnum.NOT_ILIKE))
+        if (Stream.of(
+                SqlEnum.LIKE, SqlEnum.NOT_LIKE, SqlEnum.ILIKE, 
SqlEnum.NOT_ILIKE)
+                .anyMatch(sqlEnum -> whereClauseExpression.getOperator()
+                        .equals(sqlEnum)))
         {
             return true;
         }

Modified: 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/NullValueBuilder.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/NullValueBuilder.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/NullValueBuilder.java
 (original)
+++ 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/sql/whereclausebuilder/NullValueBuilder.java
 Mon Dec 20 17:41:20 2021
@@ -27,6 +27,8 @@ import org.apache.torque.om.ObjectKey;
 import org.apache.torque.sql.Query;
 import org.apache.torque.sql.WhereClauseExpression;
 
+import java.util.stream.Stream;
+
 /**
  * Builds a PreparedStatementPart from a WhereClauseExpression which
  * rhs is null and which has one of the comparison opertator =, &lt;&gt;, or 
!=,
@@ -131,10 +133,9 @@ public class NullValueBuilder extends Ab
         {
             return false;
         }
-        if (whereClauseExpression.getOperator().equals(SqlEnum.EQUAL)
-                || 
whereClauseExpression.getOperator().equals(SqlEnum.NOT_EQUAL)
-                || whereClauseExpression.getOperator().equals(
-                        SqlEnum.ALT_NOT_EQUAL))
+        if (Stream.of(SqlEnum.EQUAL, SqlEnum.NOT_EQUAL, SqlEnum.ALT_NOT_EQUAL)
+                .anyMatch(sqlEnum ->
+                        whereClauseExpression.getOperator().equals(sqlEnum)))
         {
             return true;
         }

Modified: 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/AvgHelper.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/AvgHelper.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/AvgHelper.java
 (original)
+++ 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/AvgHelper.java
 Mon Dec 20 17:41:20 2021
@@ -19,11 +19,11 @@ package org.apache.torque.util;
  * under the License.
  */
 
-/**
- * This is a utility class which eases getting the
- * average of a dataset column with criteria
- *
- * @author <a href="mailto:j...@jivecast.com";>Jeffery Painter</a>
+/*
+  This is a utility class which eases getting the
+  average of a dataset column with criteria
+
+  @author <a href="mailto:j...@jivecast.com";>Jeffery Painter</a>
  * @author <a href="mailto:martin.gou...@sungard.com";>Martin Goulet</a>
  * @author <a href="mailto:eric.lamb...@sungard.com";>Eric Lambert</a>
  * @author <a href="mailto:sebastien.paque...@sungard.com";>Sebastien 
Paquette</a>
@@ -76,7 +76,7 @@ public class AvgHelper
      * Returns the average of a column in a query.
      *
      * @param c Criteria to get the count for.
-     * @param columnName Name of database Column which is averaged.
+     * @param column Name of database Column which is averaged.
      * 
      * @return average of the column matching the query provided
      * @throws TorqueException if the query could not be executed
@@ -92,7 +92,7 @@ public class AvgHelper
      *
      * @param c Criteria to get the count for.
      * @param conn Connection to use
-     * @param columnName Name of database Column which is averaged.
+     * @param column Name of database Column which is averaged.
      * @return average of the column matching the query provided
      * @throws TorqueException if the query could not be executed
      */
@@ -134,14 +134,7 @@ public class AvgHelper
         UniqueList<String> criteriaSelectModifiers
         = c.getSelectModifiers();
 
-        boolean distinct = false;
-        if (criteriaSelectModifiers != null
-                && criteriaSelectModifiers.size() > 0
-                && 
criteriaSelectModifiers.contains(SqlEnum.DISTINCT.toString()))
-        {
-            criteriaSelectModifiers.remove(SqlEnum.DISTINCT.toString());
-            distinct = true;
-        }
+        boolean distinct = isAndSetDistinct(criteriaSelectModifiers);
 
         c.addSelectColumn(new Avg(new ColumnImpl(columnName), distinct));
 
@@ -159,4 +152,16 @@ public class AvgHelper
 
                         return result.get(0);
     }
+
+    private boolean isAndSetDistinct(UniqueList<String> 
criteriaSelectModifiers) {
+        boolean distinct = false;
+        if (criteriaSelectModifiers != null
+                && criteriaSelectModifiers.size() > 0
+                && 
criteriaSelectModifiers.contains(SqlEnum.DISTINCT.toString()))
+        {
+            criteriaSelectModifiers.remove(SqlEnum.DISTINCT.toString());
+            distinct = true;
+        }
+        return distinct;
+    }
 }

Modified: 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/CountHelper.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/CountHelper.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/CountHelper.java
 (original)
+++ 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/CountHelper.java
 Mon Dec 20 17:41:20 2021
@@ -199,14 +199,7 @@ public class CountHelper
         UniqueList<String> criteriaSelectModifiers
         = c.getSelectModifiers();
 
-        boolean distinct = false;
-        if (criteriaSelectModifiers != null
-                && criteriaSelectModifiers.size() > 0
-                && 
criteriaSelectModifiers.contains(SqlEnum.DISTINCT.toString()))
-        {
-            criteriaSelectModifiers.remove(SqlEnum.DISTINCT.toString());
-            distinct = true;
-        }
+        boolean distinct = isAndSetDistinct(criteriaSelectModifiers);
 
         c.addSelectColumn(new Count(new ColumnImpl(columnName), distinct));
 
@@ -224,4 +217,16 @@ public class CountHelper
 
                         return result.get(0);
     }
+
+    private boolean isAndSetDistinct(UniqueList<String> 
criteriaSelectModifiers) {
+        boolean distinct = false;
+        if (criteriaSelectModifiers != null
+                && criteriaSelectModifiers.size() > 0
+                && 
criteriaSelectModifiers.contains(SqlEnum.DISTINCT.toString()))
+        {
+            criteriaSelectModifiers.remove(SqlEnum.DISTINCT.toString());
+            distinct = true;
+        }
+        return distinct;
+    }
 }

Modified: 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/SummaryHelper.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/SummaryHelper.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/SummaryHelper.java
 (original)
+++ 
db/torque/trunk/torque-runtime/src/main/java/org/apache/torque/util/SummaryHelper.java
 Mon Dec 20 17:41:20 2021
@@ -252,15 +252,10 @@ public class SummaryHelper
         c.getSelectColumns().clear();
         c.getGroupByColumns().clear();
 
-        UniqueList<String> criteriaSelectModifiers;
-        criteriaSelectModifiers = c.getSelectModifiers();
+        UniqueList<String> criteriaSelectModifiers
+                = c.getSelectModifiers();
 
-        if (criteriaSelectModifiers != null
-                && criteriaSelectModifiers.size() > 0
-                && 
criteriaSelectModifiers.contains(SqlEnum.DISTINCT.toString()))
-        {
-            criteriaSelectModifiers.remove(SqlEnum.DISTINCT.toString());
-        }
+        setDistinct(criteriaSelectModifiers);
         c.setIgnoreCase(false);
 
         List<Column> cols = getGroupByColumns();
@@ -315,6 +310,15 @@ public class SummaryHelper
         return c;
     }
 
+    private void setDistinct(UniqueList<String> criteriaSelectModifiers) {
+        if (criteriaSelectModifiers != null
+                && criteriaSelectModifiers.size() > 0
+                && 
criteriaSelectModifiers.contains(SqlEnum.DISTINCT.toString()))
+        {
+            criteriaSelectModifiers.remove(SqlEnum.DISTINCT.toString());
+        }
+    }
+
     /**
      * <p>
      * Add a column that will be used to group the aggregate results by.

Modified: 
db/torque/trunk/torque-site/src/site/xdoc/documentation/tutorial/orm/step6-ant.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-site/src/site/xdoc/documentation/tutorial/orm/step6-ant.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-site/src/site/xdoc/documentation/tutorial/orm/step6-ant.xml
 (original)
+++ 
db/torque/trunk/torque-site/src/site/xdoc/documentation/tutorial/orm/step6-ant.xml
 Mon Dec 20 17:41:20 2021
@@ -97,10 +97,10 @@ ant
 
 <source><![CDATA[
 linux:
-java -cp 
target/classes:lib/runtime/commons-beanutils-core-1.9.4.jar:lib/runtime/commons-dbcp2-2.7.jar:lib/runtime/commons-collections-3.2.2.jar:lib/runtime/commons-configuration2-2.7.jar:lib/runtime/commons-lang3-3.10.jar:lib/runtime/commons-logging-1.2.jar:lib/runtime/commons-pool2-2.7.0.jar:lib/runtime/log4j-1.2-api-2.13.3.jar:lib/runtime/mysql-connector-java-8.0.21.jar:lib/runtime/torque-runtime-5.0.jar
 org.apache.torque.tutorial.om.Bookstore
+java -cp 
target/classes:lib/runtime/commons-beanutils-core-1.9.4.jar:lib/runtime/commons-dbcp2-2.7.jar:lib/runtime/commons-collections-3.2.2.jar:lib/runtime/commons-configuration2-2.7.jar:lib/runtime/commons-lang3-3.10.jar:lib/runtime/commons-logging-1.2.jar:lib/runtime/commons-pool2-2.7.0.jar:lib/runtime/log4j-1.2-api-2.16.0.jar:lib/runtime/mysql-connector-java-8.0.27.jar:lib/runtime/torque-runtime-5.0.jar
 org.apache.torque.tutorial.om.Bookstore
 
 windows:
-java -cp 
target/classes;lib/runtime/commons-beanutils-core-1.9.4.jar;lib/runtime/commons-dbcp2-2.7.jar;lib/runtime/commons-collections-3.2.2.jar;lib/runtime/commons-configuration2-2.7.jar;lib/runtime/commons-lang3-3.10.jar;lib/runtime/commons-logging-1.2.jar;lib/runtime/commons-pool2-2.7.0.jar;lib/runtime/log4j-1.2-api-2.13.3.jar;lib/runtime/mysql-connector-java-8.0.21.jar;lib/runtime/torque-runtime-5.0.jar
 org.apache.torque.tutorial.om.Bookstore
+java -cp 
target/classes;lib/runtime/commons-beanutils-core-1.9.4.jar;lib/runtime/commons-dbcp2-2.7.jar;lib/runtime/commons-collections-3.2.2.jar;lib/runtime/commons-configuration2-2.7.jar;lib/runtime/commons-lang3-3.10.jar;lib/runtime/commons-logging-1.2.jar;lib/runtime/commons-pool2-2.7.0.jar;lib/runtime/log4j-1.2-api-2.16.0.jar;lib/runtime/mysql-connector-java-8.0.27.jar;lib/runtime/torque-runtime-5.0.jar
 org.apache.torque.tutorial.om.Bookstore
 
 ]]></source>
 

Modified: db/torque/trunk/torque-templates/src/changes/changes.xml
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/changes/changes.xml?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- db/torque/trunk/torque-templates/src/changes/changes.xml (original)
+++ db/torque/trunk/torque-templates/src/changes/changes.xml Mon Dec 20 
17:41:20 2021
@@ -27,8 +27,9 @@
    <action type="update" dev="gk">
        remove versions in build-helper-maven-plugin, moved to parent 
build-helper v.3.2.0
     </action>
-     <action type="fix" dev="gk">
-      Fix for TORQUE-360
+     <action type="fix" dev="gk" issue="TORQUE-360" due-to="Youngho Cho">
+      Moved package to TorqueSchemaAttributeName, allow relative and absolute 
package in inheritance columns, 
+      update database schema version to 5.1. Thanks to 
     </action>
   </release>
  

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
 Mon Dec 20 17:41:20 2021
@@ -97,7 +97,9 @@ public class PlatformDefaultImpl impleme
     }
     
     /**
-     * Helper function to format date values to a platform-specific string
+     * Helper function to format date values to a platform-specific string.
+     * 
+     * set {@link ZoneId} to GMT timezone.
      * 
      * @param date the Date object
      * @param format the format string

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
 Mon Dec 20 17:41:20 2021
@@ -23,6 +23,8 @@ import org.apache.torque.templates.typem
 import org.apache.torque.templates.typemapping.SizedForBitDataSqlType;
 import org.apache.torque.templates.typemapping.SqlType;
 
+import java.util.Arrays;
+
 /**
  * Derby Platform implementation.
  *
@@ -91,10 +93,10 @@ public class PlatformDerbyImpl extends P
     @Override
     public boolean hasSize(String sqlType)
     {
-        return "NUMERIC".equals(sqlType) || "DECIMAL".equals(sqlType)
-                || "VARCHAR".equals(sqlType) || "CHAR".equals(sqlType)
-                || "BINARY".equals(sqlType) || "VARBINARY".equals(sqlType)
-                || "BLOB".equals(sqlType) || "CLOB".equals(sqlType);
+        return Arrays.asList(
+                "NUMERIC", "DECIMAL", "VARCHAR", "CHAR", "BINARY",
+                        "VARBINARY", "BLOB", "CLOB")
+                .contains(sqlType);
     }
 
     @Override

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
 Mon Dec 20 17:41:20 2021
@@ -19,6 +19,7 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
+import java.util.Arrays;
 import java.util.Date;
 
 import org.apache.torque.templates.typemapping.SchemaType;
@@ -130,12 +131,14 @@ public class PlatformHsqldbImpl extends
      */
     @Override
     public boolean hasSize(String sqlType) {
-        return "VARCHAR".equals(sqlType) || "VARBINARY".equals(sqlType) || 
"BINARY".equals(sqlType);
+        return Arrays.asList("VARCHAR", "VARBINARY", "BINARY")
+                .contains(sqlType);
     }
     
     @Override
     public boolean hasScale(String sqlType) {
-        return "TIMESTAMP".equals(sqlType) || "DATE".equals(sqlType) || 
"TIME".equals(sqlType);
+        return Arrays.asList("TIMESTAMP", "DATE", "TIME")
+                .contains(sqlType);
     }
     
 }

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
 Mon Dec 20 17:41:20 2021
@@ -19,6 +19,7 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
+import java.util.Arrays;
 import java.util.Date;
 
 import org.apache.torque.templates.typemapping.SchemaType;
@@ -93,9 +94,8 @@ public class PlatformMysqlImpl extends P
     @Override
     public boolean hasSize(String sqlType)
     {
-        return !("MEDIUMTEXT".equals(sqlType) || "LONGTEXT".equals(sqlType)
-                || "BLOB".equals(sqlType) || "MEDIUMBLOB".equals(sqlType)
-                || "LONGBLOB".equals(sqlType));
+        return !(Arrays.asList("MEDIUMTEXT", "LONGTEXT", "BLOB", "MEDIUMBLOB", 
"LONGBLOB")
+                .contains(sqlType));
     }
     
     
@@ -107,7 +107,7 @@ public class PlatformMysqlImpl extends P
     @Override
     public boolean hasScale(String sqlType)
     {
-        return "TIMESTAMP".equals(sqlType) || "DATETIME".equals(sqlType) || 
"DATE".equals(sqlType) || "TIME".equals(sqlType);
+        return Arrays.asList("TIMESTAMP", "DATETIME", "DATE", 
"TIME").contains(sqlType);
     }
    
 

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformPostgresqlImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformPostgresqlImpl.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformPostgresqlImpl.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformPostgresqlImpl.java
 Mon Dec 20 17:41:20 2021
@@ -22,6 +22,8 @@ package org.apache.torque.templates.plat
 import org.apache.torque.templates.typemapping.SchemaType;
 import org.apache.torque.templates.typemapping.SqlType;
 
+import java.util.stream.Stream;
+
 /**
  * Postgresql Platform implementation.
  *
@@ -103,9 +105,8 @@ public class PlatformPostgresqlImpl exte
     @Override
     public boolean hasScale(String sqlType)
     {
-        if ("INT2".equalsIgnoreCase(sqlType)
-                || "TEXT".equalsIgnoreCase(sqlType)
-                || "BYTEA".equalsIgnoreCase(sqlType))
+        if (Stream.of("INT2", "TEXT", "BYTEA")
+                .anyMatch(s -> s.equalsIgnoreCase(sqlType)))
         {
             return false;
         }
@@ -118,9 +119,8 @@ public class PlatformPostgresqlImpl exte
     @Override
     public boolean hasSize(String sqlType)
     {
-        if ("INT2".equalsIgnoreCase(sqlType)
-                || "TEXT".equalsIgnoreCase(sqlType)
-                || "BYTEA".equalsIgnoreCase(sqlType))
+        if (Stream.of("INT2", "TEXT", "BYTEA")
+                .anyMatch(s -> s.equalsIgnoreCase(sqlType)))
         {
             return false;
         }

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/FindHelper.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/FindHelper.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/FindHelper.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/FindHelper.java
 Mon Dec 20 17:41:20 2021
@@ -21,6 +21,8 @@ package org.apache.torque.templates.tran
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
 
 import org.apache.torque.generator.source.SourceElement;
 import org.apache.torque.templates.TorqueSchemaAttributeName;
@@ -75,20 +77,16 @@ final class FindHelper
         }
         if (searchExternalSchemata)
         {
-            for (SourceElement externalSchema : root.getChildren(
-                    TorqueSchemaElementName.EXTERNAL_SCHEMA))
-            {
-                SourceElement databaseElement
-                = externalSchema.getChild(TorqueSchemaElementName.DATABASE);
-                SourceElement result = findTable(
+            return root.getChildren(
+                    TorqueSchemaElementName.EXTERNAL_SCHEMA).stream()
+                    .map(externalSchema ->
+                            
externalSchema.getChild(TorqueSchemaElementName.DATABASE))
+                    .map(databaseElement -> findTable(
                         databaseElement,
                         tableName,
-                        searchExternalSchemata);
-                if (result != null)
-                {
-                    return result;
-                }
-            }
+                        searchExternalSchemata))
+                    .filter(Objects::nonNull)
+                    .findFirst().orElse(null);
         }
         return null;
     }
@@ -112,16 +110,10 @@ final class FindHelper
             throw new IllegalArgumentException("Wrong source element "
                     + table.getName());
         }
-        for (SourceElement column : table.getChildren(
-                TorqueSchemaElementName.COLUMN))
-        {
-            if (column.getAttribute(TorqueSchemaAttributeName.NAME)
-                    .equals(columnName))
-            {
-                return column;
-            }
-        }
-        return null;
+        return table.getChildren(
+                TorqueSchemaElementName.COLUMN).stream()
+                .filter(column -> 
column.getAttribute(TorqueSchemaAttributeName.NAME)
+                .equals(columnName)).findFirst().orElse(null);
     }
 
     /**
@@ -136,23 +128,18 @@ final class FindHelper
             SourceElement table,
             String tableName)
     {
-        List<SourceElement> result = new ArrayList<>();
+        List<SourceElement> result;
         if (!TorqueSchemaElementName.TABLE.getName().equals(
                 table.getName()))
         {
             throw new IllegalArgumentException("Wrong source element "
                     + table.getName());
         }
-        for (SourceElement foreignKey : table.getChildren(
-                TorqueSchemaElementName.FOREIGN_KEY))
-        {
-            if (foreignKey.getAttribute(
-                    TorqueSchemaAttributeName.FOREIGN_TABLE)
-                    .equals(tableName))
-            {
-                result.add(foreignKey);
-            }
-        }
+        result = table.getChildren(
+                TorqueSchemaElementName.FOREIGN_KEY).stream()
+                .filter(foreignKey -> foreignKey.getAttribute(
+                        TorqueSchemaAttributeName.FOREIGN_TABLE)
+                .equals(tableName)).collect(Collectors.toList());
         return result;
     }
 }

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/OMColumnJavaTransformer.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/OMColumnJavaTransformer.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/OMColumnJavaTransformer.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/OMColumnJavaTransformer.java
 Mon Dec 20 17:41:20 2021
@@ -23,6 +23,7 @@ import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.TimeZone;
+import java.util.stream.Stream;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.LogManager;
@@ -226,9 +227,8 @@ public class OMColumnJavaTransformer
         }
         else if (JavaType.DATE == javaType)
         {
-            if (CURRENT_DATE.equalsIgnoreCase(defaultValue)
-                    || CURRENT_TIME.equalsIgnoreCase(defaultValue)
-                    || CURRENT_TIMESTAMP.equalsIgnoreCase(defaultValue))
+            if (Stream.of(CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP)
+                    .anyMatch(s -> s.equalsIgnoreCase(defaultValue)) )
             {
                 if (useDatabaseDefaultValue)
                 {

Modified: 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/mapInit/DatabaseMapInitTransformer.java
URL: 
http://svn.apache.org/viewvc/db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/mapInit/DatabaseMapInitTransformer.java?rev=1896195&r1=1896194&r2=1896195&view=diff
==============================================================================
--- 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/mapInit/DatabaseMapInitTransformer.java
 (original)
+++ 
db/torque/trunk/torque-templates/src/main/java/org/apache/torque/templates/transformer/om/mapInit/DatabaseMapInitTransformer.java
 Mon Dec 20 17:41:20 2021
@@ -229,15 +229,8 @@ public class DatabaseMapInitTransformer
     private SourceElement getDatabaseSetWithDatabaseName(
             SourceElement databaseSetsElement, String name)
     {
-        for (SourceElement databaseSetElement
-                : databaseSetsElement.getChildren(DATABASE_SET_ELEMENT))
-        {
-            if (databaseSetElement.getAttribute(TorqueSchemaAttributeName.NAME)
-                    .equals(name))
-            {
-                return databaseSetElement;
-            }
-        }
-        return null;
+        return databaseSetsElement.getChildren(DATABASE_SET_ELEMENT).stream()
+                .filter(databaseSetElement -> 
databaseSetElement.getAttribute(TorqueSchemaAttributeName.NAME)
+                .equals(name)).findFirst().orElse(null);
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscr...@db.apache.org
For additional commands, e-mail: torque-dev-h...@db.apache.org

Reply via email to