## org.exist.security.xacml
Class ExistPolicyModule

    java.lang.Object
      com.sun.xacml.finder.PolicyFinderModule
          org.exist.security.xacml.ExistPolicyModule

public class ExistPolicyModule
extends com.sun.xacml.finder.PolicyFinderModule

This class finds Policy and PolicySet documents located in the /db/system/policies collection. It implements both of the `findPolicy` methods of `PolicyFinderModule`. Finding policies by reference uses a range index on PolicySetId and PolicyId, so that must be set up for references to work. Finding policies for a given request is not yet optimized, but just loads all policies in the policies collection, parses them, and determines if they match the request.

See Also:
  `XACMLConstants`

Constructor Summary
`ExistPolicyModule(ExistPDP pdp)` Creates a new `ExistPolicyModule`.

Method Summary
`com.sun.xacml.finder.PolicyFinderResult` `findPolicy(com.sun.xacml.EvaluationCtx context)`
`com.sun.xacml.finder.PolicyFinderResult` `findPolicy(java.net.URI idReference, int type)`
`void` `init(com.sun.xacml.finder.PolicyFinder finder)`
`boolean` `isIdReferenceSupported()`
`boolean` `isRequestSupported()`

Methods inherited from class com.sun.xacml.finder.PolicyFinderModule
`getIdentifier, invalidateCache`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ExistPolicyModule

    public ExistPolicyModule(ExistPDP pdp)

  Creates a new `ExistPolicyModule`. Retains a reference to the specified `BrokerPool`.

Parameters:
  `pdp` - The `ExistPDP` for this database instance.

Method Detail

### isRequestSupported

    public boolean isRequestSupported()

### isIdReferenceSupported

    public boolean isIdReferenceSupported()

### init

    public void init(com.sun.xacml.finder.PolicyFinder finder)

### findPolicy

    public com.sun.xacml.finder.PolicyFinderResult findPolicy(com.sun.xacml.EvaluationCtx context)

### findPolicy

    public com.sun.xacml.finder.PolicyFinderResult findPolicy(java.net.URI idReference,
                                                              int type)

Copyright (C) Wolfgang Meier. All rights reserved.