|
|
@ -379,6 +379,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void run() {
|
|
|
|
public void run() {
|
|
|
|
|
|
|
|
try {
|
|
|
|
Map<String, String> crumb = new HashMap<>();
|
|
|
|
Map<String, String> crumb = new HashMap<>();
|
|
|
|
crumb.put("account", accountNetworkState.accountState.id.toString());
|
|
|
|
crumb.put("account", accountNetworkState.accountState.id.toString());
|
|
|
|
crumb.put("connected", Boolean.toString(accountNetworkState.networkState.isConnected()));
|
|
|
|
crumb.put("connected", Boolean.toString(accountNetworkState.networkState.isConnected()));
|
|
|
@ -391,19 +392,25 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
Log.i("### start=" + accountNetworkState + " sync=" + sync);
|
|
|
|
Log.i("### start=" + accountNetworkState + " sync=" + sync);
|
|
|
|
astate.start();
|
|
|
|
astate.start();
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "### started=" + accountNetworkState);
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "### started=" + accountNetworkState);
|
|
|
|
|
|
|
|
} catch (Throwable ex) {
|
|
|
|
|
|
|
|
Log.e(ex);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void stop(final TupleAccountNetworkState accountNetworkState) {
|
|
|
|
private void stop(final TupleAccountNetworkState accountNetworkState) {
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "Service stop=" + accountNetworkState);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
final Core.State state = coreStates.get(accountNetworkState.accountState.id);
|
|
|
|
final Core.State state = coreStates.get(accountNetworkState.accountState.id);
|
|
|
|
|
|
|
|
if (state == null)
|
|
|
|
|
|
|
|
return;
|
|
|
|
coreStates.remove(accountNetworkState.accountState.id);
|
|
|
|
coreStates.remove(accountNetworkState.accountState.id);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "Service stop=" + accountNetworkState);
|
|
|
|
|
|
|
|
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void run() {
|
|
|
|
public void run() {
|
|
|
|
|
|
|
|
try {
|
|
|
|
Map<String, String> crumb = new HashMap<>();
|
|
|
|
Map<String, String> crumb = new HashMap<>();
|
|
|
|
crumb.put("account", accountNetworkState.accountState.id.toString());
|
|
|
|
crumb.put("account", accountNetworkState.accountState.id.toString());
|
|
|
|
crumb.put("connected", Boolean.toString(accountNetworkState.networkState.isConnected()));
|
|
|
|
crumb.put("connected", Boolean.toString(accountNetworkState.networkState.isConnected()));
|
|
|
@ -417,6 +424,9 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
state.stop();
|
|
|
|
state.stop();
|
|
|
|
state.join();
|
|
|
|
state.join();
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "### stopped=" + accountNetworkState);
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "### stopped=" + accountNetworkState);
|
|
|
|
|
|
|
|
} catch (Throwable ex) {
|
|
|
|
|
|
|
|
Log.e(ex);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -427,6 +437,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void run() {
|
|
|
|
public void run() {
|
|
|
|
|
|
|
|
try {
|
|
|
|
DB db = DB.getInstance(ServiceSynchronize.this);
|
|
|
|
DB db = DB.getInstance(ServiceSynchronize.this);
|
|
|
|
db.account().deleteAccount(accountNetworkState.accountState.id);
|
|
|
|
db.account().deleteAccount(accountNetworkState.accountState.id);
|
|
|
|
|
|
|
|
|
|
|
@ -434,6 +445,9 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
|
|
|
|
NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
|
|
|
|
nm.deleteNotificationChannel(EntityAccount.getNotificationChannelId(accountNetworkState.accountState.id));
|
|
|
|
nm.deleteNotificationChannel(EntityAccount.getNotificationChannelId(accountNetworkState.accountState.id));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
} catch (Throwable ex) {
|
|
|
|
|
|
|
|
Log.e(ex);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -442,6 +456,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
queue.submit(new Runnable() {
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void run() {
|
|
|
|
public void run() {
|
|
|
|
|
|
|
|
try {
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "### quit eventId=" + eventId);
|
|
|
|
EntityLog.log(ServiceSynchronize.this, "### quit eventId=" + eventId);
|
|
|
|
|
|
|
|
|
|
|
|
if (eventId == null) {
|
|
|
|
if (eventId == null) {
|
|
|
@ -469,6 +484,9 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
|
|
|
|
|
|
|
|
|
|
|
WorkerCleanup.cleanupConditionally(ServiceSynchronize.this);
|
|
|
|
WorkerCleanup.cleanupConditionally(ServiceSynchronize.this);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
} catch (Throwable ex) {
|
|
|
|
|
|
|
|
Log.e(ex);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|