X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=docs%2FDeveloper%2FDatabase%2FResourceSerialization.md;fp=docs%2FDeveloper%2FDatabase%2FResourceSerialization.md;h=9a72e56959920d42b967be42c1969d80034a4040;hb=a9ec58f08ccc02e65b1cab6aedff25e0cf3c6444;hp=0000000000000000000000000000000000000000;hpb=5998374f7e179cfaf451c220216adc18c823047f;p=simantics%2Fplatform.git diff --git a/docs/Developer/Database/ResourceSerialization.md b/docs/Developer/Database/ResourceSerialization.md new file mode 100644 index 000000000..9a72e5695 --- /dev/null +++ b/docs/Developer/Database/ResourceSerialization.md @@ -0,0 +1,23 @@ +Serializing a resource + +~~~ + long serializeResource(RequestProcessor processor, Resource resource) throws DatabaseException { + SerialisationSupport ss = processor.getService(SerialisationSupport.class); + return ss.getRandomAccessId(resource); + } + String serializeResourceToString(RequestProcessor processor, Resource resource) throws DatabaseException { + return String.valueOf(serializeResource(processor, resource)); + } +~~~ + +Deserializing a resource + +~~~ + Resource deserializeResource(ReadGraph graph, long randomAccessId) throws DatabaseException { + SerialisationSupport ss = session.getService(SerialisationSupport.class); + return rs.getResource(randomAccessId); + } + Resource deserializeResource(ReadGraph graph, String randomAccessId) throws DatabaseException, NumberFormatException { + return deserializeResource(graph, Long.parseLong(randomAccessId)); + } +~~~