1 /* ownCloud Android client application 
   2  *   Copyright (C) 2011  Bartek Przybylski 
   3  *   Copyright (C) 2012-2013 ownCloud Inc. 
   5  *   This program is free software: you can redistribute it and/or modify 
   6  *   it under the terms of the GNU General Public License version 2, 
   7  *   as published by the Free Software Foundation. 
   9  *   This program is distributed in the hope that it will be useful, 
  10  *   but WITHOUT ANY WARRANTY; without even the implied warranty of 
  11  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
  12  *   GNU General Public License for more details. 
  14  *   You should have received a copy of the GNU General Public License 
  15  *   along with this program.  If not, see <http://www.gnu.org/licenses/>. 
  18 package com
.owncloud
.android
.syncadapter
; 
  20 import android
.app
.Service
; 
  21 import android
.content
.Intent
; 
  22 import android
.os
.IBinder
; 
  25  * Background service for synchronizing remote files with their local state. 
  27  * Serves as a connector to an instance of {@link FileSyncAdapter}, as required by standard Android APIs.  
  29  * @author Bartek Przybylski 
  30  * @author David A. Velasco 
  32 public class FileSyncService 
extends Service 
{ 
  34     // Storage for an instance of the sync adapter 
  35     private static FileSyncAdapter sSyncAdapter 
= null
; 
  36     // Object to use as a thread-safe lock 
  37     private static final Object sSyncAdapterLock 
= new Object(); 
  43     public void onCreate() { 
  44         synchronized (sSyncAdapterLock
) { 
  45             if (sSyncAdapter 
== null
) { 
  46                 sSyncAdapter 
= new FileSyncAdapter(getApplicationContext(), true
); 
  55     public IBinder 
onBind(Intent intent
) { 
  56        return sSyncAdapter
.getSyncAdapterBinder();