package br.gov.frameworkdemoiselle.behave.internal.dataprovider.xml; import java.util.HashMap; import java.util.Map; import br.gov.frameworkdemoiselle.behave.dataprovider.DatasetLoader; import br.gov.frameworkdemoiselle.behave.dataprovider.XmlLoader; import br.gov.frameworkdemoiselle.behave.dataprovider.dto.DataItem; import br.gov.frameworkdemoiselle.behave.dataprovider.dto.DataRecord; import br.gov.frameworkdemoiselle.behave.dataprovider.dto.Dataset; import br.gov.frameworkdemoiselle.behave.internal.spi.InjectionManager; /** * * @author SERPRO * */ public class XmlDatasetLoader implements DatasetLoader { private static XmlLoader xmlLoader = (XmlLoader) InjectionManager.getInstance().getInstanceDependecy(XmlLoader.class); public Dataset load(String source) { return (Dataset) xmlLoader.importXmlResourceAsObject(source, getAliases(), getAttributes()); } @SuppressWarnings("rawtypes") private Map<String, Class> getAliases() { Map<String, Class> aliases = new HashMap<String, Class>(); aliases.put("DataSet", Dataset.class); aliases.put("DataItem", DataItem.class); aliases.put("DataRecord", DataRecord.class); return aliases; } @SuppressWarnings("rawtypes") private Map<String, Class> getAttributes() { Map<String, Class> attributes = new HashMap<String, Class>(); attributes.put("id", String.class); attributes.put("type", String.class); attributes.put("key", String.class); attributes.put("value", String.class); return attributes; } }