1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package edu.internet2.middleware.shibboleth.common.attribute.filtering.provider.match.basic;
18
19 import edu.internet2.middleware.shibboleth.common.attribute.BaseAttribute;
20 import edu.internet2.middleware.shibboleth.common.attribute.filtering.provider.FilterProcessingException;
21 import edu.internet2.middleware.shibboleth.common.attribute.filtering.provider.ShibbolethFilteringContext;
22
23
24
25
26 public class AttributeValueRegexMatchFunctor extends AbstractAttributeTargetedRegexMatchFunctor {
27
28
29
30
31
32
33 protected boolean doEvaluatePolicyRequirement(ShibbolethFilteringContext filterContext)
34 throws FilterProcessingException {
35 BaseAttribute attribute = filterContext.getUnfilteredAttributes().get(getAttributeId());
36
37 if (attribute != null && attribute.getValues() != null) {
38 for (Object value : attribute.getValues()) {
39 if (isMatch(value)) {
40 return true;
41 }
42 }
43 }
44 return false;
45 }
46
47
48
49
50
51
52 protected boolean doEvaluateValue(ShibbolethFilteringContext filterContext, String id, Object attributeValue)
53 throws FilterProcessingException {
54
55 return isMatch(attributeValue);
56 }
57 }