Added interesting events filter, ignoring the publish of all the others
This commit is contained in:
parent
5370e98760
commit
a625864145
|
@ -1,6 +1,8 @@
|
||||||
package org.gcube.keycloak.event;
|
package org.gcube.keycloak.event;
|
||||||
|
|
||||||
import java.util.EventListener;
|
import java.util.EventListener;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.gcube.event.publisher.AbstractEventPublisher;
|
import org.gcube.event.publisher.AbstractEventPublisher;
|
||||||
import org.gcube.event.publisher.EventSender;
|
import org.gcube.event.publisher.EventSender;
|
||||||
|
@ -8,6 +10,7 @@ import org.gcube.event.publisher.HTTPWithUMAAuthEventSender;
|
||||||
import org.jboss.logging.Logger;
|
import org.jboss.logging.Logger;
|
||||||
import org.keycloak.events.Event;
|
import org.keycloak.events.Event;
|
||||||
import org.keycloak.events.EventListenerProvider;
|
import org.keycloak.events.EventListenerProvider;
|
||||||
|
import org.keycloak.events.EventType;
|
||||||
import org.keycloak.events.admin.AdminEvent;
|
import org.keycloak.events.admin.AdminEvent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -19,6 +22,21 @@ public class OrchestratorEventPublisherProvider extends AbstractEventPublisher
|
||||||
|
|
||||||
public static final Logger logger = Logger.getLogger(OrchestratorEventPublisherProvider.class);
|
public static final Logger logger = Logger.getLogger(OrchestratorEventPublisherProvider.class);
|
||||||
|
|
||||||
|
private static final Set<EventType> INTERESTING_EVENTS = new HashSet<>();
|
||||||
|
|
||||||
|
static {
|
||||||
|
INTERESTING_EVENTS.add(EventType.CLIENT_DELETE);
|
||||||
|
INTERESTING_EVENTS.add(EventType.CLIENT_DELETE_ERROR);
|
||||||
|
INTERESTING_EVENTS.add(EventType.FEDERATED_IDENTITY_LINK);
|
||||||
|
INTERESTING_EVENTS.add(EventType.FEDERATED_IDENTITY_LINK_ERROR);
|
||||||
|
INTERESTING_EVENTS.add(EventType.IDENTITY_PROVIDER_FIRST_LOGIN);
|
||||||
|
INTERESTING_EVENTS.add(EventType.IDENTITY_PROVIDER_FIRST_LOGIN_ERROR);
|
||||||
|
INTERESTING_EVENTS.add(EventType.REGISTER);
|
||||||
|
INTERESTING_EVENTS.add(EventType.REGISTER_ERROR);
|
||||||
|
INTERESTING_EVENTS.add(EventType.UPDATE_EMAIL);
|
||||||
|
INTERESTING_EVENTS.add(EventType.VERIFY_EMAIL_ERROR);
|
||||||
|
}
|
||||||
|
|
||||||
public OrchestratorEventPublisherProvider() {
|
public OrchestratorEventPublisherProvider() {
|
||||||
super();
|
super();
|
||||||
}
|
}
|
||||||
|
@ -29,8 +47,12 @@ public class OrchestratorEventPublisherProvider extends AbstractEventPublisher
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEvent(Event event) {
|
public void onEvent(Event event) {
|
||||||
if (event.getError() != null) {
|
// if (event.getError() != null) {
|
||||||
logger.debug("Skipping error event publish");
|
// logger.debug("Skipping error event publish");
|
||||||
|
// return;
|
||||||
|
// }
|
||||||
|
if (!INTERESTING_EVENTS.contains(event.getType())) {
|
||||||
|
logger.debug("Skipping publish of not interesting event");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
logger.debug("Publishing new event to orchestrator");
|
logger.debug("Publishing new event to orchestrator");
|
||||||
|
|
Loading…
Reference in New Issue