Skip to content

Commit 855970d

Browse files
committed
1. Removed Sweet Alert Dialog because of issues.
2. Added some more Text Utilities.
1 parent 5b5636b commit 855970d

File tree

14 files changed

+312
-1246
lines changed

14 files changed

+312
-1246
lines changed

.idea/caches/build_file_checksums.ser

0 Bytes
Binary file not shown.

.idea/codeStyles/Project.xml

Lines changed: 0 additions & 29 deletions
This file was deleted.

.idea/encodings.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/java/com/amit/db/DBHelper.java

Lines changed: 158 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,12 @@
88

99
import com.amit.utilities.SharedPreferenceData;
1010

11+
import org.json.JSONArray;
12+
import org.json.JSONObject;
13+
1114
import java.lang.reflect.Method;
1215
import java.util.ArrayList;
16+
import java.util.Iterator;
1317
import java.util.LinkedHashMap;
1418
import java.util.TreeSet;
1519

@@ -20,7 +24,7 @@
2024
* this class has method for executing db queries
2125
* like: creating table, inserting into table, deleting table, dropping table
2226
**/
23-
@SuppressWarnings({"unused", "unchecked", "PrimitiveArrayArgumentToVarargsMethod", "ConstantConditions"})
27+
@SuppressWarnings({"unused", "WeakerAccess", "UnusedReturnValue"})
2428
public class DBHelper
2529
{
2630
private static final String TAG = DBHelper.class.getSimpleName();
@@ -1102,12 +1106,12 @@ public DBHelper insertData(String tableName)
11021106
**/
11031107
//#endregion COMMENTS FOR insertDataWithTransaction method
11041108
@Deprecated
1105-
public DBHelper insertDataWithTransaction(String tableName)
1109+
public void insertDataWithTransaction(String tableName)
11061110
{
11071111
if (dbDataArrayList == null || dbDataArrayList.size() == 0)
11081112
{
11091113
Log.e(TAG, "insertDataWithTransaction: Db Data was not provided. Cannot insert data in table.");
1110-
return this;
1114+
return;
11111115
}
11121116

11131117
// tree set is used for removing duplicate column name from data array list
@@ -1233,7 +1237,6 @@ else if (columnData instanceof Double || columnData instanceof Float)
12331237
db.getWritableDatabase().endTransaction();
12341238

12351239
dbDataArrayList = new ArrayList<>();
1236-
return this;
12371240
}
12381241

12391242
//#region COMMENTS FOR insertDataWithTransaction method
@@ -1249,12 +1252,12 @@ else if (columnData instanceof Double || columnData instanceof Float)
12491252
* this method is useful for inserting bulk records into table in less time
12501253
**/
12511254
//#endregion COMMENTS FOR insertDataWithTransaction method
1252-
public DBHelper insertDataWithTransaction(String tableName, int dbColumnCount)
1255+
public void insertDataWithTransaction(String tableName, int dbColumnCount)
12531256
{
12541257
if (dbDataArrayList == null || dbDataArrayList.size() == 0)
12551258
{
12561259
Log.e(TAG, "insertDataWithTransaction: Db Data was not provided. Cannot insert data in table.");
1257-
return this;
1260+
return;
12581261
}
12591262

12601263
// tree set is used for removing duplicate column name from data array list
@@ -1385,7 +1388,155 @@ else if (columnData instanceof Double || columnData instanceof Float)
13851388
db.getWritableDatabase().endTransaction();
13861389

13871390
dbDataArrayList = new ArrayList<>();
1388-
return this;
1391+
}
1392+
1393+
//#region COMMENTS FOR insertDataWithJson method
1394+
/**
1395+
* 2019 Apr 25 - Thursday - 12:25 PM
1396+
* insert data with json method
1397+
*
1398+
* this method will insert data using JSON Array or JSON Object
1399+
*
1400+
* @param tableName - name of the table to insert data in
1401+
*
1402+
* @param object - JSON Object or JSON Array of records and columns to be inserted
1403+
*
1404+
* @return True or False for success for failure in inserting records
1405+
**/
1406+
//#endregion COMMENTS FOR insertDataWithJson method
1407+
public boolean insertDataWithJson(String tableName, Object object)
1408+
{
1409+
try
1410+
{
1411+
JSONArray jsonArray = new JSONArray();
1412+
1413+
if (object == null)
1414+
{
1415+
Log.e(TAG, "insertData: object value cannot be null.");
1416+
return false;
1417+
}
1418+
1419+
if (object instanceof ArrayList)
1420+
{
1421+
Log.e(TAG, "insertDataWithJson: cannot parse array list, you can use json object or json array.");
1422+
return false;
1423+
}
1424+
1425+
if (object instanceof JSONObject)
1426+
{
1427+
Iterator<String> iterator = ((JSONObject) object).keys();
1428+
1429+
while (iterator.hasNext())
1430+
{
1431+
String key = iterator.next();
1432+
jsonArray = ((JSONObject) object).getJSONArray(key);
1433+
1434+
Log.e(TAG, "insertData: json array for " + key + " is: " + jsonArray);
1435+
}
1436+
}
1437+
else if (object instanceof JSONArray)
1438+
{
1439+
jsonArray = (JSONArray) object;
1440+
}
1441+
1442+
for (int i = 0; i < jsonArray.length(); i++)
1443+
{
1444+
JSONObject jsonObject = jsonArray.getJSONObject(i);
1445+
Iterator<String> iterator = jsonObject.keys();
1446+
1447+
while (iterator.hasNext())
1448+
{
1449+
String columnName = iterator.next();
1450+
String columnData = jsonObject.getString(columnName);
1451+
1452+
// Log.e(TAG, "insertData: name of column from json is: " + columnName);
1453+
// Log.e(TAG, "insertData: value of column from json is: " + columnData);
1454+
1455+
this.addDataForTable(new DbData(columnName, columnData));
1456+
}
1457+
}
1458+
1459+
this.insertDataWithTransaction(tableName, 5);
1460+
return true;
1461+
}
1462+
catch (Exception e)
1463+
{
1464+
Log.e(TAG, "insertData: exception while inserting data using json:\n");
1465+
e.printStackTrace();
1466+
1467+
return false;
1468+
}
1469+
}
1470+
1471+
//#region COMMENTS FOR insertDataWithJsonAndTransaction method
1472+
/**
1473+
* 2019 Apr 25 - Thursday - 12:25 PM
1474+
* insert data with json method
1475+
*
1476+
* this method will insert data using JSON Array or JSON Object
1477+
* this method will user SQLite Database Transaction for inserting records in db
1478+
*
1479+
* @param tableName - name of the table to insert data in
1480+
*
1481+
* @param object - JSON Object or JSON Array of records and columns to be inserted
1482+
*
1483+
* @param tableColumnCount - Count of Number of columns for that table
1484+
*
1485+
* @return True or False for success for failure in inserting records
1486+
**/
1487+
//#endregion COMMENTS FOR insertDataWithJsonAndTransaction method
1488+
public boolean insertDataWithJsonAndTransaction(String tableName, Object object, int tableColumnCount)
1489+
{
1490+
try
1491+
{
1492+
JSONArray jsonArray = new JSONArray();
1493+
1494+
if (object == null)
1495+
{
1496+
Log.e(TAG, "insertData: object value cannot be null.");
1497+
return false;
1498+
}
1499+
1500+
if (object instanceof JSONObject)
1501+
{
1502+
Iterator<String> iterator = ((JSONObject) object).keys();
1503+
1504+
while (iterator.hasNext())
1505+
{
1506+
String key = iterator.next();
1507+
jsonArray = ((JSONObject) object).getJSONArray(key);
1508+
1509+
// Log.e(TAG, "insertData: json array for " + key + " is: " + jsonArray);
1510+
}
1511+
}
1512+
else if (object instanceof JSONArray)
1513+
{
1514+
jsonArray = (JSONArray) object;
1515+
}
1516+
1517+
for (int i = 0; i < jsonArray.length(); i++)
1518+
{
1519+
JSONObject jsonObject = jsonArray.getJSONObject(i);
1520+
Iterator<String> iterator = jsonObject.keys();
1521+
1522+
while (iterator.hasNext())
1523+
{
1524+
String columnName = iterator.next();
1525+
String columnData = jsonObject.getString(columnName);
1526+
this.addDataForTable(new DbData(columnName, columnData));
1527+
}
1528+
}
1529+
1530+
this.insertDataWithTransaction(tableName, tableColumnCount);
1531+
return true;
1532+
}
1533+
catch (Exception e)
1534+
{
1535+
Log.e(TAG, "insertData: exception while inserting data using json:\n");
1536+
e.printStackTrace();
1537+
1538+
return false;
1539+
}
13891540
}
13901541

13911542
//#region COMMENTS FOR updateData method

app/src/main/java/com/amit/dialog/sweetAlert/OptAnimationLoader.java

Lines changed: 0 additions & 123 deletions
This file was deleted.

0 commit comments

Comments
 (0)