package eu.eudat.models.dmp; import eu.eudat.utilities.XmlSerializable; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import java.util.LinkedList; import java.util.List; /** * Created by ikalyvas on 12/20/2017. */ public class AssociatedProfiles implements XmlSerializable{ List associatedProfiles; public List getAssociatedProfiles() { return associatedProfiles; } public void setAssociatedProfiles(List associatedProfiles) { this.associatedProfiles = associatedProfiles; } @Override public Element toXml(Document doc) { Element associatedProfilesElement = doc.createElement("profiles"); for(AssociatedProfile associatedProfile:associatedProfiles){ associatedProfilesElement.appendChild(associatedProfile.toXml(doc)); } return associatedProfilesElement; } @Override public AssociatedProfiles fromXml(Element item) { this.associatedProfiles = new LinkedList<>(); if(item!=null){ NodeList associatedProfilesElement = item.getChildNodes(); for (int temp = 0; temp < associatedProfilesElement.getLength(); temp++) { Node associatedProfileElement = associatedProfilesElement.item(temp); if (associatedProfileElement.getNodeType() == Node.ELEMENT_NODE) { this.associatedProfiles.add(new AssociatedProfile().fromXml((Element)associatedProfileElement)); } } } return this; } }