1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.opensaml.xacml.policy.impl;
19
20 import org.opensaml.xacml.policy.AttributeDesignatorType;
21 import org.opensaml.xacml.policy.AttributeSelectorType;
22 import org.opensaml.xml.XMLObject;
23 import org.opensaml.xml.io.AbstractXMLObjectMarshaller;
24 import org.opensaml.xml.io.MarshallingException;
25 import org.opensaml.xml.util.DatatypeHelper;
26 import org.w3c.dom.Element;
27
28
29
30
31 public class AttributeSelectorTypeMarshaller extends AbstractXMLObjectMarshaller {
32
33
34 public AttributeSelectorTypeMarshaller() {
35 super();
36 }
37
38
39 protected void marshallAttributes(XMLObject xmlObject, Element domElement) throws MarshallingException {
40 AttributeSelectorType attributeSelectorType = (AttributeSelectorType) xmlObject;
41
42 if(!DatatypeHelper.isEmpty(attributeSelectorType.getDataType())){
43 domElement.setAttribute(AttributeSelectorType.DATA_TYPE_ATTRIB_NAME,
44 attributeSelectorType.getDataType());
45 }
46 if(!DatatypeHelper.isEmpty(attributeSelectorType.getRequestContextPath())){
47 domElement.setAttribute(AttributeSelectorType.REQUEST_CONTEXT_PATH_ATTRIB_NAME,
48 attributeSelectorType.getRequestContextPath());
49 }
50 if(attributeSelectorType.getMustBePresentXSBoolean() != null){
51 domElement.setAttribute(AttributeDesignatorType.MUST_BE_PRESENT_ATTRIB_NAME,
52 Boolean.toString(attributeSelectorType.getMustBePresentXSBoolean().getValue()));
53 }
54 if(!attributeSelectorType.getMustBePresent()){
55 domElement.setAttribute(AttributeDesignatorType.MUST_BE_PRESENT_ATTRIB_NAME,
56 Boolean.toString(attributeSelectorType.getMustBePresent()));
57 }
58 }
59
60
61 protected void marshallElementContent(XMLObject xmlObject, Element domElement) throws MarshallingException {
62
63 }
64
65 }