diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index b78f010..1e6d032 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -3,6 +3,9 @@
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
index 6dc456c..26b69a1 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,8 +2,11 @@
+
+
+
diff --git a/build.gradle b/build.gradle
index 24e2703..39539d0 100644
--- a/build.gradle
+++ b/build.gradle
@@ -3,9 +3,10 @@
buildscript {
repositories {
jcenter()
+ google()
}
dependencies {
- classpath 'com.android.tools.build:gradle:2.3.3'
+ classpath 'com.android.tools.build:gradle:3.4.0-rc03'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
@@ -14,6 +15,7 @@ buildscript {
allprojects {
repositories {
jcenter()
+ google()
}
}
diff --git a/demo/build.gradle b/demo/build.gradle
index 5417cd2..a3e80a0 100644
--- a/demo/build.gradle
+++ b/demo/build.gradle
@@ -1,12 +1,12 @@
apply plugin: 'com.android.application'
android {
- compileSdkVersion 25
- buildToolsVersion "26.0.0"
+ compileSdkVersion 28
+ buildToolsVersion '29.0.0 rc2'
defaultConfig {
applicationId "com.basilgregory.onamsample"
minSdkVersion 14
- targetSdkVersion 25
+ targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
@@ -17,17 +17,21 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
+ compileOptions {
+ sourceCompatibility = '1.8'
+ targetCompatibility = '1.8'
+ }
}
dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ androidTestImplementation('com.android.support.test.espresso:espresso-core:2.3-alpha', {
exclude group: 'com.android.support', module: 'support-annotations'
})
- compile project(':onam')
- compile 'com.android.support:recyclerview-v7:25.3.1'
- compile 'com.android.support:appcompat-v7:25.3.1'
- compile 'com.android.support.constraint:constraint-layout:1.0.2'
- compile 'com.android.support:design:25.3.1'
- testCompile 'junit:junit:4.12'
+ implementation project(':onam')
+ implementation 'com.android.support:recyclerview-v7:28.0.0'
+ implementation 'com.android.support:appcompat-v7:28.0.0'
+ implementation 'com.android.support.constraint:constraint-layout:1.1.3'
+ implementation 'com.android.support:design:28.0.0'
+ testImplementation 'junit:junit:4.12'
}
diff --git a/demo/src/main/java/com/basilgregory/onamsample/AllPostsActivity.java b/demo/src/main/java/com/basilgregory/onamsample/AllPostsActivity.java
index 04aa684..e276c5e 100644
--- a/demo/src/main/java/com/basilgregory/onamsample/AllPostsActivity.java
+++ b/demo/src/main/java/com/basilgregory/onamsample/AllPostsActivity.java
@@ -179,19 +179,9 @@ public void onLongClick(View view, int position) {
}
- View.OnClickListener removeAllPosts = new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Post.truncate(Post.class);
- }
- };
+ View.OnClickListener removeAllPosts = v -> Post.truncate(Post.class);
- View.OnClickListener addNewPlan = new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startActivity(new Intent(AllPostsActivity.this,AddPostActivity.class));
- }
- };
+ View.OnClickListener addNewPlan = v -> startActivity(new Intent(AllPostsActivity.this,AddPostActivity.class));
private void fetchAllPosts(){
postList = Post.findAll(Post.class);
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 557c9ce..bed9858 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Mon Aug 28 17:03:32 IST 2017
+#Thu Apr 11 11:15:57 CEST 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-all.zip
diff --git a/onam/build.gradle b/onam/build.gradle
index 74b7fc1..a9c9bd8 100644
--- a/onam/build.gradle
+++ b/onam/build.gradle
@@ -1,12 +1,12 @@
apply plugin: 'com.android.library'
android {
- compileSdkVersion 25
- buildToolsVersion "26.0.0"
+ compileSdkVersion 28
+ buildToolsVersion '29.0.0 rc2'
defaultConfig {
minSdkVersion 14
- targetSdkVersion 25
+ targetSdkVersion 28
versionCode 2
versionName "2.1"
@@ -19,14 +19,19 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
+ compileOptions {
+ sourceCompatibility = '1.8'
+ targetCompatibility = '1.8'
+ }
}
dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ androidTestImplementation('com.android.support.test.espresso:espresso-core:2.3-alpha', {
exclude group: 'com.android.support', module: 'support-annotations'
})
- compile 'com.android.support:appcompat-v7:25.3.1'
- testCompile 'junit:junit:4.12'
+ implementation 'com.android.support:appcompat-v7:28.0.0'
+ testImplementation 'junit:junit:4.12'
+ implementation 'com.android.support:appcompat-v7:28.0.0'
}
diff --git a/onam/src/main/AndroidManifest.xml b/onam/src/main/AndroidManifest.xml
index e12eac9..65adb3d 100644
--- a/onam/src/main/AndroidManifest.xml
+++ b/onam/src/main/AndroidManifest.xml
@@ -1,12 +1,10 @@
-
+ package="com.basilgregory.onam">
+ android:label="@string/app_name"
+ android:supportsRtl="true">
diff --git a/onam/src/main/java/com/basilgregory/onam/android/DBExecutor.java b/onam/src/main/java/com/basilgregory/onam/android/DBExecutor.java
index 263a538..95a38e8 100644
--- a/onam/src/main/java/com/basilgregory/onam/android/DBExecutor.java
+++ b/onam/src/main/java/com/basilgregory/onam/android/DBExecutor.java
@@ -36,7 +36,7 @@ class DBExecutor extends SQLiteOpenHelper {
Storage storage;
String dbName;
private static DBExecutor instance = null;
- private static Map instances = new HashMap();
+ private static Map instances = new HashMap<>();
public static DBExecutor getInstance(Context context, String dbName, int version) {
if (instances.containsKey(dbName)) instance = instances.get(dbName);
instance = instance == null ?
@@ -248,7 +248,7 @@ private void findAndSetByReferenceByRowId(Entity entity, long id) {
private List convertToEntityAndFetchFirstDegreeRelatedEntity(Cursor cursor,Class entityClass){
- List entities = new ArrayList();
+ List entities = new ArrayList<>();
if (cursor != null && cursor.getCount() > 0 ) {
cursor.moveToFirst();
do {
diff --git a/onam/src/main/java/com/basilgregory/onam/android/DDLBuilder.java b/onam/src/main/java/com/basilgregory/onam/android/DDLBuilder.java
index 69db29a..77bc1d6 100644
--- a/onam/src/main/java/com/basilgregory/onam/android/DDLBuilder.java
+++ b/onam/src/main/java/com/basilgregory/onam/android/DDLBuilder.java
@@ -19,7 +19,7 @@
class DDLBuilder {
static String createMappingTables(String tableName,Class fromClass,Class targetClass){
- StringBuffer ddlCreate = new StringBuffer();
+ StringBuilder ddlCreate = new StringBuilder();
//This pattern "table [] ( " is used in #{DbUtil.extractNameOfTableFromDdl} cross check when making a change.
ddlCreate.append("create table ").append(tableName).append(" ( ");
ddlCreate.append(DbUtil.getMappingForeignColumnNameClass(fromClass)).append(" integer,");
@@ -32,7 +32,7 @@ static String createMappingTables(String tableName,Class fromClass,Class targetC
static HashMap createTables(List curatedClassList){
- HashMap ddls = new HashMap(curatedClassList.size());
+ HashMap ddls = new HashMap<>(curatedClassList.size());
for(Class cls:curatedClassList) {
if (cls == null || cls.getAnnotation(Table.class) == null) continue;
diff --git a/onam/src/main/java/com/basilgregory/onam/android/DMLBuilder.java b/onam/src/main/java/com/basilgregory/onam/android/DMLBuilder.java
index 79e873a..271f30b 100644
--- a/onam/src/main/java/com/basilgregory/onam/android/DMLBuilder.java
+++ b/onam/src/main/java/com/basilgregory/onam/android/DMLBuilder.java
@@ -33,7 +33,7 @@ static HashMap curateAndDropTables(List tableNamesAlready
}
private static HashMap dropTables(List tableNames){
- HashMap dmls = new HashMap(tableNames.size());
+ HashMap dmls = new HashMap<>(tableNames.size());
for(String tableName:tableNames) {
dmls.put(tableName,dropTable(tableName));
}
@@ -45,7 +45,7 @@ private static String dropTable(String tableName){
}
static HashMap renameTables(Class[] classes){
- HashMap dmls = new HashMap(classes.length);
+ HashMap dmls = new HashMap<>(classes.length);
for(Class cls:classes) {
if (cls == null) continue;
Table table = (Table)cls.getAnnotation(Table.class);
@@ -60,7 +60,7 @@ static HashMap renameTables(Class[] classes){
}
static HashMap addColumns(HashMap> classColumnNamePairs){
- HashMap dmls = new HashMap(classColumnNamePairs.size());
+ HashMap dmls = new HashMap<>(classColumnNamePairs.size());
for(Class cls : classColumnNamePairs.keySet()) {
if (cls == null || cls.getAnnotation(Table.class) == null) continue;
String tableName = DbUtil.getTableName(cls);
@@ -78,7 +78,7 @@ private static String renameTable(String tableName , String oldName){
}
private static List addColumns(List existingTableColumns, Class newTableClass){
- List addColumnsDml = new ArrayList();
+ List addColumnsDml = new ArrayList<>();
if (existingTableColumns == null || newTableClass == null) return addColumnsDml;
Field[] declaredFields = newTableClass.getDeclaredFields();
for (Field field : declaredFields) {
diff --git a/onam/src/main/java/com/basilgregory/onam/android/Entity.java b/onam/src/main/java/com/basilgregory/onam/android/Entity.java
index 2402c5f..3025965 100644
--- a/onam/src/main/java/com/basilgregory/onam/android/Entity.java
+++ b/onam/src/main/java/com/basilgregory/onam/android/Entity.java
@@ -4,14 +4,12 @@
* Created by donpeter on 8/28/17.
*/
-import android.app.Activity;
+import android.support.v7.app.*;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
+import org.json.*;
-import java.io.Serializable;
-import java.util.List;
+import java.io.*;
+import java.util.*;
/**
* This class will act as the base class for all Entity POJOs.
@@ -118,11 +116,11 @@ protected List fetch(List relatedEntityList, Object ho
*
* @param activityObject - Current class object or preferably Acitivty object (ex. Activity.this).
*/
- public static void init(Activity activityObject, Object classWithDBAnnotation){
+ public static void init(AppCompatActivity activityObject, Object classWithDBAnnotation){
DBExecutor.init(activityObject.getApplicationContext(),classWithDBAnnotation);
}
- public static void init(Activity activityObject){
+ public static void init(AppCompatActivity activityObject){
DBExecutor.init(activityObject.getApplicationContext(),activityObject);
}
diff --git a/onam/src/main/java/com/basilgregory/onam/android/QueryBuilder.java b/onam/src/main/java/com/basilgregory/onam/android/QueryBuilder.java
index a0366f2..75bbce6 100644
--- a/onam/src/main/java/com/basilgregory/onam/android/QueryBuilder.java
+++ b/onam/src/main/java/com/basilgregory/onam/android/QueryBuilder.java
@@ -50,7 +50,7 @@ static String findByProperty(Class cls,String columnName,Object value,In
static String findByProperty(Class cls,String columnName,Object value,String orderByColumn, boolean descending, Integer startIndex,Integer pageSize){
value = FieldType.isStringType(value) ? "'"+value+"'" : value;
- StringBuffer orderByCondition = new StringBuffer(orderByColumn)
+ StringBuilder orderByCondition = new StringBuilder(orderByColumn)
.append(" ").append(descending ? "DESC" : "ASC");
return selectQuery(DbUtil.getTableName(cls),columnName+" = "+value,null,orderByCondition.toString(),startIndex,pageSize);
}
@@ -67,7 +67,7 @@ static String findAll(Class cls,String whereClause,Integer startIndex,In
}
static String findAll(Class cls,String whereClause,String orderByColumn,boolean descending,Integer startIndex,Integer pageSize){
- StringBuffer orderByCondition = new StringBuffer(orderByColumn)
+ StringBuilder orderByCondition = new StringBuilder(orderByColumn)
.append(" ").append(descending ? "DESC" : "ASC");
return selectQuery(DbUtil.getTableName(cls),whereClause,null,orderByCondition.toString(),startIndex,pageSize);
}
@@ -86,7 +86,7 @@ static String selectQuery(String tableName,String whereClause,String groupBy,Str
whereClause = whereClause == null? "" : " where "+ whereClause;
groupBy = groupBy == null? "" : " group by "+ groupBy;
orderBy = orderBy == null? "" : " order by "+orderBy;
- StringBuffer selectQuery = new StringBuffer("select * from ").append(tableName)
+ StringBuilder selectQuery = new StringBuilder("select * from ").append(tableName)
.append(whereClause).append(groupBy).append(orderBy);
if (pageSize != null)
selectQuery.append(" LIMIT ").append(startIndex == null? 0 : startIndex).append(",").append(pageSize);
diff --git a/onam/src/main/java/com/basilgregory/onam/android/Storage.java b/onam/src/main/java/com/basilgregory/onam/android/Storage.java
index 3f54d35..a84b722 100644
--- a/onam/src/main/java/com/basilgregory/onam/android/Storage.java
+++ b/onam/src/main/java/com/basilgregory/onam/android/Storage.java
@@ -18,7 +18,7 @@ void storeCurrentDbMeta(String databaseName,DbMetaData dbMetaData) throws Except
"database_meta", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString(databaseName, DB.toString(dbMetaData));
- editor.commit();
+ editor.apply();
}
DbMetaData getCurrentDbMeta(String databaseName) throws Exception{
diff --git a/onam/src/main/java/com/basilgregory/onam/exceptions/ONAMException.java b/onam/src/main/java/com/basilgregory/onam/exceptions/ONAMException.java
index ae4d4d8..ce8176e 100644
--- a/onam/src/main/java/com/basilgregory/onam/exceptions/ONAMException.java
+++ b/onam/src/main/java/com/basilgregory/onam/exceptions/ONAMException.java
@@ -31,7 +31,7 @@ public ONAMException() {
}
public String toString () {
- StringBuffer sb = new StringBuffer(this.code).append(": ").append(this.getMessage());
+ StringBuilder sb = new StringBuilder(this.code).append(": ").append(this.getMessage());
if (entity != null) sb.append("\n Entity").append(entity.getClass().getSimpleName());
if (query != null) sb.append("\n Query").append(query);
if (field != null) sb.append("\n Field").append(field.getName());
diff --git a/settings.gradle b/settings.gradle
index a658349..ea4858b 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1 +1 @@
-include ':demo', ':onam'
+include ':onam', ':demo'