Dedicated executors for plugins and the connection recogniser.

This commit is contained in:
akwizgran
2011-12-08 16:11:24 +00:00
parent caf5f34828
commit 6e080bb35d
26 changed files with 223 additions and 176 deletions

View File

@@ -4,5 +4,5 @@ import java.util.concurrent.Executor;
public interface BatchPluginFactory {
BatchPlugin createPlugin(Executor executor, BatchPluginCallback callback);
BatchPlugin createPlugin(Executor e, BatchPluginCallback callback);
}

View File

@@ -0,0 +1,15 @@
package net.sf.briar.api.plugins;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import com.google.inject.BindingAnnotation;
/** Annotation for injecting the executor used by transport plugins. */
@BindingAnnotation
@Target({ PARAMETER })
@Retention(RUNTIME)
public @interface PluginExecutor {}

View File

@@ -4,5 +4,5 @@ import java.util.concurrent.Executor;
public interface StreamPluginFactory {
StreamPlugin createPlugin(Executor executor, StreamPluginCallback callback);
StreamPlugin createPlugin(Executor e, StreamPluginCallback callback);
}

View File

@@ -0,0 +1,17 @@
package net.sf.briar.api.transport;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import com.google.inject.BindingAnnotation;
/**
* Annotation for injecting the executor for recognising incoming connections.
*/
@BindingAnnotation
@Target({ PARAMETER })
@Retention(RUNTIME)
public @interface ConnectionRecogniserExecutor {}