1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.opensaml.xml.signature.impl;
18
19 import java.util.ArrayList;
20 import java.util.Collections;
21 import java.util.List;
22
23 import javax.xml.namespace.QName;
24
25 import org.opensaml.xml.XMLObject;
26 import org.opensaml.xml.signature.X509CRL;
27 import org.opensaml.xml.signature.X509Certificate;
28 import org.opensaml.xml.signature.X509Data;
29 import org.opensaml.xml.signature.X509IssuerSerial;
30 import org.opensaml.xml.signature.X509SKI;
31 import org.opensaml.xml.signature.X509SubjectName;
32 import org.opensaml.xml.util.IndexedXMLObjectChildrenList;
33 import org.opensaml.xml.validation.AbstractValidatingXMLObject;
34
35
36 public class X509DataImpl extends AbstractValidatingXMLObject implements X509Data {
37
38
39 private final IndexedXMLObjectChildrenList indexedChildren;
40
41
42
43
44
45
46
47
48 protected X509DataImpl(String namespaceURI, String elementLocalName, String namespacePrefix) {
49 super(namespaceURI, elementLocalName, namespacePrefix);
50 indexedChildren = new IndexedXMLObjectChildrenList(this);
51 }
52
53
54 public List<XMLObject> getXMLObjects() {
55 return (List<XMLObject>) this.indexedChildren;
56 }
57
58
59 public List<XMLObject> getXMLObjects(QName typeOrName) {
60 return (List<XMLObject>) this.indexedChildren.subList(typeOrName);
61 }
62
63
64 public List<X509IssuerSerial> getX509IssuerSerials() {
65 return (List<X509IssuerSerial>) this.indexedChildren.subList(X509IssuerSerial.DEFAULT_ELEMENT_NAME);
66 }
67
68
69 public List<X509SKI> getX509SKIs() {
70 return (List<X509SKI>) this.indexedChildren.subList(X509SKI.DEFAULT_ELEMENT_NAME);
71 }
72
73
74 public List<X509SubjectName> getX509SubjectNames() {
75 return (List<X509SubjectName>) this.indexedChildren.subList(X509SubjectName.DEFAULT_ELEMENT_NAME);
76 }
77
78
79 public List<X509Certificate> getX509Certificates() {
80 return (List<X509Certificate>) this.indexedChildren.subList(X509Certificate.DEFAULT_ELEMENT_NAME);
81 }
82
83
84 public List<X509CRL> getX509CRLs() {
85 return (List<X509CRL>) this.indexedChildren.subList(X509CRL.DEFAULT_ELEMENT_NAME);
86 }
87
88
89 public List<XMLObject> getOrderedChildren() {
90 ArrayList<XMLObject> children = new ArrayList<XMLObject>();
91
92 children.addAll((List<XMLObject>) indexedChildren);
93
94 if (children.size() == 0) {
95 return null;
96 }
97
98 return Collections.unmodifiableList(children);
99 }
100
101 }