39 lines
1.1 KiB
Java
39 lines
1.1 KiB
Java
package org.gcube.application.geoportal.service.engine.providers;
|
|
|
|
import org.gcube.application.cms.caches.AbstractScopedMap;
|
|
import org.gcube.application.geoportal.common.model.rest.ConfigurationException;
|
|
import org.gcube.application.geoportal.service.engine.postgis.PostgisDBManager;
|
|
import org.gcube.application.geoportal.service.engine.postgis.PostgisDBManagerI;
|
|
|
|
import java.sql.SQLException;
|
|
import java.time.Duration;
|
|
import java.time.temporal.ChronoUnit;
|
|
|
|
public class PostgisConnectionProvider extends AbstractScopedMap<PostgisDBManagerI> {
|
|
|
|
|
|
public PostgisConnectionProvider() {
|
|
super("Postgis connection descriptor cache");
|
|
setTTL(Duration.of(30, ChronoUnit.SECONDS));
|
|
}
|
|
|
|
@Override
|
|
protected PostgisDBManagerI retrieveObject(String key) throws ConfigurationException {
|
|
try {
|
|
return PostgisDBManager.get();
|
|
} catch (SQLException throwables) {
|
|
throw new ConfigurationException(throwables);
|
|
}
|
|
}
|
|
|
|
@Override
|
|
protected void dispose(PostgisDBManagerI toDispose) {
|
|
// toDispose.close();
|
|
}
|
|
|
|
@Override
|
|
public void init() {
|
|
//
|
|
}
|
|
}
|