73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk/**
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk *
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk *
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * Copyright (c) 2011-2013 ForgeRock AS. All Rights Reserved
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk *
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * The contents of this file are subject to the terms
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * of the Common Development and Distribution License
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * (the License). You may not use this file except in
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * compliance with the License.
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk *
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * You can obtain a copy of the License at
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * http://forgerock.org/license/CDDLv1.0.html
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * See the License for the specific language governing
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * permission and limitations under the License.
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk *
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * When distributing Covered Code, include this CDDL
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * Header Notice in each file and include the License file
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * at http://forgerock.org/license/CDDLv1.0.html
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * If applicable, add the following below the CDDL Header,
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * with the fields enclosed by brackets [] replaced by
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * your own identifying information:
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * "Portions Copyrighted [year] [name of copyright owner]"
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk *
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk */
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster//
4c0f084e476c05989eb702c500a763ef09ba044ejeff.schenk// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster// Any modifications to this file will be lost upon recompilation of the source schema.
6e153e9671eb382c49354ab856404a71477cce58jeff.schenk// Generated on: 2013.01.21 at 10:40:04 AM PST
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster//
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Fosterpackage com.sun.identity.entitlement.xacml3.core;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Fosterimport java.util.ArrayList;
fb98811412f1a61efdc30b38091bf4708148a806Allan Fosterimport java.util.HashMap;
fb98811412f1a61efdc30b38091bf4708148a806Allan Fosterimport java.util.List;
fb98811412f1a61efdc30b38091bf4708148a806Allan Fosterimport java.util.Map;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlAccessType;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlAccessorType;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlAnyAttribute;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlAnyElement;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlAttribute;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlMixed;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlSchemaType;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlSeeAlso;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.bind.annotation.XmlType;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport javax.xml.namespace.QName;
6e153e9671eb382c49354ab856404a71477cce58jeff.schenkimport org.w3c.dom.Element;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster/**
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <p>Java class for AttributeValueType complex type.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <p>The following schema fragment specifies the expected content contained within this class.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <pre>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;complexType name="AttributeValueType">
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;complexContent>
4c0f084e476c05989eb702c500a763ef09ba044ejeff.schenk * &lt;extension base="{urn:oasis:names:tc:xacml:3.0:core:schema:wd-17}ExpressionType">
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;sequence>
4c0f084e476c05989eb702c500a763ef09ba044ejeff.schenk * &lt;any/>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;/sequence>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;attribute name="DataType" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;/extension>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;/complexContent>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * &lt;/complexType>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * </pre>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster */
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster@XmlAccessorType(XmlAccessType.FIELD)
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster@XmlType(name = "AttributeValueType", propOrder = {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster "content"
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster})
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster@XmlSeeAlso({
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster AttributeAssignment.class
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster})
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenkpublic class AttributeValue implements XACMLRootElement {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster @XmlMixed
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster @XmlAnyElement(lax = true)
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster protected List<Object> content;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster @XmlAttribute(name = "DataType", required = true)
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster @XmlSchemaType(name = "anyURI")
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster protected String dataType;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster @XmlAnyAttribute
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster private Map<QName, String> otherAttributes = new HashMap<QName, String>();
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster /**
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * Gets the value of the content property.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <p>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * This accessor method returns a reference to the live list,
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * not a snapshot. Therefore any modification you make to the
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * returned list will be present inside the JAXB object.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * This is why there is not a <CODE>set</CODE> method for the content property.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <p>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * For example, to add a new item, do as follows:
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <pre>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * getContent().add(newItem);
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * </pre>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <p>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * Objects of the following type(s) are allowed in the list
6e153e9671eb382c49354ab856404a71477cce58jeff.schenk * {@link Element }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * {@link Object }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * {@link String }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster */
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster public List<Object> getContent() {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster if (content == null) {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster content = new ArrayList<Object>();
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster return this.content;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster /**
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * Gets the value of the dataType property.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * @return
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * possible object is
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * {@link String }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster */
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster public String getDataType() {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster return dataType;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster /**
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * Sets the value of the dataType property.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * @param value
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * allowed object is
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * {@link String }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster */
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster public void setDataType(String value) {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster this.dataType = value;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster /**
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * Gets a map that contains attributes that aren't bound to any typed property on this class.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * <p>
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * the map is keyed by the name of the attribute and
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * the value is the string value of the attribute.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * the map returned by this method is live, and you can add new attribute
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * by updating the map directly. Because of this design, there's no setter.
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster *
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * @return
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster * always non-null
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster */
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster public Map<QName, String> getOtherAttributes() {
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster return otherAttributes;
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster }
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk /**
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * Default toXML Method to Marshal Object into XML.
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk * @return String - Marshaled Results into XML String.
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk */
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk public String toXML() {
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk StringBuilder stringBuilder = new StringBuilder();
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk // Return Marshaled Data.
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk return stringBuilder.toString();
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk }
73308f54e60e4cdb893e8b02955497e8f45b5893jeff.schenk
fb98811412f1a61efdc30b38091bf4708148a806Allan Foster}