View Javadoc

1   /*
2   Copyright 2008 Members of the EGEE Collaboration.
3   Copyright 2008 University Corporation for Advanced Internet Development,
4   Inc.
5   
6   Licensed under the Apache License, Version 2.0 (the "License");
7   you may not use this file except in compliance with the License.
8   You may obtain a copy of the License at
9   
10      http://www.apache.org/licenses/LICENSE-2.0
11  
12  Unless required by applicable law or agreed to in writing, software
13  distributed under the License is distributed on an "AS IS" BASIS,
14  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  See the License for the specific language governing permissions and
16  limitations under the License.
17   */
18  
19  package org.opensaml.xacml.ctx;
20  
21  import java.util.List;
22  
23  import javax.xml.namespace.QName;
24  
25  import org.opensaml.xacml.XACMLConstants;
26  import org.opensaml.xacml.XACMLObject;
27  
28  /** XACML context Attribute schema type. */
29  public interface AttributeType extends XACMLObject {
30  
31      /** Local name of the Attribute element. */
32      public static final String DEFAULT_ELEMENT_LOCAL_NAME = "Attribute";
33  
34      /** Default element name XACML20. */
35      public static final QName DEFAULT_ELEMENT_NAME = new QName(XACMLConstants.XACML20CTX_NS,
36              DEFAULT_ELEMENT_LOCAL_NAME, XACMLConstants.XACMLCONTEXT_PREFIX);
37  
38      /** Local name of the XSI type. */
39      public static final String TYPE_LOCAL_NAME = "AttributeType";
40  
41      /** QName of the XSI type XACML20. */
42      public static final QName TYPE_NAME = new QName(XACMLConstants.XACML20CTX_NS, TYPE_LOCAL_NAME,
43              XACMLConstants.XACMLCONTEXT_PREFIX);
44  
45      /** Name of the AttributeId attribute. */
46      public static final String ATTRIBUTEID_ATTTRIB_NAME = "AttributeId";
47  
48      /** Name for the Datatype attribute. */
49      public static final String DATATYPE_ATTRIB_NAME = "DataType";
50  
51      /** Name of the Issuer attribute. */
52      public static final String ISSUER_ATTRIB_NAME = "Issuer";
53  
54      /**
55       * gets the AttributeId.
56       * 
57       * @return the AttributeId
58       */
59      public String getAttributeID();
60  
61      /**
62       * Gets the list of attribute values for this attribute.
63       * 
64       * @return the list of values for this attribute
65       */
66      public List<AttributeValueType> getAttributeValues();
67  
68      /**
69       * Get the datatype of the attribute.
70       * 
71       * @return the datatype
72       */
73      public String getDataType();
74  
75      /**
76       * Gets the issuer of the attribute.
77       * 
78       * @return the value of Issuer
79       */
80      public String getIssuer();
81  
82      /**
83       * Sets the AttributeId.
84       * 
85       * @param attributeId is the wanted AttributeId
86       */
87      public void setAttributeID(String attributeId);
88  
89      /**
90       * Sets the datatype of the attribute.
91       * 
92       * @param datatype is the wanted datatype
93       */
94      public void setDataType(String datatype);
95  
96      /**
97       * Sets the issuer of the attribute.
98       * 
99       * @param issuer is the issuer of the attribute
100      */
101     public void setIssuer(String issuer);
102 }