@Override public void importFile(File inFile, IRI documentIRI, Authorizations authorizations) throws Exception { if (!inFile.exists()) { throw new LumifyException("File " + inFile + " does not exist"); } File inDir = inFile.getParentFile(); FileInputStream inFileIn = new FileInputStream(inFile); try { importFile(inFileIn, documentIRI, inDir, authorizations); } finally { inFileIn.close(); } }
protected File findOwlFile(File dir) { File[] files = dir.listFiles(); if (files == null) { return null; } for (File child : files) { if (child.isDirectory()) { File found = findOwlFile(child); if (found != null) { return found; } } else if (child.getName().toLowerCase().endsWith(".owl")) { return child; } } return null; }
@Override public void writePackage(File file, IRI documentIRI, Authorizations authorizations) throws Exception { ZipFile zipped = new ZipFile(file); if (zipped.isValidZipFile()) { File tempDir = Files.createTempDir(); try { LOGGER.info("Extracting: %s to %s", file.getAbsoluteFile(), tempDir.getAbsolutePath()); zipped.extractAll(tempDir.getAbsolutePath()); File owlFile = findOwlFile(tempDir); importFile(owlFile, documentIRI, authorizations); } finally { FileUtils.deleteDirectory(tempDir); } } else { importFile(file, documentIRI, authorizations); } }
private void setIconProperty( Concept concept, File inDir, String glyphIconFileName, String propertyKey, Authorizations authorizations) throws IOException { if (glyphIconFileName != null) { File iconFile = new File(inDir, glyphIconFileName); if (!iconFile.exists()) { throw new RuntimeException("Could not find icon file: " + iconFile.toString()); } InputStream iconFileIn = new FileInputStream(iconFile); try { StreamingPropertyValue value = new StreamingPropertyValue(iconFileIn, byte[].class); value.searchIndex(false); value.store(true); concept.setProperty( propertyKey, value, OntologyRepository.VISIBILITY.getVisibility(), authorizations); } finally { iconFileIn.close(); } } }