summaryrefslogtreecommitdiff
path: root/same/src/main/java/com/orbekk/same/BroadcasterImpl.java
diff options
context:
space:
mode:
authorKjetil Ørbekk <kjetil.orbekk@gmail.com>2012-01-18 10:23:30 +0100
committerKjetil Ørbekk <kjetil.orbekk@gmail.com>2012-01-18 10:23:30 +0100
commita076bf70f82e4100feddac63224041465f75c64e (patch)
tree4c88483e9a88295177e4d67b4c148d9c21cebe36 /same/src/main/java/com/orbekk/same/BroadcasterImpl.java
parent5a21215b4ea85bfa4da8d3fbb0f87916c2f4635a (diff)
Refactor Broadcaster.
Take a client url instead of a client parameter, to handle error conditions.
Diffstat (limited to 'same/src/main/java/com/orbekk/same/BroadcasterImpl.java')
-rw-r--r--same/src/main/java/com/orbekk/same/BroadcasterImpl.java16
1 files changed, 5 insertions, 11 deletions
diff --git a/same/src/main/java/com/orbekk/same/BroadcasterImpl.java b/same/src/main/java/com/orbekk/same/BroadcasterImpl.java
index 9ad7296..5efdcf3 100644
--- a/same/src/main/java/com/orbekk/same/BroadcasterImpl.java
+++ b/same/src/main/java/com/orbekk/same/BroadcasterImpl.java
@@ -5,31 +5,25 @@ import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
public class BroadcasterImpl implements Broadcaster {
- private ConnectionManager connections;
private Executor executor;
/**
* Get a BroadcastRunner for ClientService using a thread pool of size 20.
*/
- public static BroadcasterImpl getDefaultBroadcastRunner(
- ConnectionManager connections) {
- return new BroadcasterImpl(Executors.newFixedThreadPool(20),
- connections);
+ public static BroadcasterImpl getDefaultBroadcastRunner() {
+ return new BroadcasterImpl(Executors.newFixedThreadPool(20));
}
- public BroadcasterImpl(Executor executor,
- ConnectionManager connections) {
- this.connections = connections;
+ public BroadcasterImpl(Executor executor) {
this.executor = executor;
}
public synchronized void broadcast(final List<String> targets,
final ServiceOperation operation) {
- for (String t : targets) {
- final ClientService client = connections.getClient(t);
+ for (final String t : targets) {
executor.execute(new Runnable() {
@Override public void run() {
- operation.run(client);
+ operation.run(t);
}
});
}