Added concrete SyncBus implementation
This commit is contained in:
parent
f5ecdefcd0
commit
bf0ce9535b
@ -11,7 +11,6 @@ import net.engio.mbassy.subscription.SubscriptionContext;
|
||||
import net.engio.mbassy.subscription.SubscriptionFactory;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.concurrent.*;
|
||||
|
||||
/**
|
||||
* The base class for all message bus implementations.
|
||||
@ -41,7 +40,7 @@ public abstract class AbstractSyncMessageBus<T, P extends ISyncMessageBus.ISyncP
|
||||
private final Collection<Class> nonListeners = new HashSet<Class>();
|
||||
|
||||
// this handler will receive all errors that occur during message dispatch or message handling
|
||||
private final List<IPublicationErrorHandler> errorHandlers = new CopyOnWriteArrayList<IPublicationErrorHandler>();
|
||||
private final List<IPublicationErrorHandler> errorHandlers = new ArrayList<IPublicationErrorHandler>();
|
||||
|
||||
// this factory is used to create specialized subscriptions based on the given message handler configuration
|
||||
// it can be customized by implementing the getSubscriptionFactory() method
|
||||
@ -128,8 +127,10 @@ public abstract class AbstractSyncMessageBus<T, P extends ISyncMessageBus.ISyncP
|
||||
|
||||
|
||||
public final void addErrorHandler(IPublicationErrorHandler handler) {
|
||||
synchronized (this){
|
||||
errorHandlers.add(handler);
|
||||
}
|
||||
}
|
||||
|
||||
protected MessagePublication createMessagePublication(T message) {
|
||||
Collection<Subscription> subscriptions = getSubscriptionsByMessageType(message.getClass());
|
||||
|
@ -1,10 +1,7 @@
|
||||
package net.engio.mbassy.bus;
|
||||
|
||||
import net.engio.mbassy.PublicationError;
|
||||
import net.engio.mbassy.common.DeadMessage;
|
||||
import net.engio.mbassy.subscription.Subscription;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user