Android Open Source - android-sync-nosql Wait For Result






From Project

Back to project page android-sync-nosql.

License

The source code is released under:

MIT License

If you think the Android project android-sync-nosql listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.znck.android.nosql.util;
// w w  w . ja v  a  2  s.  c om
import android.util.Log;

import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;

public abstract class WaitForResult {
    private Lock lock = new ReentrantLock();
    private boolean working = false;
    private Condition workingCondition = lock.newCondition();

    abstract public void run();

    public final void execute() {
        Log.d("SYNC", "Executing tasks");
        lock.lock();
        try {
            run();
            while (working) {
                Log.d("SYNC", "Waiting for tasks");
                workingCondition.awaitUninterruptibly();
            }
        } finally {
            Log.d("SYNC", "Tasks finished");
            unlock();
            lock.unlock();
        }
    }

    public final void lock() {
        working = true;
    }

    public final void unlock() {
        working = false;
    }
}




Java Source Code List

com.znck.android.nosql.DatabaseHelper.java
com.znck.android.nosql.Document.java
com.znck.android.nosql.sync.AsyncSyncManager.java
com.znck.android.nosql.sync.BaseSyncManager.java
com.znck.android.nosql.sync.HttpSyncManager.java
com.znck.android.nosql.util.Callback.java
com.znck.android.nosql.util.JSON.java
com.znck.android.nosql.util.JSONable.java
com.znck.android.nosql.util.OnResult.java
com.znck.android.nosql.util.WaitForResult.java