package org.mobicents.slee.resource.mgcp.ra; import java.util.concurrent.ConcurrentHashMap; import javax.slee.EventTypeID; import javax.slee.facilities.EventLookupFacility; import javax.slee.resource.FireableEventType; /** * * @author amit bhayani * */ public class EventIDCache { private ConcurrentHashMap<String, FireableEventType> eventIds = new ConcurrentHashMap<String, FireableEventType>(); private static final String EVENT_VENDOR = "net.java"; private static final String EVENT_VERSION = "1.0"; protected FireableEventType getEventId( EventLookupFacility eventLookupFacility, String eventName) { FireableEventType eventType = eventIds.get(eventName); if (eventType == null) { try { eventType = eventLookupFacility .getFireableEventType(new EventTypeID(eventName, EVENT_VENDOR, EVENT_VERSION)); } catch (Throwable e) { e.printStackTrace(); } if (eventType != null) { eventIds.put(eventName, eventType); } } return eventType; } }