36 lines
1.1 KiB
Java
36 lines
1.1 KiB
Java
package org.gcube.gcat.configuration.isproxies;
|
|
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
import org.gcube.common.authorization.utils.manager.SecretManagerProvider;
|
|
|
|
public class FacetBasedISConfigurationProxyFactory {
|
|
|
|
private static final Map<String, FacetBasedISConfigurationProxy> isConfigurationProxies;
|
|
|
|
static {
|
|
isConfigurationProxies = new HashMap<>();
|
|
}
|
|
|
|
private static FacetBasedISConfigurationProxy find(String context) {
|
|
FacetBasedISConfigurationProxy isConfigurationProxy = new FacetBasedISConfigurationProxy(context);
|
|
return isConfigurationProxy;
|
|
}
|
|
|
|
public synchronized static FacetBasedISConfigurationProxy getInstance(String context) {
|
|
FacetBasedISConfigurationProxy isConfigurationProxy = isConfigurationProxies.get(context);
|
|
if(isConfigurationProxy == null) {
|
|
isConfigurationProxy = find(context);
|
|
isConfigurationProxies.put(context, isConfigurationProxy);
|
|
}
|
|
return isConfigurationProxy;
|
|
}
|
|
|
|
public static FacetBasedISConfigurationProxy getInstance() {
|
|
String context = SecretManagerProvider.instance.get().getContext();
|
|
return getInstance(context);
|
|
}
|
|
|
|
}
|