private EventInterceptorTemplate<T, X> pushEvent(String eventId, Map<String, Object> eventProperties) throws IdentityStoreException { Event event = new Event(eventId, eventProperties); try { eventService.pushEvent(event, messageContext); } catch (IdentityException e) { String message = String.format("Error while handling %s event.", eventId); throw new IdentityStoreException(message, e); } return this; }
private void triggerNotification(String userUniqueId, String type, String code) throws IdentityRecoveryException { String eventName = EventConstants.Event.TRIGGER_NOTIFICATION; HashMap<String, Object> properties = new HashMap<>(); properties.put(EventConstants.EventProperty.USER_UNIQUE_ID, userUniqueId); if (StringUtils.isNotBlank(code)) { properties.put(IdentityRecoveryConstants.CONFIRMATION_CODE, code); } properties.put(IdentityRecoveryConstants.TEMPLATE_TYPE, type); Event identityMgtEvent = new Event(eventName, properties); EventContext eventContext = new EventContext(); try { IdentityRecoveryServiceDataHolder.getInstance().getIdentityEventService().pushEvent(identityMgtEvent, eventContext); } catch (IdentityException e) { throw Utils.handleServerException(IdentityRecoveryConstants.ErrorMessages.ERROR_CODE_TRIGGER_NOTIFICATION, userUniqueId, e); } }
/** * Executes the main logic, which is the primary method being intercepted. * * @param delegate Event handler delegate. * @return Event interceptor template. * @throws X If ann error occur while executing the identity store operation. */ public EventInterceptorTemplate<T, X> executeWith(EventHandlerDelegate<T> delegate) throws X { ResultReturningHandler<T, X> resultReturningHandler = new ResultReturningHandler<T, X>() { @Override public T handleEventWithResult(EventContext eventContext, Event event) throws X { try { return delegate.execute(); } catch (Exception e) { throw (X) e; } } }; try { eventService.pushEvent(new Event("EventInterceptorTemplate", Collections.emptyMap()), messageContext, resultReturningHandler); result = resultReturningHandler.getResult(); } catch (IdentityException e) { throw (X) e; } return this; }
private void triggerNotification(String userUniqueId, String type, User user) throws IdentityRecoveryException { String eventName = EventConstants.Event.TRIGGER_NOTIFICATION; HashMap<String, Object> properties = new HashMap<>(); properties.put(EventConstants.EventProperty.USER_UNIQUE_ID, userUniqueId); properties.put(EventConstants.EventProperty.USER_STORE_DOMAIN, user.getDomainName()); properties.put(IdentityRecoveryConstants.TEMPLATE_TYPE, type); Event identityMgtEvent = new Event(eventName, properties); EventContext eventContext = new EventContext(); try { IdentityRecoveryServiceDataHolder.getInstance().getIdentityEventService().pushEvent(identityMgtEvent, eventContext); } catch (IdentityException e) { throw Utils.handleServerException(IdentityRecoveryConstants.ErrorMessages.ERROR_CODE_TRIGGER_NOTIFICATION, userUniqueId, e); } }
Event identityMgtEvent = new Event(eventName, properties); EventContext eventContext = new EventContext();