[teiid-commits] teiid SVN: r3612 - in trunk/connectors/translator-jdbc/src/main: resources/org/teiid/translator/jdbc and 1 other directory.
teiid-commits at lists.jboss.org
teiid-commits at lists.jboss.org
Fri Nov 4 08:11:35 EDT 2011
Author: shawkins
Date: 2011-11-04 08:11:35 -0400 (Fri, 04 Nov 2011)
New Revision: 3612
Modified:
trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/SQLConversionVisitor.java
trunk/connectors/translator-jdbc/src/main/resources/org/teiid/translator/jdbc/i18n.properties
Log:
TEIID-669 refining escaping
Modified: trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/SQLConversionVisitor.java
===================================================================
--- trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/SQLConversionVisitor.java 2011-11-04 03:46:49 UTC (rev 3611)
+++ trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/SQLConversionVisitor.java 2011-11-04 12:11:35 UTC (rev 3612)
@@ -229,22 +229,22 @@
}
private List<Object> parseNativeQueryParts(String nativeQuery) {
- Pattern pattern = Pattern.compile("\\$(\\$\\$)*\\d+"); //$NON-NLS-1$
+ Pattern pattern = Pattern.compile("\\$+\\d+"); //$NON-NLS-1$
List<Object> parts = new LinkedList<Object>();
Matcher m = pattern.matcher(nativeQuery);
for (int i = 0; i < nativeQuery.length(); i++) {
if (!m.find(i)) {
- parts.add(nativeQuery.substring(i).replaceAll("\\$\\$", "\\$")); //$NON-NLS-1$ //$NON-NLS-2$
+ parts.add(nativeQuery.substring(i));
break;
}
if (m.start() != i) {
- parts.add(nativeQuery.substring(i, m.start()).replaceAll("\\$\\$", "\\$")); //$NON-NLS-1$ //$NON-NLS-2$
+ parts.add(nativeQuery.substring(i, m.start()));
}
String match = m.group();
int end = match.lastIndexOf('$');
if ((end&0x1) == 1) {
//escaped
- parts.add(match.replaceAll("\\$\\$", "\\$")); //$NON-NLS-1$ //$NON-NLS-2$
+ parts.add(match.substring((end+1)/2));
} else {
if (end != 0) {
parts.add(match.substring(0, end/2));
Modified: trunk/connectors/translator-jdbc/src/main/resources/org/teiid/translator/jdbc/i18n.properties
===================================================================
--- trunk/connectors/translator-jdbc/src/main/resources/org/teiid/translator/jdbc/i18n.properties 2011-11-04 03:46:49 UTC (rev 3611)
+++ trunk/connectors/translator-jdbc/src/main/resources/org/teiid/translator/jdbc/i18n.properties 2011-11-04 12:11:35 UTC (rev 3612)
@@ -28,6 +28,6 @@
JDBCQueryExecution.Error_executing_query__1 = ''{0}'' error executing statement(s): {1}
SQLConversionVisitor.invalid_parameter=Invalid parameter {0}. Must be between 1 and {1}.
SQLConversionVisitor.not_in_parameter=Invalid parameter {0}. Native query procedures cannot use non IN parameters.
-
+OraleExecutionFactory.invalid_hint=Not using oracle execution payload {0} as hint, since it apprears to contain more than just a single comment.
ConnectionListener.failed_to_report_jdbc_connection_details=Failed to report the JDBC driver and connection information
JDBCMetadataProcessor.not_unique=Teiid runtime names, which are case insensitive, for the imported metadata are not unique. If not already set, use the setting importer.useFullSchemaName to create Teiid names that include the source schema.
\ No newline at end of file
More information about the teiid-commits
mailing list