package org.celstec.ariadne.app;
import java.util.Iterator;
import java.util.Vector;
import nu.xom.Element;
import org.purl.sword.base.Collection;
public class SpiCollection extends Collection {
private boolean publishMetadataAvailable = false;
private boolean publishMetadata;
private Vector<String> schema = new Vector<String>();
public void setPublishMetadata(boolean publishMetadata) {
this.publishMetadataAvailable = true;
this.publishMetadata = publishMetadata;
// org.purl.sword.server.ServiceDocumentServlet
}
public Element marshall() {
Element collection = super.marshall();
collection.addNamespaceDeclaration("spi","http://www.cenorm.be/xsd/SPI");
if (publishMetadataAvailable) {
Element publishMdNode = new Element("publishMetadata","http://www.cenorm.be/xsd/SPI");
publishMdNode.appendChild("" + publishMetadata);
collection.appendChild(publishMdNode);
}
if (schema.size()!=0) {
Iterator<String> it = schema.iterator();
while (it.hasNext()){
Element schemaNode = new Element("metadataSchema","http://www.cenorm.be/xsd/SPI");
schemaNode.appendChild(it.next());
collection.appendChild(schemaNode);
}
}
return collection;
}
public void addMetadataschema(String schema) {
this.schema.add(schema);
}
}