1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.opensaml.ws.wsaddressing.impl;
18
19 import org.opensaml.ws.wsaddressing.Action;
20 import org.opensaml.ws.wsaddressing.ProblemAction;
21 import org.opensaml.ws.wsaddressing.SoapAction;
22 import org.opensaml.xml.XMLObject;
23 import org.opensaml.xml.io.UnmarshallingException;
24 import org.opensaml.xml.util.XMLHelper;
25 import org.w3c.dom.Attr;
26
27
28
29
30 public class ProblemActionUnmarshaller extends AbstractWSAddressingObjectUnmarshaller {
31
32
33 protected void processAttribute(XMLObject xmlObject, Attr attribute) throws UnmarshallingException {
34 ProblemAction pa = (ProblemAction) xmlObject;
35 XMLHelper.unmarshallToAttributeMap(pa.getUnknownAttributes(), attribute);
36 }
37
38
39 protected void processChildElement(XMLObject parentXMLObject, XMLObject childXMLObject)
40 throws UnmarshallingException {
41 ProblemAction pa = (ProblemAction) parentXMLObject;
42
43 if (childXMLObject instanceof Action) {
44 pa.setAction((Action) childXMLObject);
45 } else if (childXMLObject instanceof SoapAction) {
46 pa.setSoapAction((SoapAction) childXMLObject);
47 } else {
48 super.processChildElement(parentXMLObject, childXMLObject);
49 }
50 }
51
52 }