From a4dc3cff54751d506be4400b72e7a0f8986d41dd Mon Sep 17 00:00:00 2001 From: lucio Date: Wed, 22 Jan 2020 12:40:35 +0100 Subject: [PATCH] My ApplicationListener added --- .../storagehub/MyApplicationListener.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/main/java/org/gcube/data/access/storagehub/MyApplicationListener.java diff --git a/src/main/java/org/gcube/data/access/storagehub/MyApplicationListener.java b/src/main/java/org/gcube/data/access/storagehub/MyApplicationListener.java new file mode 100644 index 0000000..0600c8d --- /dev/null +++ b/src/main/java/org/gcube/data/access/storagehub/MyApplicationListener.java @@ -0,0 +1,40 @@ +package org.gcube.data.access.storagehub; + +import javax.inject.Inject; + +import org.apache.jackrabbit.api.JackrabbitRepository; +import org.gcube.data.access.storagehub.services.GroupManager; +import org.gcube.data.access.storagehub.services.RepositoryInitializer; +import org.glassfish.jersey.server.monitoring.ApplicationEvent; +import org.glassfish.jersey.server.monitoring.ApplicationEventListener; +import org.glassfish.jersey.server.monitoring.RequestEvent; +import org.glassfish.jersey.server.monitoring.RequestEventListener; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MyApplicationListener implements ApplicationEventListener { + + private static final Logger log = LoggerFactory.getLogger(MyApplicationListener.class); + + @Inject + RepositoryInitializer repository; + + @Override + public void onEvent(ApplicationEvent event) { + switch (event.getType()) { + case DESTROY_FINISHED: + log.info("Destroying application storageHub"); + ((JackrabbitRepository) repository.getRepository()).shutdown(); + log.info("Jackrabbit repository stopped"); + default: + break; + } + } + + @Override + public RequestEventListener onRequest(RequestEvent requestEvent) { + return null; + } + + +} \ No newline at end of file