Package org.djutils.event


package org.djutils.event
Provides classes and interfaces for asynchronous communication. The event package is designed around four main classes:
  • The EventListener defining callback mechanism for a listener.
  • The EventProducer defining registration capabilities.
  • The Event defining the events which are sent by a producer and received by a listener.
  • The EventType allowing for strongly typed Events
In this package, two aspects are of crucial importance. Operations defined in the classes are prepared for distribution. The event.remote package extends all listeners and producers to throw the RemoteException on network problems. The second aspect is concurrency. The classes providing a reference implementation of these interfaces are designed for multi-threaded deployment.

Copyright (c) 2002-2024 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://djutils.org. The DJUTILS project is distributed under a three-clause BSD-style license, which can be found at https://djutils.org/docs/license.html. This class was originally part of the DSOL project, see https://simulation.tudelft.nl/dsol/manual.

Author:
Peter Jacobs , Alexander Verbraeck
  • Class
    Description
    The Event class forms the reference implementation for the Event.
    The EventListener interface creates a callback method for publishers to inform their clients.
    The EventListenerMap maps EventTypes on lists of References to EventListeners.
    EventProducer is the interface that exposes a few of the methods of the implementation of an EventProducer to the outside world: the ability to add and remove listeners.
    Reference implementation of the EventType.
    The LocalEventProducer defines the registration and fireEvent operations of an event producer.
    The TimedEvent is the reference implementation for a timed event.