PowerMatcher - The Java implementation of the PowerMatcher, including the API, the core, a couple of examples, a remote implementation using websockets and a visualisation of the configuration.
The ObjectiveEndpoint interface was too restrictive, it didn't allow an ObjectiveAgent to send an bid update on it's own initiative. I added an AggregatedBidEvent (which is important for monitoring your cluster and was missing). With this addition it is very easy to implement an ObjectiveAgent without any special interfaces, so I removed the ObjectiveEndpoint. I updated the example ObjectiveAgent accordingly.
The ObjectiveEndpoint interface was too restrictive, it didn't allow an ObjectiveAgent to send an bid update on it's own initiative. I added an AggregatedBidEvent (which is important for monitoring your cluster and was missing). With this addition it is very easy to implement an ObjectiveAgent without any special interfaces, so I removed the ObjectiveEndpoint. I updated the example ObjectiveAgent accordingly.