public class Policy extends AbstractPolicy
metaData| Constructor and Description |
|---|
Policy(URI id,
RuleCombiningAlgorithm combiningAlg,
AbstractTarget target)
Creates a new
Policy with only the required elements. |
Policy(URI id,
RuleCombiningAlgorithm combiningAlg,
AbstractTarget target,
List<Rule> rules)
Creates a new
Policy with only the required elements plus rules. |
Policy(URI id,
String version,
RuleCombiningAlgorithm combiningAlg,
String description,
AbstractTarget target,
List<Rule> rules)
Creates a new
Policy with the required elements plus a version, rules, and a
String description. |
Policy(URI id,
String version,
RuleCombiningAlgorithm combiningAlg,
String description,
AbstractTarget target,
String defaultVersion,
List<CombinerElement> ruleElements,
Set<AbstractObligation> obligations,
Set<VariableDefinition> definitions,
List<CombinerParameter> parameters)
Creates a new
Policy with the required and optional elements. |
Policy(URI id,
String version,
RuleCombiningAlgorithm combiningAlg,
String description,
AbstractTarget target,
String defaultVersion,
List<Rule> rules)
Creates a new
Policy with the required elements plus a version, rules, a String
description and policy defaults. |
Policy(URI id,
String version,
RuleCombiningAlgorithm combiningAlg,
String description,
AbstractTarget target,
String defaultVersion,
List<Rule> rules,
Set<AbstractObligation> obligations)
Creates a new
Policy with the required elements plus a version, rules, a String
description, policy defaults, and obligations. |
Policy(URI id,
String version,
RuleCombiningAlgorithm combiningAlg,
String description,
AbstractTarget target,
String defaultVersion,
List<Rule> rules,
Set<AbstractObligation> obligations,
Set<VariableDefinition> definitions)
Creates a new
Policy with the required elements plus a version, rules, a String
description, policy defaults, obligations, and variable definitions. |
| Modifier and Type | Method and Description |
|---|---|
String |
encode()
Encodes this
Policy into its XML form |
void |
encode(StringBuilder builder)
Encodes this
Policy into its XML form and writes this out to the provided
StringBuilder |
static Policy |
getInstance(Node root)
Creates an instance of a
Policy object based on a DOM node. |
Set |
getVariableDefinitions()
Returns the variable definitions in this Policy.
|
encodeCommonElements, evaluate, getActionPolicyValue, getAdviceExpressions, getChildElements, getChildren, getCombiningAlg, getCombiningParameters, getDefaultVersion, getDescription, getEnvPolicyValue, getId, getMetaData, getObligationExpressions, getResourcePolicyValue, getSubjectPolicyValue, getTarget, getVersion, match, setActionPolicyValue, setChildren, setEnvPolicyValue, setResourcePolicyValue, setSubjectPolicyValuepublic Policy(URI id, RuleCombiningAlgorithm combiningAlg, AbstractTarget target)
Policy with only the required elements.id - the policy identifiercombiningAlg - the CombiningAlgorithm used on the rules in this settarget - the AbstractTarget for this policypublic Policy(URI id, RuleCombiningAlgorithm combiningAlg, AbstractTarget target, List<Rule> rules)
Policy with only the required elements plus rules.id - the policy identifiercombiningAlg - the CombiningAlgorithm used on the rules in this settarget - the AbstractTarget for this policyrules - a list of Rule objectsIllegalArgumentException - if the List of rules contains an object that is
not a Rulepublic Policy(URI id, String version, RuleCombiningAlgorithm combiningAlg, String description, AbstractTarget target, List<Rule> rules)
Policy with the required elements plus a version, rules, and a
String description. Note that the version is an XACML 2.0 feature.id - the policy identifierversion - the policy version or null for the default (this must always be null for XACML
1.x policies)combiningAlg - the CombiningAlgorithm used on the rules in this setdescription - a String describing the policytarget - the AbstractTarget for this policyrules - a list of Rule objectsIllegalArgumentException - if the List of rules contains an object that is
not a Rulepublic Policy(URI id, String version, RuleCombiningAlgorithm combiningAlg, String description, AbstractTarget target, String defaultVersion, List<Rule> rules)
Policy with the required elements plus a version, rules, a String
description and policy defaults. Note that the version is an XACML 2.0 feature.id - the policy identifierversion - the policy version or null for the default (this must always be null for XACML
1.x policies)combiningAlg - the CombiningAlgorithm used on the rules in this setdescription - a String describing the policytarget - the AbstractTarget for this policydefaultVersion - the XPath version to userules - a list of Rule objectsIllegalArgumentException - if the List of rules contains an object that is
not a Rulepublic Policy(URI id, String version, RuleCombiningAlgorithm combiningAlg, String description, AbstractTarget target, String defaultVersion, List<Rule> rules, Set<AbstractObligation> obligations)
Policy with the required elements plus a version, rules, a String
description, policy defaults, and obligations. Note that the version is an XACML 2.0 feature.id - the policy identifierversion - the policy version or null for the default (this must always be null for XACML
1.x policies)combiningAlg - the CombiningAlgorithm used on the rules in this setdescription - a String describing the policytarget - the AbstractTarget for this policydefaultVersion - the XPath version to userules - a list of Rule objectsobligations - a set of Obligations objectsIllegalArgumentException - if the List of rules contains an object that is
not a Rulepublic Policy(URI id, String version, RuleCombiningAlgorithm combiningAlg, String description, AbstractTarget target, String defaultVersion, List<Rule> rules, Set<AbstractObligation> obligations, Set<VariableDefinition> definitions)
Policy with the required elements plus a version, rules, a String
description, policy defaults, obligations, and variable definitions. Note that the version
and definitions are XACML 2.0 features.id - the policy identifierversion - the policy version or null for the default (this must always be null for XACML
1.x policies)combiningAlg - the CombiningAlgorithm used on the rules in this setdescription - a String describing the policytarget - the AbstractTarget for this policydefaultVersion - the XPath version to userules - a list of Rule objectsobligations - a set of Obligations objectsdefinitions - a set of VariableDefinition objects that must provide all
definitions referenced by all VariableReferences in the policyIllegalArgumentException - if the List of rules contains an object that is
not a Rulepublic Policy(URI id, String version, RuleCombiningAlgorithm combiningAlg, String description, AbstractTarget target, String defaultVersion, List<CombinerElement> ruleElements, Set<AbstractObligation> obligations, Set<VariableDefinition> definitions, List<CombinerParameter> parameters)
Policy with the required and optional elements. If you need to
provide combining algorithm parameters, you need to use this constructor. Note that unlike
the other constructors in this class, the rules list is actually a list of
CombinerElements used to match a rule with any combiner parameters it may have.id - the policy identifierversion - the policy version or null for the default (this must always be null for XACML
1.x policies)combiningAlg - the CombiningAlgorithm used on the rules in this setdescription - a String describing the policy or null if there is no
descriptiontarget - the AbstractTarget for this policydefaultVersion - the XPath version to use or null if there is no default versionruleElements - a list of RuleCombinerElement objects or null if there are
no rulesobligations - a set of Obligations objects or null if there are no
obligationsdefinitions - a set of VariableDefinition objects that must provide all
definitions referenced by all VariableReferences in the policyparameters - the List of CombinerParameters provided for
general use by the combining algorithmIllegalArgumentException - if the List of rules contains an object that is
not a RuleCombinerElementpublic static Policy getInstance(Node root) throws ParsingException
Policy object based on a DOM node. The node must be the
root of PolicyType XML object, otherwise an exception is thrown.root - the DOM root of a PolicyType XML type
the XACML policy, if null use default factoriesPolicy objectParsingException - if the PolicyType is invalidpublic Set getVariableDefinitions()
Set of VariableDefinitionspublic String encode()
Policy into its XML formStringpublic void encode(StringBuilder builder)
Policy into its XML form and writes this out to the provided
StringBuilderbuilder - string stream into which the XML-encoded data is writtenCopyright © 2019 WSO2. All rights reserved.