public class AccessCheckFilter extends Object implements CDXAccessFilter
CDXAccessFilter
implementation useful for most cases.
2014-11-06: Disabled per-urlkey
caching of include result (
lastKey
and cachedValue
). It assumes exclusion is per-URL
basis, which is not necessarily true (access control oracle allows for
excluding captures by date-range, for example). Such optimization should be
done in ExclusionFilter.
2014-11-06: The second CDXFilter (@code cdxFilter2) is soon to be dropped. If
more than one CDXFilter
s are needed, bundle them up in one composite
CDXFilter.
Modifier and Type | Class and Description |
---|---|
protected static class |
AccessCheckFilter.CDXSearchResult
Adapts CDXLine to CaptureSearchResult interface.
|
Modifier and Type | Field and Description |
---|---|
protected ExclusionFilter |
adminFilter |
protected AuthToken |
authToken |
protected boolean |
cachedValue |
protected CDXFilter |
cdxFilter |
protected CDXFilter |
cdxFilter2 |
protected String |
lastKey |
protected ExclusionFilter |
robotsFilter |
Constructor and Description |
---|
AccessCheckFilter(AuthToken token,
ExclusionFilter adminFilter,
ExclusionFilter robotsFilter,
CDXFilter cdxFilter)
|
AccessCheckFilter(AuthToken token,
ExclusionFilter adminFilter,
ExclusionFilter robotsFilter,
CDXFilter cdxFilter,
CDXFilter cdxFilter2)
Initializes with
AuthToken , two ExclusionFilter s and two CDXFilter s. |
Modifier and Type | Method and Description |
---|---|
boolean |
include(CaptureSearchResult resultTester,
boolean throwOnFail) |
boolean |
includeCapture(org.archive.format.cdx.CDXLine line) |
boolean |
includeUrl(String urlKey,
String originalUrl) |
protected ExclusionFilter adminFilter
protected ExclusionFilter robotsFilter
protected CDXFilter cdxFilter
protected CDXFilter cdxFilter2
protected AuthToken authToken
protected String lastKey
protected boolean cachedValue
public AccessCheckFilter(AuthToken token, ExclusionFilter adminFilter, ExclusionFilter robotsFilter, CDXFilter cdxFilter)
token
- provides user privilege informationadminFilter
- administrative exclusion filterrobotsFilter
- robots exclusion filtercdxFilter
- CDX filter for narrowing down the visible archive space.public AccessCheckFilter(AuthToken token, ExclusionFilter adminFilter, ExclusionFilter robotsFilter, CDXFilter cdxFilter, CDXFilter cdxFilter2)
AuthToken
, two ExclusionFilter
s and two CDXFilter
s.
Both cdxFilter
and cdxFilter2
must pass for capture to be included (i.e. they are AND).token
- provides user privilege informationadminFilter
- administrative exclusion filterrobotsFilter
- robots exclusion filtercdxFilter
- CDX filter for narrowing down the visible archive space.cdxFilter2
- Second CDX filter.public boolean include(CaptureSearchResult resultTester, boolean throwOnFail)
public boolean includeUrl(String urlKey, String originalUrl)
includeUrl
in interface CDXAccessFilter
public boolean includeCapture(org.archive.format.cdx.CDXLine line)
includeCapture
in interface CDXAccessFilter
Copyright © 2005–2017 IIPC. All rights reserved.