diff --git a/.gitignore b/.gitignore
index 6425211..e586271 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@ target
tmp
.clover
atlassian-ide-plugin.xml
+.idea
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 4eb7c6c..b555261 100644
--- a/pom.xml
+++ b/pom.xml
@@ -107,6 +107,16 @@
maven-source-plugin
2.1.2
+
+
+ attach-sources
+ verify
+
+ jar-no-fork
+
+
+
+
diff --git a/src/main/java/com/codeslap/persistence/DatabaseSpec.java b/src/main/java/com/codeslap/persistence/DatabaseSpec.java
index f6bdd4b..fda88c8 100644
--- a/src/main/java/com/codeslap/persistence/DatabaseSpec.java
+++ b/src/main/java/com/codeslap/persistence/DatabaseSpec.java
@@ -442,4 +442,13 @@ public String toString() {
", mAfterImporters=" + mAfterImporters +
'}';
}
+
+ /**
+ * Returns the List of classes that have been added to the DatabaseSpec, useful for
+ * operations like Database truncate.
+ * @return List
+ */
+ public List> getMatches(){
+ return mSqliteList;
+ }
}
diff --git a/src/main/java/com/codeslap/persistence/SqliteAdapterImpl.java b/src/main/java/com/codeslap/persistence/SqliteAdapterImpl.java
index 7c92e5f..6559dc5 100644
--- a/src/main/java/com/codeslap/persistence/SqliteAdapterImpl.java
+++ b/src/main/java/com/codeslap/persistence/SqliteAdapterImpl.java
@@ -24,10 +24,9 @@
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.ParameterizedType;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.*;
/**
* This is a persistence adapter that uses sqlite database as persistence engine.
@@ -40,6 +39,7 @@ public class SqliteAdapterImpl implements SqlAdapter {
// this expression is used when inserting rows in the many-to-many relation tables. It will basically
// prevent a row from being inserted when the values already exist.
private static final String HACK_INSERT_FORMAT = "CASE WHEN (SELECT COUNT(*) FROM %s WHERE %s = %s AND %s = %s) == 0 THEN %s ELSE NULL END";
+ private static final DateFormat dateFormat = new SimpleDateFormat("E MMM dd HH:mm:ss z yyyy", Locale.ENGLISH);
private static final String TAG = "sqliteImpl";
private final DatabaseSpec mDatabaseSpec;
@@ -739,6 +739,8 @@ private Object getValueFromCursor(Class> type, String name, Cursor query) {
value = query.getString(columnIndex);
} else if (type == byte[].class || type == Byte[].class) {
value = query.getBlob(columnIndex);
+ } else if (type == Date.class){
+ value = dateFormat.parse(query.getString(columnIndex));
}
return value;
} catch (Exception e) {