diff --git a/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollection.java b/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollection.java index 43b3598ee998f5a8d4e55ce8e7120677a076c701..f3bde1cd0dd9273719c0ef09a7792ad98aa2295e 100644 --- a/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollection.java +++ b/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollection.java @@ -5,15 +5,31 @@ */ package it.inaf.oats.vospace.datamodel.collections; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlRootElement; + /** * * @author Nicola Fulvio Calabria <nicola.calabria at inaf.it> */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlRootElement(name = "node-collection") public class NodeCollection { + @XmlAttribute(name = "id", required = true) private Long id; + + @XmlAttribute(name = "title", required = true) private String title; + + @XmlAttribute(name = "owner-id", required = true) private String ownerId; + + public NodeCollection() { + // no op + } public NodeCollection(Long id, String title, String ownerId) { this.id = id; diff --git a/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollectionsList.java b/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollectionsWrapper.java similarity index 58% rename from src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollectionsList.java rename to src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollectionsWrapper.java index 09a9d221101af9b1b7073d69a8f9691d5dd6cedf..6f2b5d0314af320b814d29cf529cb50298f45853 100644 --- a/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollectionsList.java +++ b/src/main/java/it/inaf/oats/vospace/datamodel/collections/NodeCollectionsWrapper.java @@ -7,17 +7,26 @@ package it.inaf.oats.vospace.datamodel.collections; import java.util.ArrayList; import java.util.List; +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; /** * Wrapper class for REST GET * * @author Nicola Fulvio Calabria <nicola.calabria at inaf.it> */ -public class NodeCollectionsList { +@XmlAccessorType(XmlAccessType.FIELD) +@XmlRootElement(name = "node-collections-wrapper") +public class NodeCollectionsWrapper { + @XmlElementWrapper(name = "node-collections-list", required = true) + @XmlElement(name = "node-collection") private List<NodeCollection> nodeCollections; - public NodeCollectionsList() { + public NodeCollectionsWrapper() { this.nodeCollections = new ArrayList<>(); }