// Path: src/main/java/eu/freme/common/persistence/model/DatasetMetadata.java
// @Entity
// public class DatasetMetadata extends OwnedResource{
// 
//     public DatasetMetadata(){super(null);}
// 
//     public DatasetMetadata(String name){
//         super();
//         this.name = name;
//         totalEntities = 0;
//     }
// 
//     @JsonIgnore
//     public String getIdentifier(){
//         return getName();
//     }
// 
//     public static String getIdentifierName(){return "name";}
// 
//     private String name;
// 
//     private long totalEntities;
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public long getTotalEntities() {
//         return totalEntities;
//     }
// 
//     public void setTotalEntities(long totalEntities) {
//         this.totalEntities = totalEntities;
//     }
// 
// }
// 
// Path: src/main/java/org/elinker/core/api/java/Config.java
// @Component
// public class Config {
//     //@Autowired
//     //private DatasetMetadataDAO datasetMetadataDAO;
//     
// //	@Autowired
// //    private DatasetMetadataDAO datasetMetadataDAO;
// //>>>>>>> refs/remotes/origin/configuration-optional-#108
//     
//     @Value("${freme.ner.sparqlEndpoint:}")
//     String sparqlEndpoint = "";
//     
//     @Value("${freme.ner.solrURI:}")
//     String solrURI = "";
//     
//     @Value("${freme.ner.languages}")
//     String languages = "";
//     
//     @Value("${freme.ner.modelsLocation}")
//     String modelsLocation = "";
//     
//     @Value("${freme.ner.domainsFile:}")
//     String domainsFile = "";
// 
//     private boolean sparqlEndointEnabled;
//     private boolean solrURIEnabled;
//     private boolean domainsFileEnabled;
// 
//     public void setSparqlEndpoint(String sparqlEndpoint) { this.sparqlEndpoint = sparqlEndpoint; }
// 
//     public void setSolrURI(String solrURI) {
//         this.solrURI = solrURI;
//     }
// 
//     public void setLanguages(String languages) {
//         this.languages = languages;
//     }
// 
//     public void setModelsLocation(String modelsLocation) {
//         this.modelsLocation = modelsLocation;
//     }
// 
//     public void setDomainsFile(String domainsFile) {
//         this.domainsFile = domainsFile;
//     }
// 
//     private org.elinker.core.api.scala.Config scalaConfig = null;
// 
//     public org.elinker.core.api.scala.Config getScalaConfig() {
//         return scalaConfig;
//     }
// 
//     @PostConstruct
//     public void init(){
//         String[] languages = this.languages.split(",");
//         this.scalaConfig = new org.elinker.core.api.scala.Config(
//                 languages,
//                 modelsLocation,
//                 sparqlEndpoint,
//                 solrURI,
//                 domainsFile
//         );
//         
//         if(!this.sparqlEndpoint.isEmpty()){
//         	this.sparqlEndointEnabled = true;
//         }
//         if(!this.solrURI.isEmpty()){
//         	this.solrURIEnabled = true;
//         }
//         if(!this.domainsFile.isEmpty()){
//         	this.domainsFileEnabled = true;
//         }
//     }
// 
// 	public boolean isSparqlEndointEnabled() {
// 		return sparqlEndointEnabled;
// 	}
// 
// 	public boolean isSolrURIEnabled() {
// 		return solrURIEnabled;
// 	}
// 
// 	public boolean isDomainsFileEnabled() {
// 		return domainsFileEnabled;
// 	}
// 
// }


import com.google.common.base.Strings;
import eu.freme.common.conversion.rdf.JenaRDFConversionService;
import eu.freme.common.conversion.rdf.RDFConstants;
import eu.freme.common.exception.BadRequestException;
import eu.freme.common.rest.OwnedResourceManagingController;
import eu.freme.common.persistence.model.DatasetMetadata;
import eu.freme.common.rest.RestHelper;
import org.apache.commons.collections.MapUtils;
import org.apache.log4j.Logger;
import org.elinker.core.api.java.Config;
import org.elinker.core.api.scala.FremeNer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.PostConstruct;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import static eu.freme.common.conversion.rdf.RDFConstants.SERIALIZATION_FORMATS;
package org.elinker.core.rest;






/**
 * Created by Arne Binder (arne.b.binder@gmail.com) on 08.04.2016.
 */
@RestController
@RequestMapping("/e-entity/freme-ner/datasets")
// Path: src/main/java/eu/freme/common/persistence/model/DatasetMetadata.java
// @Entity
// public class DatasetMetadata extends OwnedResource{
// 
//     public DatasetMetadata(){super(null);}
// 
//     public DatasetMetadata(String name){
//         super();
//         this.name = name;
//         totalEntities = 0;
//     }
// 
//     @JsonIgnore
//     public String getIdentifier(){
//         return getName();
//     }
// 
//     public static String getIdentifierName(){return "name";}
// 
//     private String name;
// 
//     private long totalEntities;
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public long getTotalEntities() {
//         return totalEntities;
//     }
// 
//     public void setTotalEntities(long totalEntities) {
//         this.totalEntities = totalEntities;
//     }
// 
// }
// 
// Path: src/main/java/org/elinker/core/api/java/Config.java
// @Component
// public class Config {
//     //@Autowired
//     //private DatasetMetadataDAO datasetMetadataDAO;
//     
// //	@Autowired
// //    private DatasetMetadataDAO datasetMetadataDAO;
// //>>>>>>> refs/remotes/origin/configuration-optional-#108
//     
//     @Value("${freme.ner.sparqlEndpoint:}")
//     String sparqlEndpoint = "";
//     
//     @Value("${freme.ner.solrURI:}")
//     String solrURI = "";
//     
//     @Value("${freme.ner.languages}")
//     String languages = "";
//     
//     @Value("${freme.ner.modelsLocation}")
//     String modelsLocation = "";
//     
//     @Value("${freme.ner.domainsFile:}")
//     String domainsFile = "";
// 
//     private boolean sparqlEndointEnabled;
//     private boolean solrURIEnabled;
//     private boolean domainsFileEnabled;
// 
//     public void setSparqlEndpoint(String sparqlEndpoint) { this.sparqlEndpoint = sparqlEndpoint; }
// 
//     public void setSolrURI(String solrURI) {
//         this.solrURI = solrURI;
//     }
// 
//     public void setLanguages(String languages) {
//         this.languages = languages;
//     }
// 
//     public void setModelsLocation(String modelsLocation) {
//         this.modelsLocation = modelsLocation;
//     }
// 
//     public void setDomainsFile(String domainsFile) {
//         this.domainsFile = domainsFile;
//     }
// 
//     private org.elinker.core.api.scala.Config scalaConfig = null;
// 
//     public org.elinker.core.api.scala.Config getScalaConfig() {
//         return scalaConfig;
//     }
// 
//     @PostConstruct
//     public void init(){
//         String[] languages = this.languages.split(",");
//         this.scalaConfig = new org.elinker.core.api.scala.Config(
//                 languages,
//                 modelsLocation,
//                 sparqlEndpoint,
//                 solrURI,
//                 domainsFile
//         );
//         
//         if(!this.sparqlEndpoint.isEmpty()){
//         	this.sparqlEndointEnabled = true;
//         }
//         if(!this.solrURI.isEmpty()){
//         	this.solrURIEnabled = true;
//         }
//         if(!this.domainsFile.isEmpty()){
//         	this.domainsFileEnabled = true;
//         }
//     }
// 
// 	public boolean isSparqlEndointEnabled() {
// 		return sparqlEndointEnabled;
// 	}
// 
// 	public boolean isSolrURIEnabled() {
// 		return solrURIEnabled;
// 	}
// 
// 	public boolean isDomainsFileEnabled() {
// 		return domainsFileEnabled;
// 	}
// 
// }


// Path: src/main/java/org/elinker/core/rest/FremeNerManageDatasets.java
import com.google.common.base.Strings;
import eu.freme.common.conversion.rdf.JenaRDFConversionService;
import eu.freme.common.conversion.rdf.RDFConstants;
import eu.freme.common.exception.BadRequestException;
import eu.freme.common.rest.OwnedResourceManagingController;
import eu.freme.common.persistence.model.DatasetMetadata;
import eu.freme.common.rest.RestHelper;
import org.apache.commons.collections.MapUtils;
import org.apache.log4j.Logger;
import org.elinker.core.api.java.Config;
import org.elinker.core.api.scala.FremeNer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.PostConstruct;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import static eu.freme.common.conversion.rdf.RDFConstants.SERIALIZATION_FORMATS;

package org.elinker.core.rest;






/**
 * Created by Arne Binder (arne.b.binder@gmail.com) on 08.04.2016.
 */
@RestController
@RequestMapping("/e-entity/freme-ner/datasets")
public class FremeNerManageDatasets extends OwnedResourceManagingController<DatasetMetadata>{