Merge "Default property editing restores assertions"
authorTuukka Lehtonen <tuukka.lehtonen@semantum.fi>
Fri, 16 Jun 2017 07:09:47 +0000 (10:09 +0300)
committerGerrit Code Review <gerrit2@www.simantics.org>
Fri, 16 Jun 2017 07:09:47 +0000 (10:09 +0300)
1  2 
bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/util/Layer0Utils.java

index 198ee41b77e060ad4cdf205e46a10038cbaa494b,103c9bb0129259bd5dd0c2000410a95fc147bc53..5ccfcf325f49df3f919f6ee54f34b3d0f2033960
@@@ -1383,8 -1383,21 +1383,22 @@@ public class Layer0Utils 
          TransferableGraphSource source = makeTGSource(graph, resource);
          TransferableGraph1 tg = TransferableGraphs.create(graph, source);
          GraphRefactoringUtils.fixOntologyExport(tg);
 -        return PrettyPrintTG.print(tg);
 +        System.out.println("Printing resoure " + graph.getURI(resource));
 +        return PrettyPrintTG.print(tg, ignoreIdentifiers);
      }
  
+     public static Resource getPossibleAssertedObject(ReadGraph graph, Resource resource, Resource predicate) throws DatabaseException {
+       Resource result = null;
+       for(Resource type : graph.getPrincipalTypes(resource)) {
+               Collection<Resource> rs = graph.getAssertedObjects(type, predicate);
+               if(rs.size() > 1) return null;
+               if(rs.size() == 1) {
+                       Resource ass = rs.iterator().next();
+                       if (result != null && !result.equals(ass)) return null;
+                       result = ass;
+               }
+       }
+       return result;
+     }
+     
  }