1 // ========================================================================
2 // Copyright (c) 2008-2009 Mort Bay Consulting Pty. Ltd.
3 // ------------------------------------------------------------------------
4 // All rights reserved. This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v1.0
6 // and Apache License v2.0 which accompanies this distribution.
7 // The Eclipse Public License is available at
8 // http://www.eclipse.org/legal/epl-v10.html
9 // The Apache License v2.0 is available at
10 // http://www.opensource.org/licenses/apache2.0.php
11 // You may elect to redistribute this code under either of these licenses.
12 // ========================================================================
13
14 package org.eclipse.jetty.security;
15
16 import java.util.List;
17 import java.util.Set;
18
19 /**
20 * @version $Rev: 4466 $ $Date: 2009-02-10 23:42:54 +0100 (Tue, 10 Feb 2009) $
21 */
22 public interface ConstraintAware
23 {
24 List<ConstraintMapping> getConstraintMappings();
25 Set<String> getRoles();
26
27 /* ------------------------------------------------------------ */
28 /** Set Constraint Mappings and roles.
29 * Can only be called during initialization.
30 * @param constraintMappings
31 * @param roles
32 */
33 void setConstraintMappings(List<ConstraintMapping> constraintMappings, Set<String> roles);
34
35 /* ------------------------------------------------------------ */
36 /** Add a Constraint Mapping.
37 * May be called for running webapplication as an annotated servlet is instantiated.
38 * @param mapping
39 */
40 void addConstraintMapping(ConstraintMapping mapping);
41
42
43 /* ------------------------------------------------------------ */
44 /** Add a Role definition.
45 * May be called on running webapplication as an annotated servlet is instantiated.
46 * @param role
47 */
48 void addRole(String role);
49 }