@Override public void complete() { synchronized (mLock) { if (mParams != null) { mParams.completeWork(mJobWork); } } } }
@Override public void run() { download(workIndex, url); params.completeWork(itemToDo); scheduleWork(params); } });
@Override public void complete() { synchronized (mLock) { if (mParams != null) { try { mParams.completeWork(mJobWork); } catch (SecurityException se) { // ignore se.printStackTrace(); } } } } }
@Override public void complete() { synchronized (mLock) { if (mParams != null) { try { mParams.completeWork(mJobWork); } catch (SecurityException se) { // ignore se.printStackTrace(); } } } } }
@Override public void complete() { synchronized (mLock) { if (mParams != null) { try { mParams.completeWork(mJobWork); } catch (SecurityException se) { // ignore se.printStackTrace(); } } } } }
@Override protected Void doInBackground(Void... params) { boolean cancelled; JobWorkItem work; /** * Iterate over available work. Once dequeueWork() returns null, the * job's work queue is empty and the job has stopped, so we can let this * async task complete. */ while (!(cancelled=isCancelled()) && (work=mParams.dequeueWork()) != null) { String txt = work.getIntent().getStringExtra("Key1"); Log.i("JobWorkService", "Processing work: " + work + ", msg: " + txt); showNotification(txt); // Process work here... we'll pretend by sleeping. try { Thread.sleep(5000); } catch (InterruptedException e) { } hideNotification(); // Tell system we have finished processing the work. Log.i("JobWorkService", "Done with: " + work); mParams.completeWork(work); } if (cancelled) { Log.i("JobWorkService", "CANCELLED!"); } return null; } }