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 =, <>, 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:[email protected]">Jeffery Painter</a>
+/*
+ This is a utility class which eases getting the
+ average of a dataset column with criteria
+
+ @author <a href="mailto:[email protected]">Jeffery Painter</a>
* @author <a href="mailto:[email protected]">Martin Goulet</a>
* @author <a href="mailto:[email protected]">Eric Lambert</a>
* @author <a href="mailto:[email protected]">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);
}
}
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.