1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package edu.internet2.middleware.shibboleth.wayf.idpdisco;
18
19 import org.opensaml.common.impl.AbstractSAMLObjectMarshaller;
20 import org.opensaml.common.xml.SAMLConstants;
21 import org.opensaml.xml.LangBearing;
22 import org.opensaml.xml.XMLObject;
23 import org.opensaml.xml.io.MarshallingException;
24 import org.opensaml.xml.util.XMLHelper;
25 import org.w3c.dom.Attr;
26 import org.w3c.dom.Element;
27
28
29
30
31 public class LogoMarshaller extends AbstractSAMLObjectMarshaller {
32
33
34
35
36 protected void marshallAttributes(XMLObject samlObject, Element domElement) throws MarshallingException {
37 Logo logo = (Logo) samlObject;
38
39 if (logo.getXMLLang() != null) {
40 Attr attribute = XMLHelper.constructAttribute(domElement.getOwnerDocument(), SAMLConstants.XML_NS,
41 LangBearing.XML_LANG_ATTR_LOCAL_NAME, SAMLConstants.XML_PREFIX);
42 attribute.setValue(logo.getXMLLang());
43 domElement.setAttributeNodeNS(attribute);
44 }
45 if (logo.getHeight() != null) {
46 domElement.setAttributeNS(null, Logo.HEIGHT_ATTR_NAME, logo.getHeight().toString());
47 }
48 if (logo.getWidth() != null) {
49 domElement.setAttributeNS(null, Logo.WIDTH_ATTR_NAME, logo.getWidth().toString());
50 }
51 }
52
53
54 protected void marshallElementContent(XMLObject samlObject, Element domElement) throws MarshallingException {
55 Logo logo = (Logo) samlObject;
56
57 if (logo.getURL() != null) {
58 XMLHelper.appendTextContent(domElement, logo.getURL().getLocalString());
59 }
60 }
61 }