/** * Applies a list ontology changes to a collection of ontologies. Note that * the ontologies need to be managed by this manager, since import closures, * ontology ids and configurations might be affected by the changes, and * they are held by the manager. * * @param changes The changes to be applied. * @return ChangeApplied.SUCCESSFULLY if the axiom is added, ChangeApplied.UNSUCCESSFULLY * otherwise. * @throws OWLOntologyChangeException If one or more of the changes could not be applied. */ default ChangeApplied applyChanges(List<? extends OWLOntologyChange> changes) { return applyChangesAndGetDetails(changes).getChangeEffect(); }
@Override public ChangeDetails applyChangesAndGetDetails(List<? extends OWLOntologyChange> changes) { List<OWLOntologyChange> enactedChanges = new ArrayList<>(); ChangeApplied appliedChanges = SUCCESSFULLY; OWLOntologyChangeFilter changeFilter = new OWLOntologyChangeFilter(); for (OWLOntologyChange change : changes) { ChangeApplied result = change.accept(changeFilter); if (result == SUCCESSFULLY) { enactedChanges.add(change); } if (appliedChanges == SUCCESSFULLY) { // overwrite only if appliedChanges is still successful. If one // change has been unsuccessful, we want to preserve that // information appliedChanges = result; } } return new ChangeDetails(appliedChanges, enactedChanges); }
@Override public ChangeDetails applyChangesAndGetDetails(List<? extends OWLOntologyChange> changes) { List<OWLOntologyChange> enactedChanges = new ArrayList<>(); ChangeApplied appliedChanges = SUCCESSFULLY; OWLOntologyChangeFilter changeFilter = new OWLOntologyChangeFilter(); for (OWLOntologyChange change : changes) { ChangeApplied result = change.accept(changeFilter); if (result == SUCCESSFULLY) { enactedChanges.add(change); } if (appliedChanges == SUCCESSFULLY) { // overwrite only if appliedChanges is still successful. If one // change has been unsuccessful, we want to preserve that // information appliedChanges = result; } } return new ChangeDetails(appliedChanges, enactedChanges); }
@Override public ChangeDetails applyChangesAndGetDetails(List<? extends OWLOntologyChange> changes) { List<OWLOntologyChange> enactedChanges = new ArrayList<>(); ChangeApplied appliedChanges = SUCCESSFULLY; OWLOntologyChangeFilter changeFilter = new OWLOntologyChangeFilter(); for (OWLOntologyChange change : changes) { ChangeApplied result = change.accept(changeFilter); if (result == SUCCESSFULLY) { enactedChanges.add(change); } if (appliedChanges == SUCCESSFULLY) { // overwrite only if appliedChanges is still successful. If one // change has been unsuccessful, we want to preserve that // information appliedChanges = result; } } return new ChangeDetails(appliedChanges, enactedChanges); }
/** * Applies a list ontology changes to a collection of ontologies. Note that * the ontologies need to be managed by this manager, since import closures, * ontology ids and configurations might be affected by the changes, and * they are held by the manager. * * @param changes The changes to be applied. * @return ChangeApplied.SUCCESSFULLY if the axiom is added, ChangeApplied.UNSUCCESSFULLY * otherwise. * @throws OWLOntologyChangeException If one or more of the changes could not be applied. */ default ChangeApplied applyChanges(List<? extends OWLOntologyChange> changes) { return applyChangesAndGetDetails(changes).getChangeEffect(); }
@Override public ChangeDetails applyChangesAndGetDetails(List<? extends OWLOntologyChange> changes) { List<OWLOntologyChange> enactedChanges = new ArrayList<>(); ChangeApplied appliedChanges = SUCCESSFULLY; OWLOntologyChangeFilter changeFilter = new OWLOntologyChangeFilter(); for (OWLOntologyChange change : changes) { ChangeApplied result = change.accept(changeFilter); if (result == SUCCESSFULLY) { enactedChanges.add(change); } if (appliedChanges == SUCCESSFULLY) { // overwrite only if appliedChanges is still successful. If one // change has been unsuccessful, we want to preserve that // information appliedChanges = result; } } return new ChangeDetails(appliedChanges, enactedChanges); }
/** * Applies a list ontology changes to a collection of ontologies. Note that * the ontologies need to be managed by this manager, since import closures, * ontology ids and configurations might be affected by the changes, and * they are held by the manager. * * @param changes The changes to be applied. * @return ChangeApplied.SUCCESSFULLY if the axiom is added, ChangeApplied.UNSUCCESSFULLY * otherwise. * @throws OWLOntologyChangeException If one or more of the changes could not be applied. */ default ChangeApplied applyChanges(List<? extends OWLOntologyChange> changes) { return applyChangesAndGetDetails(changes).getChangeEffect(); }
broadcastChanges(appliedChanges); if (rollbackRequested.get()) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, appliedChanges); return new ChangeDetails(ChangeApplied.NO_OPERATION, appliedChanges); return new ChangeDetails(ChangeApplied.SUCCESSFULLY, appliedChanges); } catch (OWLOntologyChangeVetoException e) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, Collections.emptyList()); } finally { writeLock.unlock();
broadcastChanges(appliedChanges); if (rollbackRequested.get()) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, appliedChanges); return new ChangeDetails(ChangeApplied.NO_OPERATION, appliedChanges); return new ChangeDetails(ChangeApplied.SUCCESSFULLY, appliedChanges); } catch (OWLOntologyChangeVetoException e) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, Collections.emptyList()); } finally { writeLock.unlock();
broadcastChanges(appliedChanges); if (rollbackRequested.get()) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, appliedChanges); return new ChangeDetails(ChangeApplied.NO_OPERATION, appliedChanges); return new ChangeDetails(ChangeApplied.SUCCESSFULLY, appliedChanges); } catch (OWLOntologyChangeVetoException e) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, Collections.emptyList()); } finally { writeLock.unlock();
broadcastChanges(appliedChanges); if (rollbackRequested.get()) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, appliedChanges); return new ChangeDetails(ChangeApplied.NO_OPERATION, appliedChanges); return new ChangeDetails(ChangeApplied.SUCCESSFULLY, appliedChanges); } catch (OWLOntologyChangeVetoException e) { return new ChangeDetails(ChangeApplied.UNSUCCESSFULLY, Collections.emptyList()); } finally { writeLock.unlock();