@@ -0,0 +1,1780 @@
+package com.noveogroup.android.task;%0A%0Aimport java.util.List;%0Aimport java.util.concurrent.AbstractExecutorService;%0Aimport java.util.concurrent.TimeUnit;%0A%0Apublic class ExecutorAdapter%3CE extends TaskEnvironment%3E extends AbstractExecutorService %7B%0A%0A    private static class TaskRunnable%3CE extends TaskEnvironment%3E implements Task%3CE%3E %7B%0A%0A        private final Runnable runnable;%0A%0A        private TaskRunnable(Runnable runnable) %7B%0A            this.runnable = runnable;%0A        %7D%0A%0A        public Runnable getRunnable() %7B%0A            return runnable;%0A        %7D%0A%0A        @Override%0A        public void run(E env) throws Throwable %7B%0A            runnable.run();%0A        %7D%0A%0A    %7D%0A%0A    private final TaskExecutor%3CE%3E executor;%0A%0A    public ExecutorAdapter(TaskExecutor%3CE%3E executor) %7B%0A        this.executor = executor;%0A    %7D%0A%0A    @Override%0A    public void shutdown() %7B%0A        executor.shutdown();%0A    %7D%0A%0A    @Override%0A    public List%3CRunnable%3E shutdownNow() %7B%0A        synchronized (executor.lock()) %7B%0A            for (TaskHandler%3C?, E%3E handler : executor.queue()) %7B%0A                TaskRunnable task = (TaskRunnable) handler.task();%0A                task.getRunnable();%0A            %7D%0A        %7D%0A        return null;%0A    %7D%0A%0A    @Override%0A    public boolean isShutdown() %7B%0A        return executor.isShutdown();%0A    %7D%0A%0A    @Override%0A    public boolean isTerminated() %7B%0A        return false;%0A    %7D%0A%0A    @Override%0A    public boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException %7B%0A        long time = unit.convert(timeout, TimeUnit.MILLISECONDS);%0A        TaskSet%3CE%3E queue = executor.queue();%0A        queue.join(time);%0A%0A        return false;%0A    %7D%0A%0A    @Override%0A    public void execute(final Runnable command) %7B%0A        executor.execute(new TaskRunnable%3CE%3E(command));%0A    %7D%0A%0A%7D%0A

implement first draft of ExecutorAdapter