Blame | Last modification | View Log | RSS feed
package com.saholic.profittill.Services;import android.util.Base64;import org.apache.http.HttpResponse;import org.apache.http.NameValuePair;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.message.BasicNameValuePair;import org.json.JSONObject;import java.io.IOException;import java.util.ArrayDeque;import java.util.ArrayList;import java.util.Queue;import java.util.concurrent.Executor;public class SerialExecutor implements Executor {final Queue<Runnable> tasks = new ArrayDeque();static Executor singletonExector;Executor executor = new Executor() {@Overridepublic void execute(Runnable command) {new Thread(command).start();}};Runnable active;public synchronized void execute(final Runnable r) {tasks.offer(new Runnable() {public void run() {try {r.run();} finally {scheduleNext();}}});if (active == null) {scheduleNext();}}protected synchronized void scheduleNext() {if ((active = tasks.poll()) != null) {executor.execute(active);}}public static Executor getInstance(){if (singletonExector==null) {singletonExector = new SerialExecutor();}return singletonExector;}}