added documentation

This commit is contained in:
Benjamin Diedrichsen 2014-06-30 12:05:36 +02:00
parent ed901a8501
commit 9a81992a0a
3 changed files with 19 additions and 4 deletions

View File

@ -4,8 +4,8 @@ MBassador
MBassador is a very light-weight message (event) bus implementation following the publish subscribe pattern. It is designed
for ease of use and aims to be feature rich and extensible while preserving resource efficiency and performance. The core of MBassador's
high performance is a specialized data structure that minimizes lock contention such that performance degradation of concurrent access is minimal.
The performance win of this design is illustrated in <a href="http://codeblock.engio.net/?p=37" target="_blank">performance comparison</a>.
The benchmarking code can be found <a href="https://github.com/bennidi/eventbus-performance" target="_blank">here</a>
The performance win of this design is illustrated in <a href="http://codeblock.engio.net/?p=37" target="_blank">performance comparison</a>
and more recently in the [eventbus-performance](https://github.com/bennidi/eventbus-performance) github repository.
Read this documentation to get an overview of MBassadors features. There is also some documentation in the Wiki - although admittedly
not enough to make a developer happy (work is in progress).
@ -147,6 +147,7 @@ Beginning with version 1.1.0 MBassador is available from the Maven Central Repos
</dependency>
```
You can also download the latest binary release here: http://mvnrepository.com/artifact/net.engio/mbassador
Of course you can always clone the repository and build from source.
@ -157,6 +158,11 @@ to avoid confusion and misunderstanding.
<h2>Release Notes</h2>
<h3>1.1.11</h3>
+ Added support for conditional handlers using Java EL. Thanks to Bernd Rosstauscher
for the initial implementation.
<h3>1.1.10</h3>
+ Fixed broken sort order of prioritized handlers (see #58)
+ Addressed issue #63 by making the constructor of `MessageHandler` use a map of properties and by replacing dependencies to

View File

@ -23,7 +23,7 @@ public class MessagePublication {
private final Object message;
// message publications can be referenced by multiple threads to query publication progress
private volatile State state = State.Initial;
private volatile boolean delivered = false; // TODO: maybe replace with return value of subscription and dispatchers?
private volatile boolean delivered = false;
private final BusRuntime runtime;
protected MessagePublication(BusRuntime runtime, Collection<Subscription> subscriptions, Object message, State initialState) {
@ -37,6 +37,9 @@ public class MessagePublication {
return subscriptions.add(subscription);
}
/*
TODO: document state transitions
*/
protected void execute() {
state = State.Running;
for (Subscription sub : subscriptions) {

View File

@ -3,8 +3,14 @@ package net.engio.mbassy.listener;
import java.lang.annotation.*;
/**
*
* This annotation is meant to carry configuration that is shared among all instances of the annotated
* listener. Supported configurations are:
*
* Reference type: The bus will use either strong or weak references to its registered listeners,
* depending on which reference type (@see References) is set
*
* @author bennidi
* Date: 3/29/13
*/
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = {ElementType.TYPE})