From 31e9fe84b32ac2f30771a77164bd3240d8cf2ef0 Mon Sep 17 00:00:00 2001 From: nathan Date: Mon, 8 Jun 2015 00:29:10 +0200 Subject: [PATCH] Renamed to MessageBus. Code cleanup --- .../{MultiMBassador.java => MessageBus.java} | 50 +++++++++---------- .../{ => thread}/NamedThreadFactory.java | 2 +- .../{common => utils}/ClassUtils.java | 4 +- .../{common => utils}/ReflectionUtils.java | 2 +- .../SubscriptionUtils.java | 5 +- .../{common => utils}/VarArgUtils.java | 5 +- 6 files changed, 37 insertions(+), 31 deletions(-) rename src/main/java/dorkbox/util/messagebus/{MultiMBassador.java => MessageBus.java} (85%) rename src/main/java/dorkbox/util/messagebus/common/{ => thread}/NamedThreadFactory.java (98%) rename src/main/java/dorkbox/util/messagebus/{common => utils}/ClassUtils.java (98%) rename src/main/java/dorkbox/util/messagebus/{common => utils}/ReflectionUtils.java (99%) rename src/main/java/dorkbox/util/messagebus/{subscription => utils}/SubscriptionUtils.java (98%) rename src/main/java/dorkbox/util/messagebus/{common => utils}/VarArgUtils.java (97%) diff --git a/src/main/java/dorkbox/util/messagebus/MultiMBassador.java b/src/main/java/dorkbox/util/messagebus/MessageBus.java similarity index 85% rename from src/main/java/dorkbox/util/messagebus/MultiMBassador.java rename to src/main/java/dorkbox/util/messagebus/MessageBus.java index 56d07a3..5ce8520 100644 --- a/src/main/java/dorkbox/util/messagebus/MultiMBassador.java +++ b/src/main/java/dorkbox/util/messagebus/MessageBus.java @@ -1,9 +1,9 @@ package dorkbox.util.messagebus; -import dorkbox.util.messagebus.common.NamedThreadFactory; import dorkbox.util.messagebus.common.simpleq.MessageType; import dorkbox.util.messagebus.common.simpleq.MpmcMultiTransferArrayQueue; import dorkbox.util.messagebus.common.simpleq.MultiNode; +import dorkbox.util.messagebus.common.thread.NamedThreadFactory; import dorkbox.util.messagebus.error.IPublicationErrorHandler; import dorkbox.util.messagebus.error.PublicationError; import dorkbox.util.messagebus.subscription.Matcher; @@ -19,7 +19,7 @@ import java.util.Collection; * @author dorkbox, llc * Date: 2/2/15 */ -public class MultiMBassador implements IMessageBus { +public class MessageBus implements IMessageBus { public static final String ERROR_HANDLER_MSG = "INFO: No error handler has been configured to handle exceptions during publication.\n" + "Publication error handlers can be added by bus.addErrorHandler()\n" + "Falling back to console logger."; @@ -43,22 +43,22 @@ public class MultiMBassador implements IMessageBus { /** * By default, will permit subTypes and VarArg matching, and will use half of CPUs available for dispatching async messages */ - public MultiMBassador() { + public MessageBus() { this(Runtime.getRuntime().availableProcessors() / 2); } /** * @param numberOfThreads how many threads to have for dispatching async messages */ - public MultiMBassador(int numberOfThreads) { + public MessageBus(int numberOfThreads) { this(PublishMode.ExactWithSuperTypes, numberOfThreads); } /** - * @param publishMode Specifies which publishMode to operate the publication of messages. - * @param numberOfThreads how many threads to have for dispatching async messages + * @param publishMode Specifies which publishMode to operate the publication of messages. + * @param numberOfThreads how many threads to have for dispatching async messages */ - public MultiMBassador(final PublishMode publishMode, int numberOfThreads) { + public MessageBus(final PublishMode publishMode, int numberOfThreads) { if (numberOfThreads < 2) { numberOfThreads = 2; // at LEAST 2 threads } @@ -86,10 +86,10 @@ public class MultiMBassador implements IMessageBus { Runnable runnable = new Runnable() { @Override public void run() { - MpmcMultiTransferArrayQueue IN_QUEUE = MultiMBassador.this.dispatchQueue; + MpmcMultiTransferArrayQueue IN_QUEUE = MessageBus.this.dispatchQueue; MultiNode node = new MultiNode(); - while (!MultiMBassador.this.shuttingDown) { + while (!MessageBus.this.shuttingDown) { try { //noinspection InfiniteLoopStatement while (true) { @@ -113,31 +113,31 @@ public class MultiMBassador implements IMessageBus { } } } catch (InterruptedException e) { - if (!MultiMBassador.this.shuttingDown) { + if (!MessageBus.this.shuttingDown) { switch (node.messageType) { case 1: { handlePublicationError( new PublicationError().setMessage("Thread interrupted while processing message") - .setCause(e).setPublishedObject(node.item1)); + .setCause(e).setPublishedObject(node.item1)); break; } case 2: { handlePublicationError( new PublicationError().setMessage("Thread interrupted while processing message") - .setCause(e).setPublishedObject(node.item1, node.item2)); + .setCause(e).setPublishedObject(node.item1, node.item2)); break; } case 3: { handlePublicationError( new PublicationError().setMessage("Thread interrupted while processing message") - .setCause(e) - .setPublishedObject(node.item1, node.item2, node.item3)); + .setCause(e) + .setPublishedObject(node.item1, node.item2, node.item3)); break; } default: { handlePublicationError( new PublicationError().setMessage("Thread interrupted while processing message") - .setCause(e).setPublishedObject(node.item1)); + .setCause(e).setPublishedObject(node.item1)); } } } @@ -191,12 +191,12 @@ public class MultiMBassador implements IMessageBus { @Override public void subscribe(final Object listener) { - MultiMBassador.this.subscriptionManager.subscribe(listener); + MessageBus.this.subscriptionManager.subscribe(listener); } @Override public void unsubscribe(final Object listener) { - MultiMBassador.this.subscriptionManager.unsubscribe(listener); + MessageBus.this.subscriptionManager.unsubscribe(listener); } @Override @@ -210,7 +210,7 @@ public class MultiMBassador implements IMessageBus { subscriptionMatcher.publish(subscriptionManager, message); } catch (Throwable e) { handlePublicationError(new PublicationError().setMessage("Error during invocation of message handler.").setCause(e) - .setPublishedObject(message)); + .setPublishedObject(message)); } } @@ -220,7 +220,7 @@ public class MultiMBassador implements IMessageBus { subscriptionMatcher.publish(subscriptionManager, message1, message2); } catch (Throwable e) { handlePublicationError(new PublicationError().setMessage("Error during invocation of message handler.").setCause(e) - .setPublishedObject(message1, message2)); + .setPublishedObject(message1, message2)); } } @@ -230,7 +230,7 @@ public class MultiMBassador implements IMessageBus { subscriptionMatcher.publish(subscriptionManager, message1, message2, message3); } catch (Throwable e) { handlePublicationError(new PublicationError().setMessage("Error during invocation of message handler.").setCause(e) - .setPublishedObject(message1, message2, message3)); + .setPublishedObject(message1, message2, message3)); } } @@ -240,7 +240,7 @@ public class MultiMBassador implements IMessageBus { subscriptionMatcher.publish(subscriptionManager, messages); } catch (Throwable e) { handlePublicationError(new PublicationError().setMessage("Error during invocation of message handler.").setCause(e) - .setPublishedObject(messages)); + .setPublishedObject(messages)); } } @@ -251,7 +251,7 @@ public class MultiMBassador implements IMessageBus { this.dispatchQueue.transfer(message, MessageType.ONE); } catch (Exception e) { handlePublicationError(new PublicationError().setMessage("Error while adding an asynchronous message").setCause(e) - .setPublishedObject(message)); + .setPublishedObject(message)); } } else { @@ -266,7 +266,7 @@ public class MultiMBassador implements IMessageBus { this.dispatchQueue.transfer(message1, message2); } catch (Exception e) { handlePublicationError(new PublicationError().setMessage("Error while adding an asynchronous message").setCause(e) - .setPublishedObject(message1, message2)); + .setPublishedObject(message1, message2)); } } else { @@ -281,7 +281,7 @@ public class MultiMBassador implements IMessageBus { this.dispatchQueue.transfer(message1, message2, message3); } catch (Exception e) { handlePublicationError(new PublicationError().setMessage("Error while adding an asynchronous message").setCause(e) - .setPublishedObject(message1, message2, message3)); + .setPublishedObject(message1, message2, message3)); } } else { @@ -296,7 +296,7 @@ public class MultiMBassador implements IMessageBus { this.dispatchQueue.transfer(messages, MessageType.ARRAY); } catch (Exception e) { handlePublicationError(new PublicationError().setMessage("Error while adding an asynchronous message").setCause(e) - .setPublishedObject(messages)); + .setPublishedObject(messages)); } } else { diff --git a/src/main/java/dorkbox/util/messagebus/common/NamedThreadFactory.java b/src/main/java/dorkbox/util/messagebus/common/thread/NamedThreadFactory.java similarity index 98% rename from src/main/java/dorkbox/util/messagebus/common/NamedThreadFactory.java rename to src/main/java/dorkbox/util/messagebus/common/thread/NamedThreadFactory.java index 20c66b2..080296e 100644 --- a/src/main/java/dorkbox/util/messagebus/common/NamedThreadFactory.java +++ b/src/main/java/dorkbox/util/messagebus/common/thread/NamedThreadFactory.java @@ -1,4 +1,4 @@ -package dorkbox.util.messagebus.common; +package dorkbox.util.messagebus.common.thread; import java.lang.management.RuntimeMXBean; import java.util.List; diff --git a/src/main/java/dorkbox/util/messagebus/common/ClassUtils.java b/src/main/java/dorkbox/util/messagebus/utils/ClassUtils.java similarity index 98% rename from src/main/java/dorkbox/util/messagebus/common/ClassUtils.java rename to src/main/java/dorkbox/util/messagebus/utils/ClassUtils.java index f5cbc17..769d927 100644 --- a/src/main/java/dorkbox/util/messagebus/common/ClassUtils.java +++ b/src/main/java/dorkbox/util/messagebus/utils/ClassUtils.java @@ -1,4 +1,6 @@ -package dorkbox.util.messagebus.common; +package dorkbox.util.messagebus.utils; + +import dorkbox.util.messagebus.common.ConcurrentHashMapV8; import java.lang.reflect.Array; import java.util.ArrayList; diff --git a/src/main/java/dorkbox/util/messagebus/common/ReflectionUtils.java b/src/main/java/dorkbox/util/messagebus/utils/ReflectionUtils.java similarity index 99% rename from src/main/java/dorkbox/util/messagebus/common/ReflectionUtils.java rename to src/main/java/dorkbox/util/messagebus/utils/ReflectionUtils.java index c407525..a24bbcc 100644 --- a/src/main/java/dorkbox/util/messagebus/common/ReflectionUtils.java +++ b/src/main/java/dorkbox/util/messagebus/utils/ReflectionUtils.java @@ -1,4 +1,4 @@ -package dorkbox.util.messagebus.common; +package dorkbox.util.messagebus.utils; import dorkbox.util.messagebus.annotations.Handler; import dorkbox.util.messagebus.common.thread.ConcurrentSet; diff --git a/src/main/java/dorkbox/util/messagebus/subscription/SubscriptionUtils.java b/src/main/java/dorkbox/util/messagebus/utils/SubscriptionUtils.java similarity index 98% rename from src/main/java/dorkbox/util/messagebus/subscription/SubscriptionUtils.java rename to src/main/java/dorkbox/util/messagebus/utils/SubscriptionUtils.java index 4b4cc1d..a4d9312 100644 --- a/src/main/java/dorkbox/util/messagebus/subscription/SubscriptionUtils.java +++ b/src/main/java/dorkbox/util/messagebus/utils/SubscriptionUtils.java @@ -1,10 +1,11 @@ -package dorkbox.util.messagebus.subscription; +package dorkbox.util.messagebus.utils; -import dorkbox.util.messagebus.common.ClassUtils; import dorkbox.util.messagebus.common.ConcurrentHashMapV8; import dorkbox.util.messagebus.common.HashMapTree; import dorkbox.util.messagebus.common.thread.ClassHolder; import dorkbox.util.messagebus.common.thread.SubscriptionHolder; +import dorkbox.util.messagebus.subscription.Subscription; +import dorkbox.util.messagebus.utils.ClassUtils; import java.util.ArrayList; import java.util.Map; diff --git a/src/main/java/dorkbox/util/messagebus/common/VarArgUtils.java b/src/main/java/dorkbox/util/messagebus/utils/VarArgUtils.java similarity index 97% rename from src/main/java/dorkbox/util/messagebus/common/VarArgUtils.java rename to src/main/java/dorkbox/util/messagebus/utils/VarArgUtils.java index a4d9e5f..1d6ef85 100644 --- a/src/main/java/dorkbox/util/messagebus/common/VarArgUtils.java +++ b/src/main/java/dorkbox/util/messagebus/utils/VarArgUtils.java @@ -1,5 +1,8 @@ -package dorkbox.util.messagebus.common; +package dorkbox.util.messagebus.utils; +import dorkbox.util.messagebus.common.ConcurrentHashMapV8; +import dorkbox.util.messagebus.common.HashMapTree; +import dorkbox.util.messagebus.common.MessageHandler; import dorkbox.util.messagebus.subscription.Subscription; import java.util.ArrayList;