@Override
public void postAppInit(App app) throws Throwable {
if(enabled) {
if(!sc.config().isEnabled()) {
sc.enable(true);
}
this.hasDataSources = dsm.hasDataSources();
if(hasDataSources) {
String dataSourceName = Strings.firstNotEmpty(jdbcDataSourceName, DataSourceManager.DEFAULT_DATASOURCE_NAME);
if(getTokenStore() instanceof JdbcStore) {
((JdbcStore) getTokenStore()).setDataSourceName(dataSourceName);
}
if(getCodeStore() instanceof JdbcStore) {
((JdbcStore)getCodeStore()).setDataSourceName(dataSourceName);
}
if(getClientStore() instanceof JdbcStore) {
((JdbcStore)getClientStore()).setDataSourceName(dataSourceName);
}
if(getSSOStore() instanceof JdbcStore) {
((JdbcStore) getSSOStore()).setDataSourceName(dataSourceName);
}
}
if(isCleanupEnabled()) {
schedulerManager
.newFixedThreadPoolScheduler("auth-cleanup")
.scheduleAtFixedRate(() -> cleanup(), getCleanupInterval() * 1000l);
}
}
}