You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2018/01/19 12:54:17 UTC
[1/3] cayenne git commit: CAY-2394 Velocity 2.0 upgrade
Repository: cayenne
Updated Branches:
refs/heads/master 84687a787 -> d3b546a37
CAY-2394 Velocity 2.0 upgrade
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/a37df6b2
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/a37df6b2
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/a37df6b2
Branch: refs/heads/master
Commit: a37df6b2dae6102c48ef50f73e0a6265080be5ec
Parents: 8d79f45
Author: Arseni Bulatski <an...@gmail.com>
Authored: Wed Jan 17 10:34:54 2018 +0300
Committer: Arseni Bulatski <an...@gmail.com>
Committed: Fri Jan 19 12:02:16 2018 +0300
----------------------------------------------------------------------
.../cayenne/tools/DbImporterTaskTest.java | 4 +-
cayenne-cgen/pom.xml | 2 +-
.../cayenne/gen/ClassGenerationAction.java | 6 +-
.../gen/ClassGeneratorResourceLoader.java | 27 +++----
.../apache/cayenne/gen/ClassGenerationCase.java | 3 -
.../main/java/org/apache/cayenne/util/Util.java | 39 +++++++++-
cayenne-velocity/pom.xml | 2 +-
.../velocity/SQLTemplateResourceManager.java | 25 ++++---
.../velocity/VelocitySQLTemplateProcessor.java | 10 +--
.../SQLTemplateResourceManagerTest.java | 77 --------------------
docs/doc/src/main/resources/RELEASE-NOTES.txt | 1 +
.../cayenne/tools/DbImporterMojoTest.java | 2 +-
.../modeler/editor/SelectPropertiesPanel.java | 10 ++-
.../util/DbAttributePathComboBoxEditor.java | 2 +-
.../util/PathChooserComboBoxCellEditor.java | 2 +-
pom.xml | 4 +-
16 files changed, 87 insertions(+), 129 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-ant/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
----------------------------------------------------------------------
diff --git a/cayenne-ant/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java b/cayenne-ant/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
index df746c2..6e83263 100644
--- a/cayenne-ant/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
+++ b/cayenne-ant/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
@@ -45,7 +45,7 @@ import java.sql.Statement;
import java.util.List;
import static org.apache.cayenne.dbsync.reverse.dbimport.ReverseEngineeringUtils.*;
-import static org.apache.commons.lang.StringUtils.isBlank;
+import static org.apache.cayenne.util.Util.isBlank;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
@@ -226,4 +226,6 @@ public class DbImporterTaskTest {
}
}
+
+
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-cgen/pom.xml
----------------------------------------------------------------------
diff --git a/cayenne-cgen/pom.xml b/cayenne-cgen/pom.xml
index 6b96780..d95761d 100644
--- a/cayenne-cgen/pom.xml
+++ b/cayenne-cgen/pom.xml
@@ -50,7 +50,7 @@
<dependency>
<groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
+ <artifactId>velocity-engine-core</artifactId>
<scope>compile</scope>
</dependency>
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGenerationAction.java
----------------------------------------------------------------------
diff --git a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGenerationAction.java b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGenerationAction.java
index e8678d1..eb122be 100644
--- a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGenerationAction.java
+++ b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGenerationAction.java
@@ -25,12 +25,10 @@ import org.apache.cayenne.map.DataMap;
import org.apache.cayenne.map.Embeddable;
import org.apache.cayenne.map.ObjEntity;
import org.apache.cayenne.map.QueryDescriptor;
-import org.slf4j.Logger;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;
-import org.apache.velocity.runtime.RuntimeConstants;
-import org.apache.velocity.runtime.log.NullLogChute;
+import org.slf4j.Logger;
import java.io.File;
import java.io.FileOutputStream;
@@ -261,8 +259,6 @@ public class ClassGenerationAction {
Properties props = new Properties();
- // null logger that will prevent velocity.log from being generated
- props.put(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, NullLogChute.class.getName());
props.put("resource.loader", "cayenne");
props.put("cayenne.resource.loader.class", ClassGeneratorResourceLoader.class.getName());
props.put("cayenne.resource.loader.cache", "false");
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGeneratorResourceLoader.java
----------------------------------------------------------------------
diff --git a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGeneratorResourceLoader.java b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGeneratorResourceLoader.java
index 8e8a1ee..4a26fd5 100644
--- a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGeneratorResourceLoader.java
+++ b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/ClassGeneratorResourceLoader.java
@@ -19,11 +19,12 @@
package org.apache.cayenne.gen;
-import java.io.BufferedInputStream;
+import java.io.BufferedReader;
import java.io.File;
-import java.io.FileInputStream;
import java.io.FileNotFoundException;
-import java.io.InputStream;
+import java.io.FileReader;
+import java.io.InputStreamReader;
+import java.io.Reader;
import org.apache.velocity.exception.ResourceNotFoundException;
import org.apache.velocity.runtime.resource.loader.FileResourceLoader;
@@ -43,10 +44,10 @@ public class ClassGeneratorResourceLoader extends FileResourceLoader {
* wasn't found, it attempts to load it from current directory or as an absolute path.
*/
@Override
- public synchronized InputStream getResourceStream(String name)
+ public synchronized Reader getResourceReader(String name, String charset)
throws ResourceNotFoundException {
- InputStream stream = loadFromRelativePath(name);
+ Reader stream = loadFromRelativePath(name, charset);
if (stream != null) {
return stream;
}
@@ -71,19 +72,19 @@ public class ClassGeneratorResourceLoader extends FileResourceLoader {
+ "'. Searched filesystem path and classpath");
}
- protected InputStream loadFromRelativePath(String name) {
+ protected Reader loadFromRelativePath(String name, String charset) {
try {
- return super.getResourceStream(name);
+ return super.getResourceReader(name, charset);
}
catch (ResourceNotFoundException rnfex) {
return null;
}
}
- protected InputStream loadFromAbsPath(String name) {
+ protected Reader loadFromAbsPath(String name) {
try {
File file = new File(name);
- return (file.canRead()) ? new BufferedInputStream(new FileInputStream(file
+ return (file.canRead()) ? new BufferedReader(new FileReader(file
.getAbsolutePath())) : null;
}
@@ -92,11 +93,11 @@ public class ClassGeneratorResourceLoader extends FileResourceLoader {
}
}
- protected InputStream loadFromThreadClassLoader(String name) {
- return Thread.currentThread().getContextClassLoader().getResourceAsStream(name);
+ protected Reader loadFromThreadClassLoader(String name) {
+ return new InputStreamReader(Thread.currentThread().getContextClassLoader().getResourceAsStream(name));
}
- protected InputStream loadFromThisClassLoader(String name) {
- return getClass().getClassLoader().getResourceAsStream(name);
+ protected Reader loadFromThisClassLoader(String name) {
+ return new InputStreamReader(getClass().getClassLoader().getResourceAsStream(name));
}
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-cgen/src/test/java/org/apache/cayenne/gen/ClassGenerationCase.java
----------------------------------------------------------------------
diff --git a/cayenne-cgen/src/test/java/org/apache/cayenne/gen/ClassGenerationCase.java b/cayenne-cgen/src/test/java/org/apache/cayenne/gen/ClassGenerationCase.java
index 78139fd..bc4b36f 100644
--- a/cayenne-cgen/src/test/java/org/apache/cayenne/gen/ClassGenerationCase.java
+++ b/cayenne-cgen/src/test/java/org/apache/cayenne/gen/ClassGenerationCase.java
@@ -23,7 +23,6 @@ import org.apache.velocity.Template;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.context.Context;
import org.apache.velocity.runtime.RuntimeConstants;
-import org.apache.velocity.runtime.log.NullLogChute;
import org.junit.Before;
import java.io.StringWriter;
@@ -37,8 +36,6 @@ public class ClassGenerationCase {
public void setUp() throws Exception {
Properties props = new Properties();
- // null logger that will prevent velocity.log from being generated
- props.put(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, NullLogChute.class.getName());
props.put("resource.loader", "cayenne");
props.put("cayenne.resource.loader.class", ClassGeneratorResourceLoader.class.getName());
props.put("cayenne.resource.loader.cache", "false");
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-server/src/main/java/org/apache/cayenne/util/Util.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/util/Util.java b/cayenne-server/src/main/java/org/apache/cayenne/util/Util.java
index e2575d9..1c41b3c 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/util/Util.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/util/Util.java
@@ -233,11 +233,48 @@ public class Util {
/**
* Returns true, if the String is null or an empty string.
*/
- public static boolean isEmptyString(String string) {
+ public static boolean isEmptyString(CharSequence string) {
return string == null || string.length() == 0;
}
/**
+ * @since 4.1
+ */
+ public static boolean isBlank(CharSequence cs) {
+ int strLen;
+ if (cs != null && (strLen = cs.length()) != 0) {
+ for(int i = 0; i < strLen; ++i) {
+ if (!Character.isWhitespace(cs.charAt(i))) {
+ return false;
+ }
+ }
+
+ return true;
+ } else {
+ return true;
+ }
+ }
+
+ /**
+ * @since 4.1
+ */
+ public static boolean isNumeric(CharSequence cs) {
+ if (isEmptyString(cs)) {
+ return false;
+ } else {
+ int sz = cs.length();
+
+ for(int i = 0; i < sz; ++i) {
+ if (!Character.isDigit(cs.charAt(i))) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+ }
+
+ /**
* Capitalizes the first letter of the property name.
*
* @since 4.1
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-velocity/pom.xml
----------------------------------------------------------------------
diff --git a/cayenne-velocity/pom.xml b/cayenne-velocity/pom.xml
index 2a0ed45..da66ef6 100644
--- a/cayenne-velocity/pom.xml
+++ b/cayenne-velocity/pom.xml
@@ -42,7 +42,7 @@
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
+ <artifactId>velocity-engine-core</artifactId>
<scope>compile</scope>
</dependency>
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
----------------------------------------------------------------------
diff --git a/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java b/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
index 97da483..33bb192 100644
--- a/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
+++ b/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
@@ -19,12 +19,7 @@
package org.apache.cayenne.velocity;
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.util.Map;
-
import org.apache.cayenne.util.concurrentlinkedhashmap.ConcurrentLinkedHashMap;
-import org.apache.commons.collections.ExtendedProperties;
import org.apache.velocity.Template;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundException;
@@ -32,14 +27,24 @@ import org.apache.velocity.runtime.RuntimeServices;
import org.apache.velocity.runtime.resource.Resource;
import org.apache.velocity.runtime.resource.ResourceManager;
import org.apache.velocity.runtime.resource.loader.ResourceLoader;
+import org.apache.velocity.util.ExtProperties;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.util.Map;
/**
* An implementation of the Velocity ResourceManager and ResourceLoader that
* creates templates from in-memory Strings.
- *
+ *
* @since 1.1
*/
-// class must be public since it is instantiated by Velocity via reflection.
+
+/**
+ * @deprecated since 4.1 is unused
+ */
+@Deprecated
public class SQLTemplateResourceManager
extends ResourceLoader
implements ResourceManager {
@@ -89,13 +94,13 @@ public class SQLTemplateResourceManager
}
@Override
- public InputStream getResourceStream(String source)
+ public Reader getResourceReader(String source, String charset)
throws ResourceNotFoundException {
- return new ByteArrayInputStream(source.getBytes());
+ return new InputStreamReader(new ByteArrayInputStream(source.getBytes()));
}
@Override
- public void init(ExtendedProperties configuration) {
+ public void init(ExtProperties configuration) {
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/VelocitySQLTemplateProcessor.java
----------------------------------------------------------------------
diff --git a/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/VelocitySQLTemplateProcessor.java b/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/VelocitySQLTemplateProcessor.java
index a39cffb..7b2bd54 100644
--- a/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/VelocitySQLTemplateProcessor.java
+++ b/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/VelocitySQLTemplateProcessor.java
@@ -26,11 +26,10 @@ import org.apache.cayenne.access.jdbc.SQLTemplateProcessor;
import org.apache.cayenne.access.translator.ParameterBinding;
import org.apache.cayenne.exp.ExpressionException;
import org.apache.cayenne.template.SQLTemplateRenderingUtils;
+import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.context.InternalContextAdapterImpl;
-import org.apache.velocity.runtime.RuntimeConstants;
import org.apache.velocity.runtime.RuntimeInstance;
-import org.apache.velocity.runtime.log.NullLogChute;
import org.apache.velocity.runtime.parser.ParseException;
import org.apache.velocity.runtime.parser.node.ASTReference;
import org.apache.velocity.runtime.parser.node.SimpleNode;
@@ -101,11 +100,6 @@ public class VelocitySQLTemplateProcessor implements SQLTemplateProcessor {
this.renderingUtils = new SQLTemplateRenderingUtils();
this.velocityRuntime = new RuntimeInstance();
- // set null logger
- velocityRuntime.addProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM, new NullLogChute());
-
- velocityRuntime
- .addProperty(RuntimeConstants.RESOURCE_MANAGER_CLASS, SQLTemplateResourceManager.class.getName());
velocityRuntime.addProperty("userdirective", BindDirective.class.getName());
velocityRuntime.addProperty("userdirective", BindEqualDirective.class.getName());
velocityRuntime.addProperty("userdirective", BindNotEqualDirective.class.getName());
@@ -195,7 +189,7 @@ public class VelocitySQLTemplateProcessor implements SQLTemplateProcessor {
SimpleNode nodeTree;
try {
- nodeTree = velocityRuntime.parse(new StringReader(template), template);
+ nodeTree = velocityRuntime.parse(new StringReader(template), new Template());
} catch (ParseException pex) {
throw new CayenneRuntimeException("Error parsing template '%s' : %s", template, pex.getMessage());
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/cayenne-velocity/src/test/java/org/apache/cayenne/velocity/SQLTemplateResourceManagerTest.java
----------------------------------------------------------------------
diff --git a/cayenne-velocity/src/test/java/org/apache/cayenne/velocity/SQLTemplateResourceManagerTest.java b/cayenne-velocity/src/test/java/org/apache/cayenne/velocity/SQLTemplateResourceManagerTest.java
deleted file mode 100644
index 9ef2229..0000000
--- a/cayenne-velocity/src/test/java/org/apache/cayenne/velocity/SQLTemplateResourceManagerTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*****************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ****************************************************************/
-
-package org.apache.cayenne.velocity;
-
-import static org.junit.Assert.assertNotSame;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.assertTrue;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyBoolean;
-import static org.mockito.ArgumentMatchers.anyString;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-import java.io.Reader;
-
-import org.apache.velocity.Template;
-import org.apache.velocity.runtime.RuntimeConstants;
-import org.apache.velocity.runtime.RuntimeServices;
-import org.apache.velocity.runtime.parser.node.SimpleNode;
-import org.apache.velocity.runtime.resource.Resource;
-import org.apache.velocity.runtime.resource.ResourceManager;
-import org.junit.Before;
-import org.junit.Test;
-
-public class SQLTemplateResourceManagerTest {
-
- private SQLTemplateResourceManager rm;
-
- @Before
- public void before() throws Exception {
-
- RuntimeServices rs = mock(RuntimeServices.class);
- when(rs.parse(any(Reader.class), anyString(), anyBoolean())).thenReturn(new SimpleNode(1));
- when(rs.parse(any(Reader.class), anyString())).thenReturn(new SimpleNode(1));
-
- this.rm = new SQLTemplateResourceManager();
- rm.initialize(rs);
- }
-
- @Test
- public void testFetResource() throws Exception {
-
- Resource resource = rm.getResource("abc", ResourceManager.RESOURCE_TEMPLATE, RuntimeConstants.ENCODING_DEFAULT);
-
- assertTrue(resource instanceof Template);
-
- // must be cached...
- assertSame(resource,
- rm.getResource("abc", ResourceManager.RESOURCE_TEMPLATE, RuntimeConstants.ENCODING_DEFAULT));
-
- // new resource must be different
- assertNotSame(resource,
- rm.getResource("xyz", ResourceManager.RESOURCE_TEMPLATE, RuntimeConstants.ENCODING_DEFAULT));
-
- // after clearing cache, resource must be refreshed
- rm.clearCache();
- assertNotSame(resource,
- rm.getResource("abc", ResourceManager.RESOURCE_TEMPLATE, RuntimeConstants.ENCODING_DEFAULT));
- }
-}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/docs/doc/src/main/resources/RELEASE-NOTES.txt
----------------------------------------------------------------------
diff --git a/docs/doc/src/main/resources/RELEASE-NOTES.txt b/docs/doc/src/main/resources/RELEASE-NOTES.txt
index 7958307..84f0217 100644
--- a/docs/doc/src/main/resources/RELEASE-NOTES.txt
+++ b/docs/doc/src/main/resources/RELEASE-NOTES.txt
@@ -15,6 +15,7 @@ Changes/New Features:
CAY-2372 Extract new modules from cayenne-server
CAY-2377 Cleanup deprecated code.
+CAY-2394 Upgrade to Apache Velocity 2.0
Bug Fixes:
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/maven-plugins/cayenne-maven-plugin/src/test/java/org/apache/cayenne/tools/DbImporterMojoTest.java
----------------------------------------------------------------------
diff --git a/maven-plugins/cayenne-maven-plugin/src/test/java/org/apache/cayenne/tools/DbImporterMojoTest.java b/maven-plugins/cayenne-maven-plugin/src/test/java/org/apache/cayenne/tools/DbImporterMojoTest.java
index 1f3a29a..9a27dfd 100644
--- a/maven-plugins/cayenne-maven-plugin/src/test/java/org/apache/cayenne/tools/DbImporterMojoTest.java
+++ b/maven-plugins/cayenne-maven-plugin/src/test/java/org/apache/cayenne/tools/DbImporterMojoTest.java
@@ -49,7 +49,7 @@ import java.sql.Statement;
import java.util.Iterator;
import java.util.Objects;
-import static org.apache.commons.lang.StringUtils.isBlank;
+import static org.apache.cayenne.util.Util.isBlank;
import static org.mockito.Mockito.mock;
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/SelectPropertiesPanel.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/SelectPropertiesPanel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/SelectPropertiesPanel.java
index 97b8c57..5a7b396 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/SelectPropertiesPanel.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/SelectPropertiesPanel.java
@@ -43,10 +43,12 @@ import org.apache.cayenne.map.QueryDescriptor;
import org.apache.cayenne.query.QueryMetadata;
import org.apache.cayenne.util.Util;
import org.apache.cayenne.validation.ValidationException;
-import org.apache.commons.lang.StringUtils;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import static org.apache.cayenne.util.Util.isNumeric;
+
/**
* A panel that supports editing the properties of a GenericSelectQuery.
*
@@ -162,7 +164,7 @@ public abstract class SelectPropertiesPanel extends JPanel {
if (string.length() == 0) {
setQueryProperty(QueryMetadata.FETCH_OFFSET_PROPERTY, ZERO.toString());
} else {
- if (StringUtils.isNumeric(string)) {
+ if (isNumeric(string)) {
setQueryProperty(QueryMetadata.FETCH_OFFSET_PROPERTY, string);
} else {
throw new ValidationException("Fetch offset must be an integer: %s", string);
@@ -175,7 +177,7 @@ public abstract class SelectPropertiesPanel extends JPanel {
if (string.length() == 0) {
setQueryProperty(QueryMetadata.FETCH_LIMIT_PROPERTY, ZERO.toString());
} else {
- if (StringUtils.isNumeric(string)) {
+ if (isNumeric(string)) {
setQueryProperty(QueryMetadata.FETCH_LIMIT_PROPERTY, string);
} else {
throw new ValidationException("Fetch limit must be an integer: %s", string);
@@ -188,7 +190,7 @@ public abstract class SelectPropertiesPanel extends JPanel {
if (string.length() == 0) {
setQueryProperty(QueryMetadata.PAGE_SIZE_PROPERTY, ZERO.toString());
} else {
- if (StringUtils.isNumeric(string)) {
+ if (isNumeric(string)) {
setQueryProperty(QueryMetadata.PAGE_SIZE_PROPERTY, string);
} else {
throw new ValidationException("Page size must be an integer: %s", string);
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAttributePathComboBoxEditor.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAttributePathComboBoxEditor.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAttributePathComboBoxEditor.java
index f1cca8d..950ba80 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAttributePathComboBoxEditor.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAttributePathComboBoxEditor.java
@@ -27,7 +27,7 @@ import org.apache.cayenne.map.ObjAttribute;
import org.apache.cayenne.map.ObjEntity;
import org.apache.cayenne.modeler.editor.ObjAttributeTableModel;
import org.apache.cayenne.util.CayenneMapEntry;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JLabel;
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/PathChooserComboBoxCellEditor.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/PathChooserComboBoxCellEditor.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/PathChooserComboBoxCellEditor.java
index 4c137dc..5e5a904 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/PathChooserComboBoxCellEditor.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/PathChooserComboBoxCellEditor.java
@@ -22,7 +22,7 @@ package org.apache.cayenne.modeler.util;
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.util.combo.AutoCompletion;
-import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang3.StringUtils;
import javax.swing.AbstractCellEditor;
import javax.swing.BorderFactory;
http://git-wip-us.apache.org/repos/asf/cayenne/blob/a37df6b2/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0c70f59..beaa9c2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -407,8 +407,8 @@
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- <version>1.7</version>
+ <artifactId>velocity-engine-core</artifactId>
+ <version>2.0</version>
</dependency>
<dependency>
<groupId>foundrylogic.vpp</groupId>
[3/3] cayenne git commit: CAY-2394 Upgrade Apache Velocity to version
2.0 minor cleanup
Posted by nt...@apache.org.
CAY-2394 Upgrade Apache Velocity to version 2.0
minor cleanup
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/d3b546a3
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/d3b546a3
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/d3b546a3
Branch: refs/heads/master
Commit: d3b546a37bfe629a285f6d1a3ba6e44efa014560
Parents: 174898d
Author: Nikita Timofeev <st...@gmail.com>
Authored: Fri Jan 19 15:52:03 2018 +0300
Committer: Nikita Timofeev <st...@gmail.com>
Committed: Fri Jan 19 15:52:03 2018 +0300
----------------------------------------------------------------------
.../org/apache/cayenne/velocity/SQLTemplateResourceManager.java | 3 ---
1 file changed, 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d3b546a3/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
----------------------------------------------------------------------
diff --git a/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java b/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
index 33bb192..8648174 100644
--- a/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
+++ b/cayenne-velocity/src/main/java/org/apache/cayenne/velocity/SQLTemplateResourceManager.java
@@ -39,9 +39,6 @@ import java.util.Map;
* creates templates from in-memory Strings.
*
* @since 1.1
- */
-
-/**
* @deprecated since 4.1 is unused
*/
@Deprecated
[2/3] cayenne git commit: Merge remote-tracking branch
'remotes/parent/pr/255' into asf-master
Posted by nt...@apache.org.
Merge remote-tracking branch 'remotes/parent/pr/255' into asf-master
# Conflicts:
# cayenne-ant/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
# docs/doc/src/main/resources/RELEASE-NOTES.txt
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/174898d5
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/174898d5
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/174898d5
Branch: refs/heads/master
Commit: 174898d5af5acc9f1242bdb2c4b108094d7b1307
Parents: 84687a7 a37df6b
Author: Nikita Timofeev <st...@gmail.com>
Authored: Fri Jan 19 15:33:01 2018 +0300
Committer: Nikita Timofeev <st...@gmail.com>
Committed: Fri Jan 19 15:33:01 2018 +0300
----------------------------------------------------------------------
cayenne-cgen/pom.xml | 2 +-
.../cayenne/gen/ClassGenerationAction.java | 6 +-
.../gen/ClassGeneratorResourceLoader.java | 27 +++----
.../apache/cayenne/gen/ClassGenerationCase.java | 3 -
.../main/java/org/apache/cayenne/util/Util.java | 39 +++++++++-
cayenne-velocity/pom.xml | 2 +-
.../velocity/SQLTemplateResourceManager.java | 25 ++++---
.../velocity/VelocitySQLTemplateProcessor.java | 10 +--
.../SQLTemplateResourceManagerTest.java | 77 --------------------
docs/doc/src/main/resources/RELEASE-NOTES.txt | 1 +
.../cayenne/tools/DbImporterMojoTest.java | 2 +-
.../modeler/editor/SelectPropertiesPanel.java | 10 ++-
.../util/DbAttributePathComboBoxEditor.java | 2 +-
.../util/PathChooserComboBoxCellEditor.java | 2 +-
pom.xml | 4 +-
15 files changed, 84 insertions(+), 128 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/174898d5/docs/doc/src/main/resources/RELEASE-NOTES.txt
----------------------------------------------------------------------
diff --cc docs/doc/src/main/resources/RELEASE-NOTES.txt
index 4b6d894,84f0217..0c93335
--- a/docs/doc/src/main/resources/RELEASE-NOTES.txt
+++ b/docs/doc/src/main/resources/RELEASE-NOTES.txt
@@@ -15,8 -15,7 +15,9 @@@ Changes/New Features
CAY-2372 Extract new modules from cayenne-server
CAY-2377 Cleanup deprecated code.
+CAY-2391 cdbimport: add option to skip user-defined relationships
+CAY-2393 Add sqlserver-docker profile to automate tests on SQLServer
+ CAY-2394 Upgrade to Apache Velocity 2.0
Bug Fixes:
http://git-wip-us.apache.org/repos/asf/cayenne/blob/174898d5/maven-plugins/cayenne-maven-plugin/src/test/java/org/apache/cayenne/tools/DbImporterMojoTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/174898d5/pom.xml
----------------------------------------------------------------------