View Javadoc
1   /*
2    * Copyright 2001-2008 The Apache Software Foundation.
3    * 
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    * 
8    *      http://www.apache.org/licenses/LICENSE-2.0
9    * 
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   *
16   */
17  
18  
19  package org.w3._2000._09.xmldsig_;
20  
21  import java.util.ArrayList;
22  import java.util.List;
23  import javax.xml.bind.JAXBElement;
24  import javax.xml.bind.annotation.XmlAccessType;
25  import javax.xml.bind.annotation.XmlAccessorType;
26  import javax.xml.bind.annotation.XmlAnyElement;
27  import javax.xml.bind.annotation.XmlAttribute;
28  import javax.xml.bind.annotation.XmlElementRef;
29  import javax.xml.bind.annotation.XmlElementRefs;
30  import javax.xml.bind.annotation.XmlID;
31  import javax.xml.bind.annotation.XmlMixed;
32  import javax.xml.bind.annotation.XmlSchemaType;
33  import javax.xml.bind.annotation.XmlType;
34  import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
35  import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
36  import org.w3c.dom.Element;
37  
38  
39  /**
40   * <p>Java class for KeyInfoType complex type.
41   * 
42   * <p>The following schema fragment specifies the expected content contained within this class.
43   * 
44   * <pre>
45   * &lt;complexType name="KeyInfoType">
46   *   &lt;complexContent>
47   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
48   *       &lt;choice maxOccurs="unbounded">
49   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}KeyName"/>
50   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}KeyValue"/>
51   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}RetrievalMethod"/>
52   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}X509Data"/>
53   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}PGPData"/>
54   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}SPKIData"/>
55   *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}MgmtData"/>
56   *         &lt;any/>
57   *       &lt;/choice>
58   *       &lt;attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" />
59   *     &lt;/restriction>
60   *   &lt;/complexContent>
61   * &lt;/complexType>
62   * </pre>
63   * 
64   * 
65   */
66  @XmlAccessorType(XmlAccessType.FIELD)
67  @XmlType(name = "KeyInfoType", propOrder = {
68      "content"
69  })
70  public class KeyInfoType {
71  
72      @XmlElementRefs({
73          @XmlElementRef(name = "SPKIData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class),
74          @XmlElementRef(name = "KeyName", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class),
75          @XmlElementRef(name = "PGPData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class),
76          @XmlElementRef(name = "MgmtData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class),
77          @XmlElementRef(name = "X509Data", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class),
78          @XmlElementRef(name = "KeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class),
79          @XmlElementRef(name = "RetrievalMethod", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class)
80      })
81      @XmlMixed
82      @XmlAnyElement(lax = true)
83      protected List<Object> content;
84      @XmlAttribute(name = "Id")
85      @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
86      @XmlID
87      @XmlSchemaType(name = "ID")
88      protected String id;
89  
90      /**
91       * Gets the value of the content property.
92       * 
93       * <p>
94       * This accessor method returns a reference to the live list,
95       * not a snapshot. Therefore any modification you make to the
96       * returned list will be present inside the JAXB object.
97       * This is why there is not a <CODE>set</CODE> method for the content property.
98       * 
99       * <p>
100      * For example, to add a new item, do as follows:
101      * <pre>
102      *    getContent().add(newItem);
103      * </pre>
104      * 
105      * 
106      * <p>
107      * Objects of the following type(s) are allowed in the list
108      * {@link JAXBElement }{@code <}{@link SPKIDataType }{@code >}
109      * {@link JAXBElement }{@code <}{@link String }{@code >}
110      * {@link JAXBElement }{@code <}{@link PGPDataType }{@code >}
111      * {@link JAXBElement }{@code <}{@link String }{@code >}
112      * {@link String }
113      * {@link JAXBElement }{@code <}{@link X509DataType }{@code >}
114      * {@link JAXBElement }{@code <}{@link KeyValueType }{@code >}
115      * {@link JAXBElement }{@code <}{@link RetrievalMethodType }{@code >}
116      * {@link Object }
117      * {@link Element }
118      * 
119      * 
120      */
121     public List<Object> getContent() {
122         if (content == null) {
123             content = new ArrayList<Object>();
124         }
125         return this.content;
126     }
127 
128     /**
129      * Gets the value of the id property.
130      * 
131      * @return
132      *     possible object is
133      *     {@link String }
134      *     
135      */
136     public String getId() {
137         return id;
138     }
139 
140     /**
141      * Sets the value of the id property.
142      * 
143      * @param value
144      *     allowed object is
145      *     {@link String }
146      *     
147      */
148     public void setId(String value) {
149         this.id = value;
150     }
151 
152 }