// Path: src/main/java/de/uni_stuttgart/vis/vowl/owl2vowl/Owl2Vowl.java
// public class Owl2Vowl {
// 	protected Converter converter;
// 
// 	public Owl2Vowl(OWLOntology ontology) {
// 		converter = new OntologyConverter(ontology);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(OWLOntology ontology, String ontologyIri) {
// 		converter = new OntologyConverter(ontology, ontologyIri);
// 	}
// 
// 	public Owl2Vowl(IRI ontologyIri) {
// 		converter = new IRIConverter(ontologyIri);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(IRI ontologyIri, Collection<IRI> dependencies) {
// 		converter = new IRIConverter(ontologyIri, dependencies);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(InputStream ontology) {
// 		converter = new InputStreamConverter(ontology);
// 		converter.clearLoadingMsg();
// 	}
// 	public Owl2Vowl(String ontologyAsString) {
// 		InputStream ontologyStream = new ByteArrayInputStream(ontologyAsString.getBytes());
// 		converter = new InputStreamConverter(ontologyStream);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(InputStream ontology, Collection<InputStream> dependencies) {
// 		converter = new InputStreamConverter(ontology, dependencies);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public String getLoadingMsg() {
// 		return converter.getLoadingInfoString();
// 	}
// 	public void appendLoadingIndicatorPoint() {
// 		if (converter.getCurrentlyLoadingFlag()) {
// 			converter.addLoadingInfoToParentLine(".");
// 		}
// 	}
// 
// 	
// 	/**
// 	 * Converts the ontology to the webvowl compatible format and returns the usable json as string.
// 	 *
// 	 * @return The webvowl compatible json format.
// 	 */
// 	public String getJsonAsString() {
// 		BackupExporter exporter = new BackupExporter();
// 
// 		try {
// 			converter.export(exporter);
// 		} catch (Exception e) {
// 			throw new IllegalStateException(e);
// 		}
// 
// 		return exporter.getConvertedJson();
// 	}
// 
// 	public void writeToFile(File file) {
// 		try {
// 			converter.export(new FileExporter(file));
// 		} catch (Exception e) {
// 			throw new IllegalStateException(e);
// 		}
// 
// 	}
// }
// 
// Path: src/main/java/de/uni_stuttgart/vis/vowl/owl2vowl/constants/LoggingConstants.java
// public class LoggingConstants {
//     public static final String CONVERSION_LOGGER = "conversion-logger";
// }


import de.uni_stuttgart.vis.vowl.owl2vowl.Owl2Vowl;
import de.uni_stuttgart.vis.vowl.owl2vowl.constants.LoggingConstants;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.commons.io.IOUtils;
import org.semanticweb.owlapi.model.IRI;
import org.semanticweb.owlapi.model.OWLOntologyCreationException;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
import java.net.URL;
import java.text.NumberFormat;
package de.uni_stuttgart.vis.vowl.owl2vowl.server;








@RestController
public class Owl2VowlController {

	private static final Logger logger = LogManager.getLogger(Owl2VowlController.class);

// Path: src/main/java/de/uni_stuttgart/vis/vowl/owl2vowl/Owl2Vowl.java
// public class Owl2Vowl {
// 	protected Converter converter;
// 
// 	public Owl2Vowl(OWLOntology ontology) {
// 		converter = new OntologyConverter(ontology);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(OWLOntology ontology, String ontologyIri) {
// 		converter = new OntologyConverter(ontology, ontologyIri);
// 	}
// 
// 	public Owl2Vowl(IRI ontologyIri) {
// 		converter = new IRIConverter(ontologyIri);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(IRI ontologyIri, Collection<IRI> dependencies) {
// 		converter = new IRIConverter(ontologyIri, dependencies);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(InputStream ontology) {
// 		converter = new InputStreamConverter(ontology);
// 		converter.clearLoadingMsg();
// 	}
// 	public Owl2Vowl(String ontologyAsString) {
// 		InputStream ontologyStream = new ByteArrayInputStream(ontologyAsString.getBytes());
// 		converter = new InputStreamConverter(ontologyStream);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public Owl2Vowl(InputStream ontology, Collection<InputStream> dependencies) {
// 		converter = new InputStreamConverter(ontology, dependencies);
// 		converter.clearLoadingMsg();
// 	}
// 
// 	public String getLoadingMsg() {
// 		return converter.getLoadingInfoString();
// 	}
// 	public void appendLoadingIndicatorPoint() {
// 		if (converter.getCurrentlyLoadingFlag()) {
// 			converter.addLoadingInfoToParentLine(".");
// 		}
// 	}
// 
// 	
// 	/**
// 	 * Converts the ontology to the webvowl compatible format and returns the usable json as string.
// 	 *
// 	 * @return The webvowl compatible json format.
// 	 */
// 	public String getJsonAsString() {
// 		BackupExporter exporter = new BackupExporter();
// 
// 		try {
// 			converter.export(exporter);
// 		} catch (Exception e) {
// 			throw new IllegalStateException(e);
// 		}
// 
// 		return exporter.getConvertedJson();
// 	}
// 
// 	public void writeToFile(File file) {
// 		try {
// 			converter.export(new FileExporter(file));
// 		} catch (Exception e) {
// 			throw new IllegalStateException(e);
// 		}
// 
// 	}
// }
// 
// Path: src/main/java/de/uni_stuttgart/vis/vowl/owl2vowl/constants/LoggingConstants.java
// public class LoggingConstants {
//     public static final String CONVERSION_LOGGER = "conversion-logger";
// }


// Path: src/main/java/de/uni_stuttgart/vis/vowl/owl2vowl/server/Owl2VowlController.java
import de.uni_stuttgart.vis.vowl.owl2vowl.Owl2Vowl;
import de.uni_stuttgart.vis.vowl.owl2vowl.constants.LoggingConstants;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.commons.io.IOUtils;
import org.semanticweb.owlapi.model.IRI;
import org.semanticweb.owlapi.model.OWLOntologyCreationException;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
import java.net.URL;
import java.text.NumberFormat;

package de.uni_stuttgart.vis.vowl.owl2vowl.server;








@RestController
public class Owl2VowlController {

	private static final Logger logger = LogManager.getLogger(Owl2VowlController.class);

	private static final Logger conversionLogger = LogManager.getLogger(LoggingConstants.CONVERSION_LOGGER);