Search in sources :

Example 6 with PolicyResponseImpl

use of ddf.catalog.plugin.impl.PolicyResponseImpl in project ddf by codice.

the class RegistryPolicyPlugin method processPostQuery.

@Override
public PolicyResponse processPostQuery(Result input, Map<String, Serializable> properties) throws StopProcessingException {
    HashMap<String, Set<String>> itemPolicy = new HashMap<>();
    Metacard metacard = input.getMetacard();
    if (RegistryUtility.isRegistryMetacard(metacard) || RegistryUtility.isInternalRegistryMetacard(metacard)) {
        if ((whiteList && !registryEntryIds.contains(metacard.getId())) || (!whiteList && registryEntryIds.contains(metacard.getId()))) {
            itemPolicy.putAll(bypassAccessPolicy);
        } else {
            itemPolicy.putAll(readAccessPolicy);
        }
    }
    return new PolicyResponseImpl(new HashMap<>(), itemPolicy);
}
Also used : Metacard(ddf.catalog.data.Metacard) Set(java.util.Set) HashSet(java.util.HashSet) HashMap(java.util.HashMap) PolicyResponseImpl(ddf.catalog.plugin.impl.PolicyResponseImpl)

Aggregations

PolicyResponseImpl (ddf.catalog.plugin.impl.PolicyResponseImpl)6 Set (java.util.Set)5 Metacard (ddf.catalog.data.Metacard)4 HashMap (java.util.HashMap)4 HashSet (java.util.HashSet)4 List (java.util.List)3 Map (java.util.Map)3 OPERATION_TRANSACTION_KEY (ddf.catalog.Constants.OPERATION_TRANSACTION_KEY)2 Attribute (ddf.catalog.data.Attribute)2 Result (ddf.catalog.data.Result)2 OperationTransaction (ddf.catalog.operation.OperationTransaction)2 Query (ddf.catalog.operation.Query)2 ResourceRequest (ddf.catalog.operation.ResourceRequest)2 ResourceResponse (ddf.catalog.operation.ResourceResponse)2 PolicyPlugin (ddf.catalog.plugin.PolicyPlugin)2 PolicyResponse (ddf.catalog.plugin.PolicyResponse)2 StopProcessingException (ddf.catalog.plugin.StopProcessingException)2 Permissions (ddf.security.permission.Permissions)2 Serializable (java.io.Serializable)2 NoSuchElementException (java.util.NoSuchElementException)2