| 
SunTM's XACML Implementation for JavaTM | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.sun.xacml.Rule
Represents the RuleType XACML type. This has a target for matching, and encapsulates the condition and all sub-operations that make up the heart of most policies.
| Constructor Summary | |
Rule(URI id,
     int effect,
     String description,
     Target target,
     Apply condition)
Creates a new Rule object. | 
|
| Method Summary | |
 void | 
encode(OutputStream output)
Encodes this Rule into its XML representation and writes
 this encoding to the given OutputStream with no
 indentation. | 
 void | 
encode(OutputStream output,
       Indenter indenter)
Encodes this Rule into its XML representation and writes
 this encoding to the given OutputStream with
 indentation. | 
 Result | 
evaluate(EvaluationCtx context)
Evaluates the rule against the supplied context.  | 
 List | 
getChildren()
Since a rule is always a leaf in a policy tree because it can have no children, this always returns an empty List. | 
 Apply | 
getCondition()
Returns the condition for this Rule or null if there
 is no condition | 
 String | 
getDescription()
Returns the given description of this Rule or null if 
 there is no description | 
 int | 
getEffect()
Returns the effect that this Rule will return from
 the evaluate method (Permit or Deny) if the request applies. | 
 URI | 
getId()
Returns the id of this Rule | 
static Rule | 
getInstance(Node root,
            String xpathVersion)
Returns a new instance of the Rule class based on a
 DOM node. | 
 Target | 
getTarget()
Returns the target for this Rule or null if there
 is no target | 
 MatchResult | 
match(EvaluationCtx context)
Given the input context sees whether or not the request matches this Rule's Target. | 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
public Rule(URI id,
            int effect,
            String description,
            Target target,
            Apply condition)
Rule object.
id - the rule's identifiereffect - the effect to return if the rule applies (either
               Pemit or Deny) as specified in Resultdescription - a textual description, or nulltarget - the rule's target, or null if the target is to be
               inherited from the encompassing policycondition - the rule's condition, or null if there is none| Method Detail | 
public static Rule getInstance(Node root,
                               String xpathVersion)
                        throws ParsingException
Rule class based on a
 DOM node. The node must be the root of an XML RuleType.
root - the DOM root of a RuleType XML typexpathVersion - the XPath version to use in any selectors or XPath
                     functions, or null if this is unspecified (ie, not
                     supplied in the defaults section of the policy)
ParsingException - if the RuleType is invalidpublic int getEffect()
Rule will return from
 the evaluate method (Permit or Deny) if the request applies.
Resultpublic URI getId()
Rule
getId in interface PolicyTreeElementpublic String getDescription()
Rule or null if 
 there is no description
getDescription in interface PolicyTreeElementpublic Target getTarget()
Rule or null if there
 is no target
getTarget in interface PolicyTreeElementpublic List getChildren()
List.
getChildren in interface PolicyTreeElementList with no elementspublic Apply getCondition()
Rule or null if there
 is no condition
public MatchResult match(EvaluationCtx context)
Rule's Target. Note that unlike the matching
 done by the evaluate method, if the Target
 is missing than this will return Indeterminate. This lets you write
 your own custom matching routines for rules but lets evaluation
 proceed normally.
match in interface PolicyTreeElementcontext - the representation of the request
public Result evaluate(EvaluationCtx context)
 Note that rules are not required to have targets. If no target is
 specified, then the rule inherits its parent's target. In the event
 that this Rule has no Target then the
 match is assumed to be true, since evaluating a policy tree to this
 level required the parent's target to match.
evaluate in interface PolicyTreeElementcontext - the representation of the request we're evaluating
public void encode(OutputStream output)
Rule into its XML representation and writes
 this encoding to the given OutputStream with no
 indentation.
encode in interface PolicyTreeElementoutput - a stream into which the XML-encoded data is written
public void encode(OutputStream output,
                   Indenter indenter)
Rule into its XML representation and writes
 this encoding to the given OutputStream with
 indentation.
encode in interface PolicyTreeElementoutput - a stream into which the XML-encoded data is writtenindenter - an object that creates indentation strings
  | 
Sun's XACML Implementation Version 1.2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Sun, Sun Microsystems, the Sun Logo, and Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.