diff --git a/src/java/com/samskivert/util/RunQueue.java b/src/java/com/samskivert/util/RunQueue.java index f211c688..189e40cb 100644 --- a/src/java/com/samskivert/util/RunQueue.java +++ b/src/java/com/samskivert/util/RunQueue.java @@ -22,6 +22,8 @@ package com.samskivert.util; import java.awt.EventQueue; +import java.util.concurrent.Executor; + /** * An interface for a service that queues up execution of Runnables. */ @@ -40,6 +42,27 @@ public interface RunQueue } }; + /** + * Wee helper class to adapt a RunQueue into an Executor. + * While we transition from RunQueue to Executor. + */ + public static class AsExecutor + implements Executor + { + public AsExecutor (RunQueue toAdapt) + { + _runQueue = toAdapt; + } + + // from Executor + public void execute (Runnable command) + { + _runQueue.postRunnable(command); + } + + protected RunQueue _runQueue; + } + /** * Post the specified Runnable to be run on the RunQueue. */ diff --git a/src/java/com/samskivert/util/SerialExecutor.java b/src/java/com/samskivert/util/SerialExecutor.java index b8b99f24..06f83c7c 100644 --- a/src/java/com/samskivert/util/SerialExecutor.java +++ b/src/java/com/samskivert/util/SerialExecutor.java @@ -100,13 +100,9 @@ public class SerialExecutor * @deprecated */ @Deprecated - public SerialExecutor (final RunQueue receiver) + public SerialExecutor (RunQueue receiver) { - this(new Executor() { - public void execute (Runnable r) { - receiver.postRunnable(r); - } - }); + this(new RunQueue.AsExecutor(receiver)); } // from Executor