You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metamodel.apache.org by ka...@apache.org on 2013/08/08 15:15:55 UTC
[1/4] git commit: Made column super type final - it never changes.
Updated Branches:
refs/heads/master d1f079d5a -> c65307da9
Made column super type final - it never changes.
Project: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/commit/6e4eef7f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/tree/6e4eef7f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/diff/6e4eef7f
Branch: refs/heads/master
Commit: 6e4eef7fc4eb8442775b0acb4c4582080e8f336d
Parents: bddd9b0
Author: kasper <ka...@10.0.0.32>
Authored: Wed Jul 24 15:01:59 2013 +0200
Committer: kasper <ka...@10.0.0.32>
Committed: Wed Jul 24 15:01:59 2013 +0200
----------------------------------------------------------------------
core/src/main/java/org/apache/metamodel/schema/ColumnType.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/6e4eef7f/core/src/main/java/org/apache/metamodel/schema/ColumnType.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/metamodel/schema/ColumnType.java b/core/src/main/java/org/apache/metamodel/schema/ColumnType.java
index e367fb3..839384e 100644
--- a/core/src/main/java/org/apache/metamodel/schema/ColumnType.java
+++ b/core/src/main/java/org/apache/metamodel/schema/ColumnType.java
@@ -87,7 +87,7 @@ public enum ColumnType {
*/
LIST(OTHER_TYPE), MAP(OTHER_TYPE);
- private SuperColumnType _superType;
+ private final SuperColumnType _superType;
private ColumnType(SuperColumnType superType) {
if (superType == null) {
[4/4] git commit: METAMODEL-9: SalesforceDataSet is throwing
exception for insert sql of record having date/time.
Posted by ka...@apache.org.
METAMODEL-9: SalesforceDataSet is throwing exception for insert sql of
record having date/time.
Project: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/commit/c65307da
Tree: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/tree/c65307da
Diff: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/diff/c65307da
Branch: refs/heads/master
Commit: c65307da9c8736c41892016acb24f7a611e521ca
Parents: 5d9e9ba
Author: Balendra Singh <ba...@gmail.com>
Authored: Thu Aug 8 15:15:34 2013 +0200
Committer: Kasper Sørensen <i....@gmail.com>
Committed: Thu Aug 8 15:15:34 2013 +0200
----------------------------------------------------------------------
.../salesforce/SalesforceDataContext.java | 29 +++++++++++++----
.../metamodel/salesforce/SalesforceDataSet.java | 19 +++++++++--
.../metamodel/salesforce/SalesforceTable.java | 7 +++--
.../salesforce/SalesforceDataContextTest.java | 33 +++++++++++++++-----
4 files changed, 69 insertions(+), 19 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/c65307da/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
----------------------------------------------------------------------
diff --git a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
index 1075114..f5e9340 100644
--- a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
+++ b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataContext.java
@@ -59,8 +59,12 @@ import com.sforce.ws.ConnectionException;
public class SalesforceDataContext extends QueryPostprocessDataContext implements UpdateableDataContext {
public static final TimeZone SOQL_TIMEZONE = TimeZone.getTimeZone("UTC");
- public static final String SOQL_DATE_FORMAT_IN = "yyyy-MM-dd'T'HH:mm:ss.SSS";
- public static final String SOQL_DATE_FORMAT_OUT = "yyyy-MM-dd'T'HH:mm:ssZZZ";
+ public static final String SOQL_DATE_FORMAT_IN = "yyyy-MM-dd";
+ public static final String SOQL_DATE_FORMAT_OUT = "yyyy-MM-dd";
+ public static final String SOQL_DATE_TIME_FORMAT_IN = "yyyy-MM-dd'T'HH:mm:ss.SSS";
+ public static final String SOQL_DATE_TIME_FORMAT_OUT = "yyyy-MM-dd'T'HH:mm:ssZZZ";
+ public static final String SOQL_TIME_FORMAT_IN = "HH:mm:ss.SSS";
+ public static final String SOQL_TIME_FORMAT_OUT = "HH:mm:ssZZZ";
private static final Logger logger = LoggerFactory.getLogger(SalesforceDataContext.class);
@@ -273,10 +277,23 @@ public class SalesforceDataContext extends QueryPostprocessDataContext implement
} else if (operand instanceof Number) {
sb.append(operand);
} else if (operand instanceof Date) {
- SimpleDateFormat dateFormat = new SimpleDateFormat(SOQL_DATE_FORMAT_OUT);
- dateFormat.setTimeZone(SOQL_TIMEZONE);
+ final SimpleDateFormat dateFormat;
+ switch (selectItem.getExpectedColumnType()) {
+ case TIME:
+ dateFormat = new SimpleDateFormat(SOQL_TIME_FORMAT_OUT);
+ break;
+ case DATE:
+ dateFormat = new SimpleDateFormat(SOQL_DATE_FORMAT_OUT);
+ break;
+ case TIMESTAMP:
+ default:
+ dateFormat = new SimpleDateFormat(SOQL_DATE_TIME_FORMAT_OUT);
+ break;
+ }
+
+ dateFormat.setTimeZone(SOQL_TIMEZONE);
String str = dateFormat.format((Date) operand);
- logger.debug("Date '{}' formatted as: {}", operand, str);
+ logger.debug("Date '{}' formatted as: {}", operand, str);
sb.append(str);
} else if (operand instanceof Column) {
sb.append(((Column) operand).getName());
@@ -320,7 +337,7 @@ public class SalesforceDataContext extends QueryPostprocessDataContext implement
}
private QueryResult executeSoqlQuery(String query) {
- logger.info("Executing SOQL query: {}", query);
+ logger.info("Executing SOQL query: {}", query);
try {
QueryResult queryResult = _connection.query(query);
return queryResult;
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/c65307da/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataSet.java
----------------------------------------------------------------------
diff --git a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataSet.java b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataSet.java
index d44bb47..0070296 100644
--- a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataSet.java
+++ b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceDataSet.java
@@ -110,10 +110,23 @@ final class SalesforceDataSet extends AbstractDataSet {
return NumberComparator.toNumber(columnType.isNumber());
}
if (columnType.isTimeBased()) {
- SimpleDateFormat format = new SimpleDateFormat(SalesforceDataContext.SOQL_DATE_FORMAT_IN);
- format.setTimeZone(SalesforceDataContext.SOQL_TIMEZONE);
+ final SimpleDateFormat dateFormat;
+ switch (columnType) {
+ case TIME:
+ dateFormat = new SimpleDateFormat(SalesforceDataContext.SOQL_TIME_FORMAT_IN);
+ break;
+ case DATE:
+ dateFormat = new SimpleDateFormat(SalesforceDataContext.SOQL_DATE_FORMAT_IN);
+ break;
+ case TIMESTAMP:
+ default:
+ dateFormat = new SimpleDateFormat(SalesforceDataContext.SOQL_DATE_TIME_FORMAT_IN);
+ break;
+ }
+
+ dateFormat.setTimeZone(SalesforceDataContext.SOQL_TIMEZONE);
try {
- return format.parse(value.toString());
+ return dateFormat.parse(value.toString());
} catch (ParseException e) {
throw new IllegalStateException("Unable to parse date/time value: " + value);
}
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/c65307da/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceTable.java
----------------------------------------------------------------------
diff --git a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceTable.java b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceTable.java
index 5983e7f..2df17cc 100644
--- a/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceTable.java
+++ b/salesforce/src/main/java/org/apache/metamodel/salesforce/SalesforceTable.java
@@ -107,9 +107,11 @@ final class SalesforceTable extends AbstractTable {
case _double:
return ColumnType.DOUBLE;
case date:
+ return ColumnType.DATE;
case datetime:
+ return ColumnType.TIMESTAMP;
case time:
- return ColumnType.DATE;
+ return ColumnType.TIME;
case string:
case email:
case url:
@@ -122,8 +124,9 @@ final class SalesforceTable extends AbstractTable {
case id:
case picklist:
return ColumnType.VARCHAR;
+ default:
+ return ColumnType.OTHER;
}
- return ColumnType.OTHER;
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-metamodel/blob/c65307da/salesforce/src/test/java/org/apache/metamodel/salesforce/SalesforceDataContextTest.java
----------------------------------------------------------------------
diff --git a/salesforce/src/test/java/org/apache/metamodel/salesforce/SalesforceDataContextTest.java b/salesforce/src/test/java/org/apache/metamodel/salesforce/SalesforceDataContextTest.java
index 361174b..4bd3954 100644
--- a/salesforce/src/test/java/org/apache/metamodel/salesforce/SalesforceDataContextTest.java
+++ b/salesforce/src/test/java/org/apache/metamodel/salesforce/SalesforceDataContextTest.java
@@ -18,6 +18,7 @@
*/
package org.apache.metamodel.salesforce;
+import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
@@ -38,8 +39,6 @@ import org.apache.metamodel.schema.ColumnType;
import org.apache.metamodel.schema.MutableColumn;
import org.apache.metamodel.schema.Schema;
import org.apache.metamodel.schema.Table;
-import org.apache.metamodel.util.DateUtils;
-import org.apache.metamodel.util.Month;
public class SalesforceDataContextTest extends SalesforceTestCase {
@@ -244,13 +243,14 @@ public class SalesforceDataContextTest extends SalesforceTestCase {
assertEquals("Another test value", ds.getRow().getValue(0));
assertFalse(ds.next());
ds.close();
-
+
// UPDATE (a record that does not exist)
-
+
dc.executeUpdate(new UpdateScript() {
@Override
public void run(UpdateCallback callback) {
- callback.update(tableName).where("id").eq("fooooooobaaaaaaaar").value("name", "A test value that should never occur").execute();
+ callback.update(tableName).where("id").eq("fooooooobaaaaaaaar")
+ .value("name", "A test value that should never occur").execute();
}
});
@@ -274,19 +274,36 @@ public class SalesforceDataContextTest extends SalesforceTestCase {
final StringBuilder sb = new StringBuilder("FOOBAR: ");
final Calendar cal = Calendar.getInstance();
- cal.setTime(DateUtils.get(2013, Month.JANUARY, 23));
cal.setTimeZone(TimeZone.getTimeZone("GMT+1"));
+ cal.setTimeInMillis(0);
+ cal.set(Calendar.HOUR, 0);
+ cal.set(Calendar.MINUTE, 0);
+ cal.set(Calendar.SECOND, 0);
+ cal.set(Calendar.MILLISECOND, 0);
+ cal.set(Calendar.HOUR, 0);
+ cal.set(Calendar.MINUTE, 0);
+ cal.set(Calendar.YEAR, 2013);
+ cal.set(Calendar.MONTH, Calendar.JANUARY);
+ cal.set(Calendar.DAY_OF_MONTH, 23);
final Date date = cal.getTime();
+ final Timestamp dateTime = new Timestamp(date.getTime());
final List<FilterItem> children = new ArrayList<FilterItem>();
children.add(new FilterItem(new SelectItem(new MutableColumn("foo")), OperatorType.EQUALS_TO, "hello\n 'world'"));
children.add(new FilterItem(new SelectItem(new MutableColumn("bar")), OperatorType.EQUALS_TO, 123));
- children.add(new FilterItem(new SelectItem(new MutableColumn("baz")), OperatorType.EQUALS_TO, date));
+ children.add(new FilterItem(new SelectItem(new MutableColumn("baz").setType(ColumnType.DATE)),
+ OperatorType.EQUALS_TO, date));
+ children.add(new FilterItem(new SelectItem(new MutableColumn("zaz").setType(ColumnType.TIMESTAMP)),
+ OperatorType.EQUALS_TO, date));
+ children.add(new FilterItem(new SelectItem(new MutableColumn("saz").setType(ColumnType.TIMESTAMP)),
+ OperatorType.EQUALS_TO, dateTime));
+
final FilterItem filterItem = new FilterItem(children);
SalesforceDataContext.rewriteFilterItem(sb, filterItem);
- assertEquals("FOOBAR: (foo = 'hello\\n \\'world\\'' OR bar = 123 OR baz = 2013-01-22T23:00:00+0000)",
+ assertEquals(
+ "FOOBAR: (foo = 'hello\\n \\'world\\'' OR bar = 123 OR baz = 2013-01-22 OR zaz = 2013-01-22T23:00:00+0000 OR saz = 2013-01-22T23:00:00+0000)",
sb.toString());
}
}
[3/4] git commit: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/incubator-metamodel
Posted by ka...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/incubator-metamodel
Project: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/commit/5d9e9baa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/tree/5d9e9baa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/diff/5d9e9baa
Branch: refs/heads/master
Commit: 5d9e9baaea51fae4f08b9785d1070e483d925b4f
Parents: e63944a d1f079d
Author: Kasper Sørensen <i....@gmail.com>
Authored: Thu Aug 8 15:05:51 2013 +0200
Committer: Kasper Sørensen <i....@gmail.com>
Committed: Thu Aug 8 15:05:51 2013 +0200
----------------------------------------------------------------------
LICENSE | 202 ++++++++++++++
NOTICE | 9 +
.../apache/metamodel/csv/CsvConfiguration.java | 270 ++++++++++---------
.../apache/metamodel/csv/CsvDataContext.java | 43 ++-
.../org/apache/metamodel/csv/CsvDataSet.java | 2 +-
.../metamodel/csv/SingleLineCsvDataSet.java | 124 +++++++++
.../apache/metamodel/csv/SingleLineCsvRow.java | 112 ++++++++
.../metamodel/csv/CsvBigFileMemoryTest.java | 173 +++++++-----
.../metamodel/csv/CsvDataContextTest.java | 4 +-
.../metamodel/csv/SingleLineCsvDataSetTest.java | 49 ++++
10 files changed, 780 insertions(+), 208 deletions(-)
----------------------------------------------------------------------
[2/4] git commit: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/incubator-metamodel.git
Posted by ka...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/incubator-metamodel.git
Project: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/commit/e63944a5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/tree/e63944a5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-metamodel/diff/e63944a5
Branch: refs/heads/master
Commit: e63944a52d282df35c6eef1436436343aacf351b
Parents: 6e4eef7 a767740
Author: kasper <ka...@192.168.0.165>
Authored: Tue Jul 30 11:06:06 2013 +0200
Committer: kasper <ka...@192.168.0.165>
Committed: Tue Jul 30 11:06:06 2013 +0200
----------------------------------------------------------------------
access/pom.xml | 2 +-
core/pom.xml | 2 +-
couchdb/pom.xml | 2 +-
csv/pom.xml | 2 +-
excel/pom.xml | 2 +-
fixedwidth/pom.xml | 2 +-
full/pom.xml | 2 +-
jdbc/pom.xml | 2 +-
mongodb/pom.xml | 2 +-
openoffice/pom.xml | 2 +-
pojo/pom.xml | 2 +-
pom.xml | 5 ++---
salesforce/pom.xml | 4 ++--
.../salesforce/SalesforceUpdateCallback.java | 19 +++++++++++++++++-
.../salesforce/SalesforceDataContextTest.java | 9 +++++++++
salesforce/src/test/resources/log4j.xml | 21 ++++++++++++++++++++
sugarcrm/pom.xml | 2 +-
xml/pom.xml | 2 +-
18 files changed, 65 insertions(+), 19 deletions(-)
----------------------------------------------------------------------