Java Reference
In-Depth Information
Decision point
How does a process activate events?
When a state transition is triggered, the process undertakes some activi-
ties that will be completed after a given time period. The end of these
activities corresponds to the notification of a corresponding event. For
example, when the AGV receives a request of mission, a state transition is
triggered that sets the current state to
MOVING EMPTY
and activates the
ARRIVED
event. The lifetime of this event is set equal to the duration of the
move operation.
The process activates the
ARRIVED
event by adding it to the clock's list of
scheduled events. Similarly,
PieceSource
activates a
LOADED
event to notify
the drill and cutter that a piece has been loaded into their input buffers.
PieceSource
listens to its own events. When a
LOADED
event is notified, a
state transition activates the next
LOADED
event.
Figure 9.9 shows the object interaction diagram representing the opera-
tions that class
PieceSource
executes when it is initialized. First it attaches
itself to the
LOADED
event. Then it activates the first
LOADED
event that will
be raised after a random time period.
Decision point
How does the clock notify events?
PieceSource
Subscription
DiscreteClock
DiscreteEvent
attachTo
addSubscription
new
activateEvent
new
addEvent
Figure 9.9
The initialization of the automated inventory system