public static void uploadPendingPhotos(final Context context) { Log.e(LOG, "############### uploadPendingPhotos, will start service"); CacheUtil.getCachedData( context, CacheUtil.CACHE_PHOTOS, new CacheUtil.CacheUtilListener() { @Override public void onFileDataDeserialized(ResponseDTO response) { Log.e(LOG, "##### cached photo list returned - may start service if needed"); if (response != null) { if (response.getPhotoCache() != null) { list = response.getPhotoCache().getPhotoUploadList(); Intent intent = new Intent(context, PhotoUploadService.class); context.startService(intent); return; } } else { Log.w(LOG, "##### no photos found in cache for upload, response is NULL"); } } @Override public void onDataCached() {} @Override public void onError() {} }); }
private static void addPhotoToCache(final Context context, final PhotoUploadDTO dto) { Log.w(LOG, "**** addPhotoToCache starting ..."); CacheUtil.getCachedData( context, CacheUtil.CACHE_PHOTOS, new CacheUtil.CacheUtilListener() { @Override public void onFileDataDeserialized(ResponseDTO response) { if (response != null) { if (response.getPhotoCache() != null) { list = response.getPhotoCache().getPhotoUploadList(); list.add(0, dto); } } else { response = new ResponseDTO(); list = new ArrayList<>(); list.add(dto); } Log.w(LOG, "**** setting cache...about to cache: " + list.size()); response.setPhotoCache(new PhotoCache()); response.getPhotoCache().setPhotoUploadList(list); CacheUtil.cacheData( context, response, CacheUtil.CACHE_PHOTOS, new CacheUtil.CacheUtilListener() { @Override public void onFileDataDeserialized(ResponseDTO response) {} @Override public void onDataCached() { Log.e(LOG, "=======> photos have been cached: " + list.size()); } @Override public void onError() {} }); // start service to upload images in cache Intent intent = new Intent(context, PhotoUploadService.class); context.startService(intent); } @Override public void onDataCached() {} @Override public void onError() { Log.e(LOG, "******* error in service"); } }); }
private void saveCache() { Log.d(LOG, "*** saveCache starting............"); ResponseDTO r = new ResponseDTO(); PhotoCache pc = new PhotoCache(); pc.setPhotoUploadList(list); r.setPhotoCache(pc); CacheUtil.cacheData( getApplicationContext(), r, CacheUtil.CACHE_PHOTOS, new CacheUtil.CacheUtilListener() { @Override public void onFileDataDeserialized(ResponseDTO response) {} @Override public void onDataCached() {} @Override public void onError() {} }); }