|
@@ -469,7 +469,7 @@ public class HostageDBOpenHelper extends SQLiteOpenHelper {
|
|
for (SyncDevice device : allDevices){
|
|
for (SyncDevice device : allDevices){
|
|
Long sync_id = deviceIDmap.get(device.getDeviceID());
|
|
Long sync_id = deviceIDmap.get(device.getDeviceID());
|
|
long highestID = device.getHighest_attack_id();
|
|
long highestID = device.getHighest_attack_id();
|
|
- if (sync_id != null) highestID = sync_id.longValue();
|
|
|
|
|
|
+ if (sync_id != null && highestID < sync_id) highestID = sync_id.longValue();
|
|
device.setHighest_attack_id(highestID);
|
|
device.setHighest_attack_id(highestID);
|
|
}
|
|
}
|
|
this.updateSyncDevices(allDevices, db);
|
|
this.updateSyncDevices(allDevices, db);
|
|
@@ -1848,9 +1848,11 @@ public class HostageDBOpenHelper extends SQLiteOpenHelper {
|
|
|
|
|
|
String filterQuery = this.selectionQueryFromFilter(filter, AttackEntry.COLUMN_NAME_ATTACK_ID);
|
|
String filterQuery = this.selectionQueryFromFilter(filter, AttackEntry.COLUMN_NAME_ATTACK_ID);
|
|
|
|
|
|
- String attackPerESSID_Query = "SELECT " + NetworkEntry.COLUMN_NAME_SSID + " , " + "COUNT( " + AttackEntry.COLUMN_NAME_ATTACK_ID + " ) " + " "
|
|
|
|
- + " FROM " + AttackEntry.TABLE_NAME + " a " + " , " + NetworkEntry.TABLE_NAME
|
|
|
|
- + " WHERE " + " a." + AttackEntry.COLUMN_NAME_ATTACK_ID + " IN " + " ( " + filterQuery + " ) "
|
|
|
|
|
|
+ filterQuery = filterQuery.split("GROUP BY")[0];
|
|
|
|
+
|
|
|
|
+ String attackPerESSID_Query = "SELECT " + NetworkEntry.COLUMN_NAME_SSID + " , " + "COUNT( " + " * " + " ) " + " "
|
|
|
|
+ + " FROM " + AttackEntry.TABLE_NAME + " NATURAL JOIN " + NetworkEntry.TABLE_NAME //AttackEntry.TABLE_NAME + " a " + " , " + NetworkEntry.TABLE_NAME
|
|
|
|
+ + " WHERE " + AttackEntry.COLUMN_NAME_ATTACK_ID + " IN " + " ( " + filterQuery + " ) "
|
|
+ " GROUP BY " + NetworkEntry.TABLE_NAME+"."+NetworkEntry.COLUMN_NAME_SSID;
|
|
+ " GROUP BY " + NetworkEntry.TABLE_NAME+"."+NetworkEntry.COLUMN_NAME_SSID;
|
|
|
|
|
|
SQLiteDatabase db = this.getReadableDatabase();
|
|
SQLiteDatabase db = this.getReadableDatabase();
|
|
@@ -2093,10 +2095,12 @@ public class HostageDBOpenHelper extends SQLiteOpenHelper {
|
|
|
|
|
|
String filterQuery = this.selectionQueryFromFilter(filter, AttackEntry.COLUMN_NAME_ATTACK_ID);
|
|
String filterQuery = this.selectionQueryFromFilter(filter, AttackEntry.COLUMN_NAME_ATTACK_ID);
|
|
|
|
|
|
- String attackPerBSSID_Query = "SELECT " + NetworkEntry.TABLE_NAME + "." + NetworkEntry.COLUMN_NAME_BSSID + " , " + "COUNT( " + AttackEntry.COLUMN_NAME_ATTACK_ID + " ) " + " "
|
|
|
|
- + " FROM " + AttackEntry.TABLE_NAME + " a " + " , " + NetworkEntry.TABLE_NAME
|
|
|
|
|
|
+ filterQuery = filterQuery.split("GROUP BY")[0];
|
|
|
|
+
|
|
|
|
+ String attackPerBSSID_Query = "SELECT " + AttackEntry.COLUMN_NAME_BSSID + " , " + "COUNT( " + "*" + " ) " + " "
|
|
|
|
+ + " FROM " + AttackEntry.TABLE_NAME + " a "
|
|
+ " WHERE " + " a." + AttackEntry.COLUMN_NAME_ATTACK_ID + " IN " + " ( " + filterQuery + " ) "
|
|
+ " WHERE " + " a." + AttackEntry.COLUMN_NAME_ATTACK_ID + " IN " + " ( " + filterQuery + " ) "
|
|
- + " GROUP BY " + NetworkEntry.TABLE_NAME + "." + NetworkEntry.COLUMN_NAME_BSSID;
|
|
|
|
|
|
+ + " GROUP BY " + AttackEntry.COLUMN_NAME_BSSID;
|
|
|
|
|
|
SQLiteDatabase db = this.getReadableDatabase();
|
|
SQLiteDatabase db = this.getReadableDatabase();
|
|
Cursor cursor = db.rawQuery(attackPerBSSID_Query, null);
|
|
Cursor cursor = db.rawQuery(attackPerBSSID_Query, null);
|