X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fquery%2FRelationInfoQueryFactory.java;fp=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fquery%2FRelationInfoQueryFactory.java;h=05adb56a7631a6d55eb6d48d4e75fddbe72dd1af;hp=0000000000000000000000000000000000000000;hb=e460fd6f0af60314e2ca28391ef7ff2043016d97;hpb=fe29fd8956c3881e261ec4eee1cdd2ac27bc0554 diff --git a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/RelationInfoQueryFactory.java b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/RelationInfoQueryFactory.java new file mode 100644 index 000000000..05adb56a7 --- /dev/null +++ b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/RelationInfoQueryFactory.java @@ -0,0 +1,26 @@ +package org.simantics.db.impl.query; + +import org.simantics.db.RelationInfo; +import org.simantics.db.exception.DatabaseException; + +public class RelationInfoQueryFactory extends QueryFactoryBase { + + @Override + public CacheEntryBase readKeyAndValue(QueryDeserializer deserializer) throws DatabaseException { + RelationInfoQuery result = reference(deserializer); + int r = deserializer.readResource(); + int isFunctional = deserializer.readByte(); + int isFinal = deserializer.readByte(); + int isAsserted = deserializer.readByte(); + RelationInfo ri = new RelationInfo(r, isFunctional == 1, isFinal == 1, isAsserted == 1); + result.setResult(ri); + result.setReady(); + return result; + } + + @Override + public T reference(QueryDeserializer deserializer) throws DatabaseException { + return (T)deserializer.readRelationInfoQuery(); + } + +}