import org.onap.aaf.auth.cache.Cache;
import org.onap.aaf.auth.dao.CassAccess;
+import org.onap.aaf.auth.dao.cass.CacheInfoDAO;
import org.onap.aaf.auth.dao.hl.Question;
import org.onap.aaf.auth.direct.DirectAAFLur;
import org.onap.aaf.auth.direct.DirectAAFUserPass;
// Need Question for Security purposes (direct User/Authz Query in Filter)
// Start Background Processing
- question = new Question(trans, cluster, CassAccess.KEYSPACE, true);
- DirectCertIdentity.set(question.certDAO);
+ question = new Question(trans, cluster, CassAccess.KEYSPACE);
+ question.startTimers(env);
+
+ DirectCertIdentity.set(question.certDAO());
// Have AAFLocator object Create DirectLocators for Location needs
AbsAAFLocator.setCreator(new DirectLocatorCreator(env, question.locateDAO));
// Initialize Organizations... otherwise, first pass may miss
int org_size = ORGANIZATION.length();
- for(String n : env.existingStaticSlotNames()) {
- if(n.startsWith(ORGANIZATION)) {
+ for (String n : env.existingStaticSlotNames()) {
+ if (n.startsWith(ORGANIZATION)) {
OrganizationFactory.obtain(env, n.substring(org_size));
}
}
// Print results and cleanup
StringBuilder sb = new StringBuilder();
trans.auditTrail(0, sb);
- if(sb.length()>0)env.init().log(sb);
+ if (sb.length()>0)env.init().log(sb);
trans = null;
sb = null;
domain,Long.parseLong(env.getProperty(Config.AAF_CLEAN_INTERVAL, Config.AAF_CLEAN_INTERVAL_DEF)),
false);
- if(additionalTafLurs.length>0) {
+ if (additionalTafLurs.length>0) {
System.arraycopy(additionalTafLurs, 0, atl, 2, additionalTafLurs.length);
}
@SuppressWarnings("unchecked")
@Override
- public Registrant<AuthzEnv>[] registrants(final int port) throws CadiException {
+ public Registrant<AuthzEnv>[] registrants(final int actualPort) throws CadiException {
return new Registrant[] {
- new DirectRegistrar(access,question.locateDAO,app_name,app_interface_version,port)
+ new DirectRegistrar(access,question.locateDAO, actualPort)
};
}
+
+ @Override
+ public void postStartup(final String hostname, final int port) throws APIException {
+ try {
+ CacheInfoDAO.startUpdate(env, aafCon().hman(), aafCon().securityInfo().defSS,hostname,port);
+ } catch (CadiException | LocatorException e) {
+ throw new APIException(e);
+ }
+ }
@Override
public void destroy() {
Cache.stopTimer();
- if(cluster!=null) {
+ CacheInfoDAO.stopUpdate();
+ if (cluster!=null) {
cluster.close();
}
super.destroy();
*
*/
public void route(HttpMethods meth, String path, API api, Code code) throws Exception {
- String version = "2.0";
Class<?> respCls = facade.mapper().getClass(api);
- if(respCls==null) throw new Exception("Unknown class associated with " + api.getClass().getName() + ' ' + api.name());
- String application = applicationJSON(respCls, version);
+ if (respCls==null) throw new Exception("Unknown class associated with " + api.getClass().getName() + ' ' + api.name());
+ String application = applicationJSON(respCls, Config.AAF_DEFAULT_API_VERSION);
- route(env,meth,path,code,application,"application/json;version=2.0","*/*");
- application = applicationXML(respCls, version);
- route(env,meth,path,code.clone(facade_XML,false),application,"text/xml;version=2.0");
+ route(env,meth,path,code,application,"application/json;version="+Config.AAF_DEFAULT_API_VERSION,"*/*");
+ application = applicationXML(respCls, Config.AAF_DEFAULT_API_VERSION);
+ route(env,meth,path,code.clone(facade_XML,false),application,"text/xml;version="+Config.AAF_DEFAULT_API_VERSION);
}
/**
Log4JLogIt logIt = new Log4JLogIt(args, "authz");
PropAccess propAccess = new PropAccess(logIt,args);
- AbsService<AuthzEnv, AuthzTrans> service = new AAF_Service(new AuthzEnv(propAccess));
- JettyServiceStarter<AuthzEnv,AuthzTrans> jss = new JettyServiceStarter<AuthzEnv,AuthzTrans>(service);
- jss.start();
+ try {
+ new JettyServiceStarter<AuthzEnv,AuthzTrans>(
+ new AAF_Service(new AuthzEnv(propAccess)),true)
+ .start();
+ } catch (Exception e) {
+ propAccess.log(e);
+ }
} catch (Exception e) {
e.printStackTrace();
}