content: package dk.aau.netsec.hostage.sync.android;
  
  import android.app.Service;
  import android.content.Intent;
  import android.os.IBinder;
  import android.util.Log;
  
  /**
   * Created by abrakowski
   */
  public class SyncService extends Service {
      private static final String TAG = "SyncService";
  
      private static final Object sSyncAdapterLock = new Object();
      private static SyncAdapter sSyncAdapter = null;
  
      /**
       * Thread-safe constructor, creates static {@link SyncAdapter} instance.
       */
      @Override
      public void onCreate() {
          super.onCreate();
          Log.i(TAG, "Service created");
          synchronized (sSyncAdapterLock) {
              if (sSyncAdapter == null) {
                  sSyncAdapter = new SyncAdapter(getApplicationContext(), true);
              }
          }
      }
  
      @Override
      /**
       * Logging-only destructor.
       */
      public void onDestroy() {
          super.onDestroy();
          Log.i(TAG, "Service destroyed");
      }
  
      /**
       * Return Binder handle for IPC communication with {@link SyncAdapter}.
       *
       * <p>New sync requests will be sent directly to the SyncAdapter using this channel.
       *
       * @param intent Calling intent
       * @return Binder handle for {@link SyncAdapter}
       */
      @Override
      public IBinder onBind(Intent intent) {
          return sSyncAdapter.getSyncAdapterBinder();
      }
  }
  