added ApplicationManager
This commit is contained in:
parent
47436a8a8d
commit
875c08919d
|
@ -27,13 +27,12 @@ location = rome
|
|||
;port = 80
|
||||
|
||||
[authorization]
|
||||
; mandatory
|
||||
; optional fields: provider factory (=org.gcube.smartgears.security.defaults.DefaultAuthorizationProviderFactory)
|
||||
factory = org.gcube.smartgears.security.defaults.DefaultAuthorizationProviderFactory
|
||||
endpoint = https://accounts.dev.d4science.org/auth/realms/d4science/protocol/openid-connect/token
|
||||
credentials.class = org.gcube.smartgears.security.SimpleCredentials
|
||||
credentials.clientID = node-whn-test-uno-d-d4s.d4science.org
|
||||
credentials.secret = 979bd3bc-5cc4-11ec-bf63-0242ac130002
|
||||
credentials.endpoint = https://accounts.dev.d4science.org/auth/realms/d4science/protocol/openid-connect/token
|
||||
|
||||
|
||||
;[persistence]
|
||||
; not mandatory (default is LocalPersistence writing in the ghn home)
|
||||
|
|
|
@ -58,12 +58,13 @@
|
|||
</logger>
|
||||
|
||||
<logger name="org.gcube" level="INFO" />
|
||||
<logger name="org.gcube.smartgears" level="INFO" />
|
||||
<logger name="org.gcube.smartgears" level="TRACE" />
|
||||
<logger name="org.gcube.common.events" level="WARN" />
|
||||
<logger name="org.gcube.data.publishing" level="ERROR" />
|
||||
<logger name="org.gcube.documentstore" level="ERROR" />
|
||||
|
||||
|
||||
|
||||
<logger name="org.gcube.test.app" level="INFO" />
|
||||
|
||||
<root level="WARN">
|
||||
<appender-ref ref="FILE" />
|
||||
</root>
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
package org.gcube.test.app;
|
||||
|
||||
import org.gcube.common.security.providers.SecretManagerProvider;
|
||||
import org.gcube.smartgears.ApplicationManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class MyAppManager implements ApplicationManager {
|
||||
|
||||
Logger logger = LoggerFactory.getLogger(MyAppManager.class);
|
||||
|
||||
private boolean init = false;
|
||||
|
||||
@Override
|
||||
public void onInit() {
|
||||
try {
|
||||
init = true;
|
||||
logger.info("init called in {}: {}",SecretManagerProvider.instance.get().getContext(), this.init);
|
||||
}catch (Exception e) {
|
||||
logger.error("error on init ",e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onShutdown() {
|
||||
logger.info("shutdown called");
|
||||
logger.info("shutdown called in {}: {}",SecretManagerProvider.instance.get().getContext(), this.init);
|
||||
}
|
||||
|
||||
public boolean isInit() {
|
||||
return init;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -7,10 +7,17 @@ import javax.servlet.http.HttpServlet;
|
|||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.gcube.common.security.providers.SecretManagerProvider;
|
||||
import org.gcube.common.security.secrets.Secret;
|
||||
import org.gcube.smartgears.ApplicationManagerProvider;
|
||||
import org.gcube.smartgears.ContextProvider;
|
||||
import org.gcube.smartgears.annotations.ManagedBy;
|
||||
import org.gcube.smartgears.context.application.ApplicationContext;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@WebServlet(urlPatterns = "/*", name = "testAppServlet")
|
||||
@ManagedBy(MyAppManager.class)
|
||||
public class TestAppServlet extends HttpServlet {
|
||||
|
||||
/**
|
||||
|
@ -18,15 +25,20 @@ public class TestAppServlet extends HttpServlet {
|
|||
*/
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
|
||||
|
||||
// log on behalf of extension
|
||||
private static final Logger log = LoggerFactory.getLogger(TestAppServlet.class);
|
||||
|
||||
|
||||
public void doGet(HttpServletRequest request, HttpServletResponse response)
|
||||
throws IOException {
|
||||
log.info("testApp call received");
|
||||
response.getWriter().write("test app started");
|
||||
Secret secret = SecretManagerProvider.instance.get();
|
||||
String context = secret !=null? secret.getContext():null;
|
||||
log.info("secret si {} and context {}",secret, context);
|
||||
|
||||
MyAppManager appManager = (MyAppManager)ApplicationManagerProvider.get(MyAppManager.class);
|
||||
|
||||
response.getWriter().write("test app started with initialization "+appManager.isInit() );
|
||||
}
|
||||
|
||||
}
|
|
@ -4,5 +4,4 @@
|
|||
<version>1.0.0-SNAPSHOT</version>
|
||||
<description>Test webapp</description>
|
||||
<local-persistence location='target' />
|
||||
<exclude handlers='request-validation,context-retriever'>/*</exclude>
|
||||
</application>
|
Loading…
Reference in New Issue