package org.mobicents.slee.resource; import javax.slee.EventTypeID; import javax.slee.resource.FireableEventType; /** * Implementation of the SLEE 1.1 specs {@link FireableEventType} class. * @author martins * */ public class FireableEventTypeImpl implements FireableEventType { /** * the event's class loader, which can be used to load the class returned by {@link FireableEventType#getEventClassName()} */ private final ClassLoader eventClassLoader; /** * the event's class name */ private final String eventClassName; /** * the event type ID */ private final EventTypeID eventTypeID; public FireableEventTypeImpl(ClassLoader eventClassLoader, String eventClassName, EventTypeID eventTypeID) { this.eventClassLoader = eventClassLoader; this.eventClassName = eventClassName; this.eventTypeID = eventTypeID; } public ClassLoader getEventClassLoader() { return eventClassLoader; } public String getEventClassName() { return eventClassName; } public EventTypeID getEventType() { return eventTypeID; } @Override public int hashCode() { return eventTypeID.hashCode(); } @Override public boolean equals(Object obj) { if (obj != null && obj.getClass() == this.getClass()) { return ((FireableEventTypeImpl)obj).eventTypeID.equals(this.eventTypeID); } else { return false; } } }