Class GlobusNamespacesStore
- java.lang.Object
-
- eu.emi.security.authn.x509.helpers.ns.AbstractNamespacesStore
-
- eu.emi.security.authn.x509.helpers.ns.AbstractGlobusNamespacesStore
-
- eu.emi.security.authn.x509.helpers.ns.GlobusNamespacesStore
-
- All Implemented Interfaces:
NamespacesStore
public class GlobusNamespacesStore extends AbstractGlobusNamespacesStore
Provides an in-memory store ofNamespacePolicy
objects. The objects are matched by the subject name. This implementation is useful for Globus-like EACL policies. This class it thread safe.- Author:
- K. Benedyczak
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<NamespacePolicy>>>
policiesByName
This structure holds the complete namespaces information.-
Fields inherited from class eu.emi.security.authn.x509.helpers.ns.AbstractGlobusNamespacesStore
SUFFIX
-
Fields inherited from class eu.emi.security.authn.x509.helpers.ns.AbstractNamespacesStore
observers, openssl1Mode
-
-
Constructor Summary
Constructors Constructor Description GlobusNamespacesStore(ObserversHandler observers, boolean openssl1Mode)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.List<NamespacePolicy>
getPoliciesFor(java.lang.String definedForHash, java.lang.String issuerDn)
void
setPolicies(java.util.Collection<java.lang.String> locations)
protected void
setPolicies(java.util.List<NamespacePolicy> policies)
-
Methods inherited from class eu.emi.security.authn.x509.helpers.ns.AbstractGlobusNamespacesStore
getFileSuffix, getNotificationType, getParser, getPolicies
-
Methods inherited from class eu.emi.security.authn.x509.helpers.ns.AbstractNamespacesStore
addPolicy, addPolicyToMap, getCachedPolicies, getPolicies, tryLoadNsLocation, tryLoadNsPath
-
-
-
-
Field Detail
-
policiesByName
protected java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<NamespacePolicy>>> policiesByName
This structure holds the complete namespaces information. The primary map key is the hash name of the file from which some of the policies were loaded. At the same time it is a hash of the subject name of the CA for which the namespaces were directly defined. The internal map is indexed with issuer names, i.e. the names of the CA subjects for which we have policies. The value is a list with all the policies for the CA, in order of appearance in the policy file.
-
-
Constructor Detail
-
GlobusNamespacesStore
public GlobusNamespacesStore(ObserversHandler observers, boolean openssl1Mode)
-
-
Method Detail
-
setPolicies
public void setPolicies(java.util.Collection<java.lang.String> locations)
-
setPolicies
protected void setPolicies(java.util.List<NamespacePolicy> policies)
-
getPoliciesFor
protected java.util.List<NamespacePolicy> getPoliciesFor(java.lang.String definedForHash, java.lang.String issuerDn)
- Specified by:
getPoliciesFor
in classAbstractGlobusNamespacesStore
-
-