public class GenericPolicyProcessor extends java.lang.Object implements IPolicyProcessor
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String[] |
DEF_POLICIES |
static java.util.Hashtable<java.lang.String,IExpression> |
DEF_UNDELETABLE_POLICIES |
static org.slf4j.Logger |
logger |
protected IAuthority |
mAuthority |
protected IConfigStore |
mConfig |
protected com.netscape.cmscore.apps.EngineConfig |
mGlobalStore |
PROP_CLASS, PROP_DEF_POLICIES, PROP_ENABLE, PROP_IMPL, PROP_IMPL_NAME, PROP_ORDER, PROP_PREDICATE, PROP_RULE, PROP_UNDELETABLE_POLICIES| Constructor and Description |
|---|
GenericPolicyProcessor() |
GenericPolicyProcessor(boolean initSystemPolicies) |
| Modifier and Type | Method and Description |
|---|---|
void |
addPolicyImpl(java.lang.String id,
java.lang.String classPath)
Adds a policy implementation identified by an impl id.
|
void |
addPolicyInstance(java.lang.String id,
java.util.Hashtable<java.lang.String,java.lang.String> ht)
Adds a policy instance
|
PolicyResult |
apply(IRequest req)
Apply policies on the given request.
|
void |
changePolicyInstanceOrdering(java.lang.String policyOrderStr)
Modifies policy ordering.
|
void |
deletePolicyImpl(java.lang.String id)
Deletes a policy implementation identified by an impl id.
|
void |
deletePolicyInstance(java.lang.String id)
Deletes a policy instance identified by an instance id.
|
ISubsystem |
getAuthority() |
IConfigStore |
getConfigStore()
Returns the configuration store.
|
java.lang.String |
getId() |
IPolicyRule |
getPolicyImpl(java.lang.String id)
Returns an implementation identified by a given id.
|
java.util.Vector<java.lang.String> |
getPolicyImplConfig(java.lang.String id)
Returns configuration for an implmentation.
|
java.util.Enumeration<IPolicyRule> |
getPolicyImpls()
Returns the rule implementations registered with this processor.
|
java.util.Enumeration<java.lang.String> |
getPolicyImplsInfo()
Returns information on Policy impls.
|
IPolicyRule |
getPolicyInstance(java.lang.String id)
Returns instance configuration for a given instance id.
|
java.util.Vector<java.lang.String> |
getPolicyInstanceConfig(java.lang.String id)
Returns instance configuration for a given instance id.
|
java.util.Enumeration<IPolicyRule> |
getPolicyInstances()
Returns policy instances registered with this processor.
|
java.util.Enumeration<java.lang.String> |
getPolicyInstancesInfo()
Returns information on Policy instances.
|
java.lang.String |
getPolicySubstoreId()
Returns the policy substore id.
|
void |
init(ISubsystem owner,
IConfigStore config)
Initializes the PolicyProcessor
|
boolean |
isProfileRequest(IRequest request) |
void |
modifyPolicyInstance(java.lang.String id,
java.util.Hashtable<java.lang.String,java.lang.String> ht)
Modifies a policy instance
|
void |
printPolicies() |
void |
setId(java.lang.String id) |
void |
shutdown()
Shuts down this subsystem.
|
void |
startup() |
public static org.slf4j.Logger logger
protected IConfigStore mConfig
protected com.netscape.cmscore.apps.EngineConfig mGlobalStore
protected IAuthority mAuthority
public static final java.lang.String[] DEF_POLICIES
public static final java.util.Hashtable<java.lang.String,IExpression> DEF_UNDELETABLE_POLICIES
public GenericPolicyProcessor()
public GenericPolicyProcessor(boolean initSystemPolicies)
public void setId(java.lang.String id)
throws EBaseException
EBaseExceptionpublic java.lang.String getId()
public void startup()
throws EBaseException
EBaseExceptionpublic void shutdown()
public ISubsystem getAuthority()
getAuthority in interface IPolicyProcessorpublic IConfigStore getConfigStore()
public void init(ISubsystem owner, IConfigStore config) throws EBaseException
owner - owner of this subsystemconfig - configuration of this subsystemEBaseException - failed to initialize this Subsystem.public boolean isProfileRequest(IRequest request)
public PolicyResult apply(IRequest req)
public void printPolicies()
public java.lang.String getPolicySubstoreId()
IPolicyProcessorgetPolicySubstoreId in interface IPolicyProcessorpublic java.util.Enumeration<IPolicyRule> getPolicyImpls()
IPolicyProcessorgetPolicyImpls in interface IPolicyProcessorpublic java.util.Enumeration<java.lang.String> getPolicyImplsInfo()
IPolicyProcessorgetPolicyImplsInfo in interface IPolicyProcessorpublic IPolicyRule getPolicyImpl(java.lang.String id)
IPolicyProcessorgetPolicyImpl in interface IPolicyProcessorid - The implementation id.public java.util.Vector<java.lang.String> getPolicyImplConfig(java.lang.String id)
IPolicyProcessorgetPolicyImplConfig in interface IPolicyProcessorid - The implementation id.public void deletePolicyImpl(java.lang.String id)
throws EBaseException
IPolicyProcessordeletePolicyImpl in interface IPolicyProcessorid - The impl id of the policy to be deleted.
There shouldn't be any active instance for this
implementation.EBaseException - is thrown if an error occurs in deletion.public void addPolicyImpl(java.lang.String id,
java.lang.String classPath)
throws EBaseException
IPolicyProcessoraddPolicyImpl in interface IPolicyProcessorid - The impl id of the policy to be added.
The id should be unique.classPath - The fully qualified path for the implementation.EBaseException - is thrown if an error occurs in addition.public java.util.Enumeration<IPolicyRule> getPolicyInstances()
IPolicyProcessorgetPolicyInstances in interface IPolicyProcessorpublic java.util.Enumeration<java.lang.String> getPolicyInstancesInfo()
IPolicyProcessorgetPolicyInstancesInfo in interface IPolicyProcessorpublic IPolicyRule getPolicyInstance(java.lang.String id)
IPolicyProcessorgetPolicyInstance in interface IPolicyProcessorid - The rule id.public java.util.Vector<java.lang.String> getPolicyInstanceConfig(java.lang.String id)
IPolicyProcessorgetPolicyInstanceConfig in interface IPolicyProcessorid - The rule id.public void deletePolicyInstance(java.lang.String id)
throws EBaseException
IPolicyProcessordeletePolicyInstance in interface IPolicyProcessorid - The instance id of the policy to be deleted.EBaseException - is thrown if an error occurs in deletion.public void addPolicyInstance(java.lang.String id,
java.util.Hashtable<java.lang.String,java.lang.String> ht)
throws EBaseException
IPolicyProcessoraddPolicyInstance in interface IPolicyProcessorid - The impl id of the policy to be added.
The id should be unique.ht - a Hashtable of config params.EBaseException - is thrown if an error occurs in addition.public void modifyPolicyInstance(java.lang.String id,
java.util.Hashtable<java.lang.String,java.lang.String> ht)
throws EBaseException
IPolicyProcessormodifyPolicyInstance in interface IPolicyProcessorid - The impl id of the policy to be modified.
The policy instance with this id should be present.ht - a Hashtable of config params.EBaseException - is thrown if an error occurs in addition.public void changePolicyInstanceOrdering(java.lang.String policyOrderStr)
throws EBaseException
IPolicyProcessorchangePolicyInstanceOrdering in interface IPolicyProcessorpolicyOrderStr - The comma separated list of instance ids.EBaseException