All Classes and Interfaces

Class
Description
The abstract class AbstractExceptionHandler handles all exceptions by managing a list of ExceptionListener objects and updating them when an exception event occurs
A generic implementation of the Observer pattern This abstract class implements the Observer and ActionCommand interfaces, providing a basic framework for observers in the Observer design pattern
The class AbstractSubject is an implementation of the Subject interface This class encapsulates the observable object and notifies all registered observers when the observable changes
The interface ActionCommand represents a command that can be executed Implementations of this interface encapsulate a specific action that can be triggered
The class ChatMessage represents a message in a chat application It implements the Message interface and is serializable
ChatRoom<M extends Message<?>>
The class ChatRoom represents a chat room where users can send and receive messages It extends AbstractSubject and implements Subject, Room, and Serializable
The class ChatRoomService manages the creation and retrieval of chat rooms It provides a way to obtain a ChatRoom based on an observable message and a room name
ChatRoomUser<M extends Message<?>>
The class ChatRoomUser represents a user in a chat room who can send and receive messages This class implements Observer to observe messages in the chat room, ActionCommand to define actions when a message is received, and Serializable for serialization support
The class DefaultExceptionHandler provides a default implementation for handling exception events It extends AbstractExceptionHandler and propagates exception events to the registered listeners
The EventListener interface is for receiving events The class that is interested in processing an event implements this interface, and the object created with that class is registered with a component using the component's addEventListener method When the event occurs, that object's appropriate method is invoked
The class EventObject serves, as its name suggests, as an event object It encapsulates the source object on which an event initially occurred
The interface EventSource represents a source of events It provides methods to manage event listeners and to fire events to those listeners
The class EventSubject is an implementation of the EventSource interface It represents a subject that can have multiple event listeners and can fire events to them
The class ExceptionEvent represents an event that encapsulates a Throwable object It acts as an observable event that can be passed to listeners interested in handling exceptions
The listener interface for receiving exception events The class that is interested in processing an exception event implements this interface, and the object created with that class is registered with a component using the component's addExceptionListener method When the exception event occurs, that object's appropriate method is invoked
The class ExceptionMessage represents a message object used in exception handling It encapsulates information such as a properties key and value, an ID, and additional data that may be related to the exception
The class ExceptionMessages manages a collection of exception messages organized by keys It allows adding, retrieving, and removing exception messages based on specific keys
The class ExceptionObservers is a singleton that manages a list of ExceptionListener objects It allows classes to register and unregister for exception events, and notifies registered listeners when an exception event occurs
Invitation<M extends Message<?>>
The Interface Invitation represents an invitation to join a chat room It defines the methods to retrieve the sender, recipient, and the room associated with the invitation, as well as methods to check if the invitation has been accepted and if the denial is visible to the sender
The interface IUser represents a user in a chat application It provides methods to manage the user's identity, including getting and setting the application user, retrieving the user's unique identifier, and obtaining the user's name
The interface Message represents a message that can be sent in a chat application It provides methods for getting and setting the value of the message
The listener interface for receiving message events The class that is interested in processing a message implements this interface, and the object created with that class is registered with a component using the component's addMessageListener method When the message event occurs, the appropriate method of that object is invoked
The Class MessageObject represents an object that contains a message event It encapsulates the source object on which the message event initially occurred
The class MessageRoomModelBean represents a model for a message in a chat room It includes details such as the chat room name, the user who sent the message, the message content, and any associated data, as well as the date the message was created
The Interface MessageSource represents a source that can send messages to registered listeners It provides methods for adding, removing, and notifying MessageListener objects
The class MessageSubject represents a subject in the Observer design pattern for handling messages It maintains a list of MessageListener objects that are notified when a message is fired
The Interface Observer represents an observer in the Observer design pattern It defines a contract for objects that should be notified of changes in an observable subject
Room<M extends Message<?>>
The interface Room represents a chat room in which users can participate It provides methods to retrieve the list of users in the chat room, the history of messages sent in the room, and to check whether the room is secure
The class StringMessage represents a message that contains a string value It implements the Message interface and provides methods to get and set the string value
Subject<T,O extends Observer<T>>
The interface Subject represents the "subject" in the Observer design pattern The subject is the object whose state changes are being observed by one or more observers When the state of the subject changes, the observers are notified of the change
The class User represents a user in a chat application It implements the IUser interface and provides methods to manage the user's identity, including their name and ID