package eu.dnetlib.enabling.datastructures;

import java.io.IOException;
import java.util.Map;

import javax.xml.bind.annotation.XmlRootElement;

import org.dom4j.Document;
import org.dom4j.DocumentException;

import com.google.common.collect.Maps;

import eu.dnetlib.enabling.annotations.DnetResource;
import eu.dnetlib.rmi.objects.is.DnetResourceFormat;
import eu.dnetlib.rmi.objects.is.DnetResourceKind;

@XmlRootElement
@DnetResource(type = "MetadataFormat", kind = DnetResourceKind.CONFIGURATION, format = DnetResourceFormat.XML)
public class MetadataFormat extends AbstractXmlResource {

	public MetadataFormat(final String xml) throws IOException, DocumentException {
		super(xml);
	}

	@Override
	protected String getName(final Document doc) {
		return doc.valueOf("/format/@name");
	}

	@Override
	protected String getCode(final Document doc) {
		return doc.valueOf("/format/@name");
	}

	@Override
	protected Map<String, String> getProperties(final Document doc) {
		return Maps.newHashMap();
	}

}
