Package org.apache.cayenne.event
Class EventSubject
java.lang.Object
org.apache.cayenne.event.EventSubject
- All Implemented Interfaces:
- Serializable
public class EventSubject extends Object implements Serializable
This class encapsulates the String that is used to identify the subject that
 a listener is interested in. Using plain Strings causes several severe problems:
 
- it's easy to misspell a subject, leading to undesired behaviour at runtime that is hard to debug.
- in systems with many different subjects there is no safeguard for defining the same subject twice for different purposes. This is especially true in a distributed setting.
- See Also:
- Serialized Form
- 
Constructor SummaryConstructors Modifier Constructor Description protectedEventSubject(String fullSubjectName)Protected constructor for new subjects.
- 
Method SummaryModifier and Type Method Description booleanequals(Object obj)static EventSubjectgetSubject(Class<?> subjectOwner, String subjectName)Returns an event subject identified by the given owner and subject name.StringgetSubjectName()inthashCode()StringtoString()
- 
Constructor Details- 
EventSubjectProtected constructor for new subjects.- Parameters:
- fullSubjectName- the name of the new subject to be created
 
 
- 
- 
Method Details- 
getSubjectReturns an event subject identified by the given owner and subject name.- Parameters:
- subjectOwner- the Class used for uniquely identifying this subject
- subjectName- a String used as name, e.g. "MyEventTopic"
- Throws:
- IllegalArgumentException- if subjectOwner/subjectName are- nullor subjectName is empty.
 
- 
equals
- 
hashCodepublic int hashCode()
- 
getSubjectName
- 
toString- Overrides:
- toStringin class- Object
- Returns:
- a String in the form <ClassName 0x123456> SomeName
- See Also:
- Object.toString()
 
 
-