private byte[] getGlyphIcon(Concept concept, String workspaceId) { byte[] glyphIcon = null; for (Concept con = concept; glyphIcon == null && con != null; con = ontologyRepository.getParentConcept(con, workspaceId)) { glyphIcon = con.hasGlyphIconResource() ? con.getGlyphIcon() : null; } return glyphIcon; } }
private Glyph getGlyph(Concept concept, boolean isSelected) { Glyph glyph = null; if (isSelected && concept.hasGlyphIconSelectedResource()) { byte[] resource = concept.getGlyphIconSelected(); if (resource != null) { glyph = new Image(resource); } else { glyph = new Path(concept.getGlyphIconSelectedFilePath()); } } else if (concept.hasGlyphIconResource()) { byte[] resource = concept.getGlyphIcon(); if (resource != null) { glyph = new Image(resource); } else { glyph = new Path(concept.getGlyphIconFilePath()); } } return glyph; }
private void addEntityGlyphIcon(Concept entityConcept, Authorizations authorizations) { if (entityConcept.getGlyphIcon() != null) { LOGGER.debug("entityConcept GlyphIcon already set. skipping addEntityGlyphIcon."); return; } LOGGER.debug("addEntityGlyphIcon"); InputStream entityGlyphIconInputStream = OntologyRepositoryBase.class.getResourceAsStream(RESOURCE_ENTITY_PNG); checkNotNull(entityGlyphIconInputStream, "Could not load resource " + RESOURCE_ENTITY_PNG); try { ByteArrayOutputStream imgOut = new ByteArrayOutputStream(); IOUtils.copy(entityGlyphIconInputStream, imgOut); byte[] rawImg = imgOut.toByteArray(); addEntityGlyphIconToEntityConcept(entityConcept, rawImg, authorizations); } catch (IOException e) { throw new VisalloException("invalid stream for glyph icon"); } }
private void validateChangedOwlConcepts() throws IOException { Concept contact = getOntologyRepository().getConceptByIRI(TEST_IRI + "#contact", PUBLIC); Concept person = getOntologyRepository().getConceptByIRI(TEST_IRI + "#person", PUBLIC); assertEquals("Person", person.getDisplayName()); List<String> intents = Arrays.asList(person.getIntents()); assertEquals(1, intents.size()); assertFalse(intents.contains("person")); assertFalse(intents.contains("face")); assertTrue(intents.contains("test")); assertNull(person.getTimeFormula()); assertEquals("prop('http://visallo.org/test#name') || ''", person.getTitleFormula()); assertNull(person.getGlyphIcon()); assertEquals("rgb(28, 137, 28)", person.getColor()); Set<Concept> conceptAndAllChildren = getOntologyRepository().getConceptAndAllChildren(contact, PUBLIC); List<String> iris = Lists.newArrayList(); conceptAndAllChildren.forEach(c -> iris.add(c.getIRI())); assertEquals(2, iris.size()); assertTrue(iris.contains(contact.getIRI())); assertTrue(iris.contains(person.getIRI())); }
private void validateTestOwlConcepts(int expectedIriSize) throws IOException { Concept contact = getOntologyRepository().getConceptByIRI(TEST_IRI + "#contact", PUBLIC); assertEquals("Contact", contact.getDisplayName()); assertEquals("rgb(149, 138, 218)", contact.getColor()); assertEquals("test", contact.getDisplayType()); List<String> intents = Arrays.asList(contact.getIntents()); assertEquals(1, intents.size()); assertTrue(intents.contains("face")); Concept person = getOntologyRepository().getConceptByIRI(TEST_IRI + "#person", PUBLIC); assertEquals("Person", person.getDisplayName()); intents = Arrays.asList(person.getIntents()); assertEquals(1, intents.size()); assertTrue(intents.contains("person")); assertEquals("prop('http://visallo.org/test#birthDate') || ''", person.getTimeFormula()); assertEquals("prop('http://visallo.org/test#name') || ''", person.getTitleFormula()); byte[] bytes = IOUtils.toByteArray(OntologyRepositoryTestBase.class.getResourceAsStream("glyphicons_003_user@2x.png")); assertArrayEquals(bytes, person.getGlyphIcon()); assertEquals("rgb(28, 137, 28)", person.getColor()); Set<Concept> conceptAndAllChildren = getOntologyRepository().getConceptAndAllChildren(contact, PUBLIC); List<String> iris = Lists.newArrayList(); conceptAndAllChildren.forEach(c -> iris.add(c.getIRI())); assertEquals(expectedIriSize, iris.size()); assertTrue(iris.contains(contact.getIRI())); assertTrue(iris.contains(person.getIRI())); }