1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.opensaml.saml2.metadata.impl;
18
19 import org.opensaml.saml2.metadata.ArtifactResolutionService;
20 import org.opensaml.saml2.metadata.ManageNameIDService;
21 import org.opensaml.saml2.metadata.NameIDFormat;
22 import org.opensaml.saml2.metadata.SSODescriptor;
23 import org.opensaml.saml2.metadata.SingleLogoutService;
24 import org.opensaml.xml.XMLObject;
25 import org.opensaml.xml.io.UnmarshallingException;
26
27
28
29
30 public abstract class SSODescriptorUnmarshaller extends RoleDescriptorUnmarshaller {
31
32
33 protected void processChildElement(XMLObject parentElement, XMLObject childElement) throws UnmarshallingException {
34 SSODescriptor descriptor = (SSODescriptor) parentElement;
35 if (childElement instanceof ArtifactResolutionService) {
36 descriptor.getArtifactResolutionServices().add((ArtifactResolutionService) childElement);
37 } else if (childElement instanceof SingleLogoutService) {
38 descriptor.getSingleLogoutServices().add((SingleLogoutService) childElement);
39 } else if (childElement instanceof ManageNameIDService) {
40 descriptor.getManageNameIDServices().add((ManageNameIDService) childElement);
41 } else if (childElement instanceof NameIDFormat) {
42 descriptor.getNameIDFormats().add((NameIDFormat) childElement);
43 } else {
44 super.processChildElement(parentElement, childElement);
45 }
46 }
47 }