2013-10-25 17:19:00 +02:00
|
|
|
/*
|
2019-01-23 18:03:33 +01:00
|
|
|
* This is the source code of Telegram for Android v. 5.x.x.
|
2013-10-25 17:19:00 +02:00
|
|
|
* It is licensed under GNU GPL v. 2 or later.
|
|
|
|
* You should have received a copy of the license in this archive (see LICENSE).
|
|
|
|
*
|
2019-01-23 18:03:33 +01:00
|
|
|
* Copyright Nikolai Kudashov, 2013-2018.
|
2013-10-25 17:19:00 +02:00
|
|
|
*/
|
|
|
|
|
2015-09-24 22:52:02 +02:00
|
|
|
package org.telegram.messenger;
|
2013-10-25 17:19:00 +02:00
|
|
|
|
|
|
|
import android.accounts.Account;
|
|
|
|
import android.accounts.OperationCanceledException;
|
|
|
|
import android.app.Service;
|
|
|
|
import android.content.AbstractThreadedSyncAdapter;
|
|
|
|
import android.content.ContentProviderClient;
|
|
|
|
import android.content.Context;
|
|
|
|
import android.content.Intent;
|
|
|
|
import android.content.SyncResult;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import android.os.IBinder;
|
|
|
|
|
|
|
|
public class ContactsSyncAdapterService extends Service {
|
|
|
|
private static SyncAdapterImpl sSyncAdapter = null;
|
|
|
|
|
|
|
|
public ContactsSyncAdapterService() {
|
|
|
|
super();
|
|
|
|
}
|
|
|
|
|
|
|
|
private static class SyncAdapterImpl extends AbstractThreadedSyncAdapter {
|
|
|
|
private Context mContext;
|
|
|
|
|
|
|
|
public SyncAdapterImpl(Context context) {
|
|
|
|
super(context, true);
|
|
|
|
mContext = context;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onPerformSync(Account account, Bundle extras, String authority, ContentProviderClient provider, SyncResult syncResult) {
|
|
|
|
try {
|
|
|
|
ContactsSyncAdapterService.performSync(mContext, account, extras, authority, provider, syncResult);
|
|
|
|
} catch (OperationCanceledException e) {
|
2017-03-31 01:58:05 +02:00
|
|
|
FileLog.e(e);
|
2013-10-25 17:19:00 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public IBinder onBind(Intent intent) {
|
|
|
|
return getSyncAdapter().getSyncAdapterBinder();
|
|
|
|
}
|
|
|
|
|
|
|
|
private SyncAdapterImpl getSyncAdapter() {
|
|
|
|
if (sSyncAdapter == null) {
|
|
|
|
sSyncAdapter = new SyncAdapterImpl(this);
|
|
|
|
}
|
|
|
|
return sSyncAdapter;
|
|
|
|
}
|
|
|
|
|
|
|
|
private static void performSync(Context context, Account account, Bundle extras, String authority, ContentProviderClient provider, SyncResult syncResult)
|
|
|
|
throws OperationCanceledException {
|
2018-07-30 04:07:02 +02:00
|
|
|
if (BuildVars.LOGS_ENABLED) {
|
|
|
|
FileLog.d("performSync: " + account.toString());
|
|
|
|
}
|
2013-10-25 17:19:00 +02:00
|
|
|
}
|
|
|
|
}
|