public class Auctioneer extends BaseMatcherEndpoint implements MatcherEndpoint
This class represents an Auctioneer
component which will receive all Bid
of other agents as a single
Bid
or as an aggregate Bid
via one or more Concentrator
.
MarketBasis
and calculating the equilibrium based on the
Bid
from the different agents in the topology. This equilibrium is communicated to the agents down the
hierarchy in the form of price update messages.Modifier and Type | Class and Description |
---|---|
static interface |
Auctioneer.Config |
BaseMatcherEndpoint.Connected, BaseMatcherEndpoint.RateLimitedBidPublisher
Agent.Status
NOT_CONNECTED
Constructor and Description |
---|
Auctioneer() |
Modifier and Type | Method and Description |
---|---|
void |
activate(java.util.Map<java.lang.String,?> properties)
OSGi calls this method to activate a managed service.
|
void |
deactivate()
OSGi calls this method to deactivate a managed service.
|
protected void |
performUpdate(AggregatedBid aggregatedBid)
This method determines the
Price , given the current aggregated Bid and sends it to all sessions
by calling the BaseMatcherEndpoint.publishPrice(Price, AggregatedBid) method. |
agentEndpointDisconnected, aggregate, configure, connectToAgent, getAgentId, getStatus, handleBidUpdate, init, publishPrice, unconfigure
addObserver, now, publishEvent, removeObserver, setContext
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
agentEndpointDisconnected, connectToAgent, handleBidUpdate
getAgentId, getStatus, setContext
public void activate(java.util.Map<java.lang.String,?> properties)
properties
- the configuration propertiespublic void deactivate()
protected void performUpdate(AggregatedBid aggregatedBid)
Price
, given the current aggregated Bid
and sends it to all sessions
by calling the BaseMatcherEndpoint.publishPrice(Price, AggregatedBid)
method.performUpdate
in class BaseMatcherEndpoint
aggregatedBid
- the aggregated Bid
used to determine the Price