+ public Collection<PropertyChange> getSelected() {
+ HashSet<PropertyChange> selected = new HashSet<>();
+ for (PropertyChange c : selected) {
+ if (c.selected())
+ selected.add(c);
+ }
+ return selected;
+ }
+
+ public void clearSelected() {
+ for (PropertyChange c : changes)
+ c.select(false);
+ }
+
+ public PropertyChange getChange(ReadGraph g, Statement s) throws DatabaseException {
+ for (PropertyChange c : changes) {
+ if (s.equals(c.pair.first))
+ return c;
+ if (s.equals(c.pair.second))
+ return c;
+ }
+ return null;
+ }
+
+ public Collection<PropertyChange> getChanges(ReadGraph g, Resource r) throws DatabaseException{
+ List<PropertyChange> list = new ArrayList<>();
+ for (PropertyChange pair : changes) {
+ if (pair.getFirst() != null) {
+ if (pair.getFirst().getSubject().equals(r)) {
+ list.add(pair);
+ continue;
+ }
+ if (pair.getFirst().getObject().equals(r)) {
+ list.add(pair);
+ continue;
+ }
+ }
+ if (pair.getSecond() != null) {
+ if (pair.getSecond().getSubject().equals(r)) {
+ list.add(pair);
+ continue;
+ }
+ if (pair.getSecond().getObject().equals(r)) {
+ list.add(pair);
+ continue;
+ }
+ }
+ }
+ return list;