/** * Updates the classifications. * * @param artifact * @throws Exception */ private void updateClassifications(BaseArtifactType artifact) throws Exception { Collection<URI> classifiers = classificationHelper.resolveAll(artifact.getClassifiedBy()); Collection<URI> normalizedClassifiers = classificationHelper.normalizeAll(classifiers); for (URI classifier : classifiers) { artificerArtifact.getClassifiers().add(classifier.toString()); } for (URI normalizedClassifier : normalizedClassifiers) { artificerArtifact.getNormalizedClassifiers().add(normalizedClassifier.toString()); } }
@Override public void complete(CompleterInvocation completerInvocation) { ClassificationCommand command = (ClassificationCommand) completerInvocation.getCommand(); String currentValue = completerInvocation.getGivenCompleteValue(); if (CollectionUtils.isEmpty(command.arguments)) { for (String subcmd : subcommands) { if (StringUtils.isBlank(currentValue) || subcmd.startsWith(currentValue)) { completerInvocation.addCompleterValue(subcmd); } } } else if (command.arguments.size() == 1 && command.arguments.contains("remove")) { ArtificerContext artificerContext = (ArtificerContext) completerInvocation.getAeshContext(); BaseArtifactType artifact = artificerContext.getCurrentArtifact(); if (artifact != null) { Set<String> classifications = new TreeSet<String>(); classifications.addAll(artifact.getClassifiedBy()); for (String classification : classifications) { if (StringUtils.isBlank(currentValue) || classification.startsWith(currentValue)) { completerInvocation.addCompleterValue(classification); } } } } } }
/** * Updates the classifications. * * @param artifact * @throws Exception */ private void updateClassifications(BaseArtifactType artifact) throws Exception { Collection<URI> classifications = this.classificationHelper.resolveAll(artifact.getClassifiedBy()); Collection<URI> normalizedClassifications = this.classificationHelper.normalizeAll(classifications); // Store the classifications String [] values = new String[classifications.size()]; int idx = 0; for (URI classification : classifications) { values[idx++] = classification.toString(); } setProperty("sramp:classifiedBy", values); //$NON-NLS-1$ // Store the normalized classifications values = new String[normalizedClassifications.size()]; idx = 0; for (URI classification : normalizedClassifications) { values[idx++] = classification.toString(); } setProperty("sramp:normalizedClassifiedBy", values); //$NON-NLS-1$ }
artifact.getClassifiedBy().add(classificationArg); commandInvocation.getShell().out().println(Messages.i18n.format("Classification.ClassificationAdded", classificationArg)); } else if ("remove".equals(subcmdArg)) { if (artifact.getClassifiedBy().remove(classificationArg)) { commandInvocation.getShell().out().println(Messages.i18n.format("Classification.ClassificationRemoved", classificationArg)); } else { if (!artifact.getClassifiedBy().isEmpty()) { artifact.getClassifiedBy().clear(); commandInvocation.getShell().out().println(Messages.i18n.format("Classification.AllRemoved")); } else {
for (Value value : values) { String classification = value.getString(); artifact.getClassifiedBy().add(classification);
@Test public void testPersistClassifications() throws Exception { SrampOntology ontology = createOntology(); String artifactFileName = "s-ramp-press-release.pdf"; //$NON-NLS-1$ InputStream contentStream = this.getClass().getResourceAsStream("/sample-files/core/" + artifactFileName); //$NON-NLS-1$ Document document = new Document(); document.setName(artifactFileName); document.setArtifactType(BaseArtifactEnum.DOCUMENT); document.getClassifiedBy().add(ontology.findClass("China").getUri().toString()); //$NON-NLS-1$ BaseArtifactType artifact = persistenceManager.persistArtifact(document, contentStream); Assert.assertNotNull(artifact); if (log.isDebugEnabled()) { persistenceManager.printArtifactGraph(artifact.getUuid(), ArtifactType.Document()); } artifact = persistenceManager.getArtifact(artifact.getUuid(), ArtifactType.Document()); Assert.assertNotNull(artifact.getClassifiedBy()); Assert.assertEquals(1, artifact.getClassifiedBy().size()); Assert.assertEquals("urn:example.org/test2#China", artifact.getClassifiedBy().get(0)); //$NON-NLS-1$ }
commandInvocation.getShell().out().println(artifact.getDescription()); if (artifact.getClassifiedBy().size() > 0) { commandInvocation.getShell().out().println(Messages.i18n.format("PrintArtifact.ClassifiersHeading")); for (String classification : artifact.getClassifiedBy()) { printProperty(Messages.i18n.format("PrintArtifact.ClassifiedBy"), classification);
srampArtifact.getClassifiedBy().add(uri);