X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.db.layer0%2Fsrc%2Forg%2Fsimantics%2Fdb%2Flayer0%2Futil%2FLayer0Utils.java;h=936eb58126f0b30563406cd404e1872889d54759;hp=5ccfcf325f49df3f919f6ee54f34b3d0f2033960;hb=c2c14cfce252493d4fda9f7cf34a981dfe744432;hpb=3f5adda763f6281e9988277d067c1f71615e3da2 diff --git a/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/util/Layer0Utils.java b/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/util/Layer0Utils.java index 5ccfcf325..936eb5812 100644 --- a/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/util/Layer0Utils.java +++ b/bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/util/Layer0Utils.java @@ -569,16 +569,16 @@ public class Layer0Utils { } - public static void claimAdaptedValue(WriteGraph graph, Resource objectResource, Object value, Binding binding, Datatype datatype) throws DatabaseException { + public static void claimAdaptedValue(WriteGraph graph, Resource objectResource, Object value, Binding binding, Datatype targetDatatype) throws DatabaseException { try { - Datatype source = binding.type(); - if(source.equals(datatype)) { + Datatype sourceDatatype = binding.type(); + if(sourceDatatype.equals(targetDatatype)) { graph.claimValue(objectResource, value, binding); } else { - Binding target = Bindings.getBinding(datatype); - Adapter adapter = Bindings.getAdapter(binding, target); + Binding target = Bindings.getBinding(targetDatatype); + Adapter adapter = Bindings.getTypeAdapter(binding, target); graph.claimValue(objectResource, adapter.adapt(value), target); } @@ -1387,18 +1387,4 @@ public class Layer0Utils { 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 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; - } - }