package org.jboss.resteasy.test.providers.jaxb.resource; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; import java.util.ArrayList; import java.util.List; @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "parentType") public class JaxbCacheParent { private String name; @XmlElementWrapper(name = "children") @XmlElement(name = "child") private List<JaxbCacheChild> children = new ArrayList<JaxbCacheChild>(); public JaxbCacheParent() { } public JaxbCacheParent(final String name) { this.name = name; } /** * Get the name. * * @return the name. */ public String getName() { return name; } /** * Set the name. * * @param name The name to set. */ public void setName(String name) { this.name = name; } /** * Get the children. * * @return the children. */ public List<JaxbCacheChild> getChildren() { return children; } /** * Set the children. * * @param children The children to set. */ public void setChildren(List<JaxbCacheChild> children) { this.children = children; } public void addChild(JaxbCacheChild child) { child.setParent(this); this.children.add(child); } public static JaxbCacheParent createTestParent(String name) { JaxbCacheParent parent = new JaxbCacheParent(name); parent.addChild(new JaxbCacheChild("JaxbCacheChild 1")); parent.addChild(new JaxbCacheChild("JaxbCacheChild 2")); parent.addChild(new JaxbCacheChild("JaxbCacheChild 3")); return parent; } }