/* (non-Javadoc)
  * @see org.sakaiproject.sitestats.api.event.EventRegistry#getEventName(java.lang.String)
  */
 public String getEventName(String eventId) {
   Locale currentUserLocale = getCurrentUserLocale();
   EventLocaleKey key = new EventLocaleKey(eventId, currentUserLocale.toString());
   if (eventNamesCache.containsKey(key.toString())) {
     return (String) eventNamesCache.get(key.toString());
   } else {
     String eventName = null;
     try {
       String prefix = eventIdToEPPrefix.get(eventId);
       Statisticable s = M_epm.getProviderByPrefixAndCapability(prefix, Statisticable.class);
       Map<String, String> eventIdNamesMap = s.getEventNames(currentUserLocale);
       if (eventIdNamesMap != null) {
         for (String thisEventId : eventIdNamesMap.keySet()) {
           EventLocaleKey thisCacheKey =
               new EventLocaleKey(thisEventId, currentUserLocale.toString());
           String thisEventName = eventIdNamesMap.get(thisEventId);
           eventNamesCache.put(thisCacheKey.toString(), thisEventName);
           if (thisEventId.equals(eventId)) {
             eventName = thisEventName;
           }
         }
         LOG.debug(
             "Cached event names for EB prefix '" + prefix + "', locale: " + currentUserLocale);
       }
     } catch (Exception e) {
       eventName = null;
     }
     return eventName;
   }
 }
  /** Get the merged Event Registry. */
  @SuppressWarnings("unchecked")
  private List<ToolInfo> getMergedEventRegistry() {
    if (eventRegistryCache.containsKey(CACHENAME_EVENTREGISTRY)) {
      return (List<ToolInfo>) eventRegistryCache.get(CACHENAME_EVENTREGISTRY);
    } else {
      // First:  use file Event Registry
      List<ToolInfo> eventRegistry = fileEventRegistry.getEventRegistry();

      // Second: add EntityBroker Event Registry,
      //         replacing events for tools found on this Registry
      //         (but keeping the anonymous flag for events in both Registries)
      eventRegistry =
          EventUtil.addToEventRegistry(
              entityBrokerEventRegistry.getEventRegistry(), true, eventRegistry);

      // Cache Event Registry
      eventRegistryCache.put(CACHENAME_EVENTREGISTRY, eventRegistry);
      LOG.debug("Cached EventRegistry.");
      return eventRegistry;
    }
  }