1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.opensaml.ws.wsaddressing.impl;
19
20 import java.util.ArrayList;
21 import java.util.Collections;
22 import java.util.List;
23
24 import javax.xml.namespace.QName;
25
26 import org.opensaml.ws.wsaddressing.ReferenceParameters;
27 import org.opensaml.xml.XMLObject;
28 import org.opensaml.xml.util.AttributeMap;
29 import org.opensaml.xml.util.IndexedXMLObjectChildrenList;
30
31
32
33
34
35 public class ReferenceParametersImpl extends AbstractWSAddressingObject implements ReferenceParameters {
36
37
38 private AttributeMap unknownAttributes;
39
40
41 private IndexedXMLObjectChildrenList<XMLObject> unknownChildren;
42
43
44
45
46
47
48
49
50 public ReferenceParametersImpl(String namespaceURI, String elementLocalName, String namespacePrefix) {
51 super(namespaceURI, elementLocalName, namespacePrefix);
52 unknownAttributes = new AttributeMap(this);
53 unknownChildren = new IndexedXMLObjectChildrenList<XMLObject>(this);
54 }
55
56
57 public AttributeMap getUnknownAttributes() {
58 return unknownAttributes;
59 }
60
61
62 public List<XMLObject> getUnknownXMLObjects() {
63 return unknownChildren;
64 }
65
66
67 public List<XMLObject> getUnknownXMLObjects(QName typeOrName) {
68 return (List<XMLObject>) unknownChildren.subList(typeOrName);
69 }
70
71
72 public List<XMLObject> getOrderedChildren() {
73 ArrayList<XMLObject> children = new ArrayList<XMLObject>();
74
75 if (!getUnknownXMLObjects().isEmpty()) {
76 children.addAll(getUnknownXMLObjects());
77 }
78
79 return Collections.unmodifiableList(children);
80 }
81
82 }