X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fgraph%2FReadGraphImpl.java;fp=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fgraph%2FReadGraphImpl.java;h=e3e7d50ecbc04998d62a650a9695ce939b6667ac;hb=3850fec72035293b9a4ede780d01aedc5fbc9056;hp=25438ef1ef3f0d57878c32c3c03def4111c8ca0c;hpb=1e957fc9da518f3bef8a2c19cad72772087e1b6a;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/graph/ReadGraphImpl.java b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/graph/ReadGraphImpl.java index 25438ef1e..e3e7d50ec 100644 --- a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/graph/ReadGraphImpl.java +++ b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/graph/ReadGraphImpl.java @@ -45,6 +45,7 @@ import org.simantics.databoard.util.binary.BinaryFile; import org.simantics.databoard.util.binary.RandomAccessBinary; import org.simantics.db.AsyncReadGraph; import org.simantics.db.DevelopmentKeys; +import org.simantics.db.ExternalValue; import org.simantics.db.ExternalValueSupport; import org.simantics.db.ReadGraph; import org.simantics.db.RelationContext; @@ -6453,7 +6454,8 @@ public class ReadGraphImpl implements ReadGraph { for(Resource converter : graph.getObjects(resource, L0.ConvertsToValueWith)) { try { if(L0.Functions_functionApplication.equals(converter)) { - return (Function3)graph.syncRequest(new AdaptValue(resource)); + return AdaptValue.functionApplication; + //return (Function3)graph.syncRequest(new AdaptValue(resource)); } else { return graph.getValue2(converter, resource); } @@ -6511,9 +6513,11 @@ public class ReadGraphImpl implements ReadGraph { } } else if(types.contains(L0.ExternalValue)) { try { - return (T)ReflectionUtils.getValue(getURI(r)).getValue(); - } catch(ValueNotFoundException e) { - throw new DatabaseException(e); + ExternalValue ev = adapt(r, ExternalValue.class); + return ev.getValue(this, r); + //return (T)ReflectionUtils.getValue(getURI(r)).getValue(); +// } catch(ValueNotFoundException e) { +// throw new DatabaseException(e); } catch(ClassCastException e) { throw new DatabaseException(e); }