/**
* Provider for AAA shiro implementation.
*/
-public final class AAAShiroProvider {
+public final class AAAShiroProvider implements AutoCloseable {
private static final Logger LOG = LoggerFactory.getLogger(AAAShiroProvider.class);
private final TokenStore tokenStore;
public AAAShiroProvider(final PasswordCredentialAuth credentialAuth,
final DatastoreConfig datastoreConfig,
final IIDMStore iidmStore) {
- if (datastoreConfig == null || !datastoreConfig.getStore().equals(DatastoreConfig.Store.H2DataStore)) {
- LOG.info("AAA Datastore has not been initialized");
+ if (datastoreConfig != null && datastoreConfig.getStore() == DatastoreConfig.Store.H2DataStore) {
+ tokenStore = new H2TokenStore(datastoreConfig.getTimeToLive().longValue(),
+ datastoreConfig.getTimeToWait().longValue());
+
+ initializeIIDMStore(iidmStore);
+
+ tokenAuthenticators = new TokenAuthenticators(new HttpBasicAuth(credentialAuth));
+ LOG.info("AAAShiroProvider Session Initiated");
+ } else {
tokenStore = null;
tokenAuthenticators = new TokenAuthenticators();
- return;
+ LOG.info("AAA Datastore has not been initialized");
}
+ }
- tokenStore = new H2TokenStore(datastoreConfig.getTimeToLive().longValue(),
- datastoreConfig.getTimeToWait().longValue());
-
- initializeIIDMStore(iidmStore);
-
- tokenAuthenticators = new TokenAuthenticators(new HttpBasicAuth(credentialAuth));
+ /**
+ * Method called when the blueprint container is destroyed.
+ */
+ @Override
+ public void close() {
+ LOG.info("AAAShiroProvider Closed");
}
private static void initializeIIDMStore(final IIDMStore iidmStore) {
}
}
- /**
- * Method called when the blueprint container is created.
- */
- public void init() {
- LOG.info("AAAShiroProvider Session Initiated");
- }
-
- /**
- * Method called when the blueprint container is destroyed.
- */
- public void close() {
- LOG.info("AAAShiroProvider Closed");
- }
-
public TokenStore getTokenStore() {
return tokenStore;
}
<reference id="certManager" interface="org.opendaylight.aaa.cert.api.ICertificateManager"/>
<reference id="servletSupport" interface="org.opendaylight.aaa.web.servlet.ServletSupport"/>
- <bean id="provider" class="org.opendaylight.aaa.AAAShiroProvider" init-method="init" destroy-method="close">
+ <bean id="provider" class="org.opendaylight.aaa.AAAShiroProvider" destroy-method="close">
<argument ref="passwordCredentialAuth"/>
<argument ref="datastoreConfig"/>
<argument ref="idmStore"/>