![JAR search and dependency download from the Maven repository](/logo.png)
com.sysunite.coinsweb.runner.Describe Maven / Gradle / Ivy
The newest version!
package com.sysunite.coinsweb.runner;
import com.sysunite.coinsweb.cli.CliOptions;
import com.sysunite.coinsweb.connector.Connector;
import com.sysunite.coinsweb.connector.ConnectorException;
import com.sysunite.coinsweb.filemanager.ContainerFileImpl;
import com.sysunite.coinsweb.graphset.QueryFactory;
import com.sysunite.coinsweb.parser.config.factory.ConfigFactory;
import com.sysunite.coinsweb.parser.config.pojo.ConfigFile;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.nio.file.Path;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* @author bastbijl, Sysunite 2017
*/
public class Describe {
private static final Logger log = LoggerFactory.getLogger(Describe.class);
public static String run(List containers, boolean fullConfig, boolean useAbsolutePaths) {
if(containers.isEmpty()) {
throw new RuntimeException("No container file found");
}
Path localizeTo = null;
if(!useAbsolutePaths) {
localizeTo = CliOptions.resolvePath("");
}
ConfigFile configFile = ConfigFactory.getDefaultConfig(containers, localizeTo);
String yml;
if(fullConfig) {
yml = ConfigFactory.toYml(configFile);
} else {
yml = ConfigFactory.toYml(configFile.getRun().getContainers());
}
return yml;
}
public static String run(Connector connector) throws ConnectorException {
Map, Set> map = connector.listSigmaGraphsWithIncludes();
String sigmaYml = ConfigFactory.toYml(map);
String imports = "";
for(Set contexts : map.keySet()) {
for(String context : contexts) {
for(String inclusion : map.get(context)) {
if(inclusion.startsWith(QueryFactory.VALIDATOR_HOST)) {
imports += inclusion + " owl:imports\n";
Map importsMap = connector.getImports(inclusion);
for(String importContext : importsMap.keySet()) {
imports += "- "+importContext + " ("+importsMap.get(importContext)+")\n";
}
}
}
}
}
List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy