/[projects]/miscJava/CircuitBreaker/src/main/java/dk/thoerup/circuitbreaker/notification/AsyncNotifier.java
ViewVC logotype

Contents of /miscJava/CircuitBreaker/src/main/java/dk/thoerup/circuitbreaker/notification/AsyncNotifier.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3212 - (show annotations) (download)
Thu Dec 28 09:34:47 2017 UTC (6 years, 4 months ago) by torben
File size: 790 byte(s)
Use generics to encapsulate returned value
1 package dk.thoerup.circuitbreaker.notification;
2
3 import java.util.concurrent.ExecutorService;
4
5 import dk.thoerup.circuitbreaker.CircuitBreaker;
6 import dk.thoerup.circuitbreaker.Event;
7
8 public abstract class AsyncNotifier implements Notifier {
9
10
11 public final void sendNotification(CircuitBreaker<?> breaker, Event evnt) {
12 ExecutorService exec = breaker.getExecutor();
13
14 exec.submit( new AsyncRunnable(breaker, evnt) );
15 }
16
17 public abstract void sendAsync(CircuitBreaker<?> breaker, Event evnt);
18
19 public class AsyncRunnable implements Runnable {
20 CircuitBreaker<?> breaker;
21 Event evnt;
22
23 public AsyncRunnable(CircuitBreaker<?> breaker, Event evnt) {
24 this.breaker = breaker;
25 this.evnt = evnt;
26 }
27
28
29 public void run() {
30 sendAsync(breaker, evnt);
31 }
32
33
34 }
35
36 }

  ViewVC Help
Powered by ViewVC 1.1.20