View Javadoc

1   /*
2    * Copyright 2008 Members of the EGEE Collaboration.
3    * Copyright 2008 University Corporation for Advanced Internet Development, Inc.
4    *
5    * Licensed under the Apache License, Version 2.0 (the "License");
6    * you may not use this file except in compliance with the License.
7    * You may obtain a copy of the License at
8    *
9    * http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  
18  package org.opensaml.xacml.policy;
19  
20  import javax.xml.namespace.QName;
21  
22  import org.opensaml.xacml.XACMLConstants;
23  import org.opensaml.xml.schema.XSBooleanValue;
24  
25  /** XACML AttributeSelector schema type. */
26  public interface AttributeSelectorType extends ExpressionType {
27  
28      /** Local name of the element AttributeSelector. */
29      public static final String DEFAULT_ELEMENT_LOCAL_NAME = "AttributeSelector";
30  
31      /** QName of the element AttributeSelector. */
32      public static final QName DEFAULT_ELEMENT_NAME = new QName(
33  	    XACMLConstants.XACML20_NS, DEFAULT_ELEMENT_LOCAL_NAME,
34  	    XACMLConstants.XACML_PREFIX);
35  
36      /** Local name of the XSI type. */
37      public static final String SCHEMA_TYPE_LOCAL_NAME = "AttributeSelectorType";
38  
39      /** QName of the XSI type. */
40      public static final QName SCHEMA_TYPE_NAME = new QName(
41  	    XACMLConstants.XACML20_NS, SCHEMA_TYPE_LOCAL_NAME,
42  	    XACMLConstants.XACML_PREFIX);
43  
44      /** RequestContextPath attribute name. */
45      public static final String REQUEST_CONTEXT_PATH_ATTRIB_NAME = "RequestContextPath";
46  
47      /** DataType attribute name. */
48      public static final String DATA_TYPE_ATTRIB_NAME = "DataType";
49  
50      /** MustBePresent attribute name. */
51      public static final String MUST_BE_PRESENT_ATTRIB_NAME = "MustBePresent";
52  
53      /**
54       * Gets the request context path of the attribute to be selected.
55       * 
56       * @return request context path of the attribute to be selected
57       */
58      public String getRequestContextPath();
59  
60      /**
61       * Sets the request context path of the attribute to be selected.
62       * 
63       * @param path
64       *                request context path of the attribute to be selected
65       */
66      public void setRequestContextPath(String path);
67  
68      /**
69       * Gets the data type of the attribute to be selected.
70       * 
71       * @return data type of the attribute to be selected
72       */
73      public String getDataType();
74  
75      /**
76       * Sets the data type of the attribute to be selected.
77       * 
78       * @param type
79       *                data type of the attribute to be selected
80       */
81      public void setDataType(String type);
82  
83      /**
84       * Gets whether the attribute to be selected must be present.
85       * 
86       * @return whether the attribute to be selected must be present
87       */
88      public Boolean getMustBePresent();
89  
90      /**
91       * Gets whether the attribute to be selected must be present.
92       * 
93       * @return whether the attribute to be selected must be present
94       */
95      public XSBooleanValue getMustBePresentXSBoolean();
96  
97      /**
98       * Sets whether the attribute to be selected must be present.
99       * 
100      * @param present
101      *                whether the attribute to be selected must be present
102      */
103     public void setMustBePresent(Boolean present);
104 
105     /**
106      * Sets whether the attribute to be selected must be present.
107      * 
108      * @param present
109      *                whether the attribute to be selected must be present
110      */
111     public void setMustBePresentXSBoolean(XSBooleanValue present);
112 }