01: /* Copyright 2005 The JA-SIG Collaborative. All rights reserved.
02: * See license distributed with this file and
03: * available online at http://www.uportal.org/license.html
04: */
05:
06: package org.jasig.portal.utils.uri;
07:
08: import java.net.URI;
09:
10: /**
11: * UriScrutinizers examine URIs to see if they should be blocked for reasons
12: * of policy.
13: * @since uPortal 2.5.1
14: */
15: public interface IUriScrutinizer {
16:
17: /**
18: * Scrutinize a URI to determine if access to it should be blocked for
19: * reasons of policy. Throws BlockedUriException if access to the URI
20: * should be blocked, conveying the reason for blockage.
21: *
22: * Blocking a URI is an exceptional and ideally rare circumstance
23: * which will usually abort whatever operation was being undertaken, and so
24: * this method throws on that exceptional circumstance.
25: * @param uri non-null URI for examination
26: * @throws BlockedUriException if access should be blocked
27: */
28: public void scrutinize(URI uri) throws BlockedUriException;
29:
30: }
|