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 * <complexType name="KeyInfoType">
46 * <complexContent>
47 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
48 * <choice maxOccurs="unbounded">
49 * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyName"/>
50 * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyValue"/>
51 * <element ref="{http://www.w3.org/2000/09/xmldsig#}RetrievalMethod"/>
52 * <element ref="{http://www.w3.org/2000/09/xmldsig#}X509Data"/>
53 * <element ref="{http://www.w3.org/2000/09/xmldsig#}PGPData"/>
54 * <element ref="{http://www.w3.org/2000/09/xmldsig#}SPKIData"/>
55 * <element ref="{http://www.w3.org/2000/09/xmldsig#}MgmtData"/>
56 * <any/>
57 * </choice>
58 * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" />
59 * </restriction>
60 * </complexContent>
61 * </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 }