]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.db.procore/src/fi/vtt/simantics/procore/internal/TransferableGraphSupportImpl.java
Merge commit 'ffdf837'
[simantics/platform.git] / bundles / org.simantics.db.procore / src / fi / vtt / simantics / procore / internal / TransferableGraphSupportImpl.java
1 package fi.vtt.simantics.procore.internal;\r
2 \r
3 import java.io.InputStream;\r
4 \r
5 import org.simantics.db.ReadGraph;\r
6 import org.simantics.db.Resource;\r
7 import org.simantics.db.VirtualGraph;\r
8 import org.simantics.db.WriteOnlyGraph;\r
9 import org.simantics.db.exception.DatabaseException;\r
10 import org.simantics.db.impl.graph.WriteGraphImpl;\r
11 import org.simantics.db.service.ByteReader;\r
12 import org.simantics.db.service.TransferableGraphSupport;\r
13 \r
14 public class TransferableGraphSupportImpl implements TransferableGraphSupport {\r
15         \r
16         final private SessionImplSocket session;\r
17         \r
18         TransferableGraphSupportImpl(SessionImplSocket session) {\r
19                 this.session = session;\r
20         }\r
21 \r
22         @Override\r
23         public InputStream getValueStream(ReadGraph graph, Resource resource) {\r
24         return session.getValueStream(null, resource);\r
25         }\r
26         \r
27         @Override\r
28         public byte[] getValue(ReadGraph graph, Resource resource) {\r
29                 return session.getValue(null, resource);\r
30         }\r
31         \r
32         @Override\r
33         public void setValue(WriteOnlyGraph graph, Resource resource, VirtualGraph provider, byte[] raw) throws DatabaseException {\r
34                 \r
35             WriteGraphImpl impl = (WriteGraphImpl)graph;\r
36             VirtualGraph vg = session.getProvider(provider);\r
37             impl.writeSupport.claimValue(vg, resource, raw);\r
38                 \r
39         }\r
40         \r
41         @Override\r
42         public void setValue(WriteOnlyGraph graph, Resource resource, VirtualGraph provider, ByteReader reader, int amount)\r
43                 throws DatabaseException {\r
44             \r
45         WriteGraphImpl impl = (WriteGraphImpl)graph;\r
46         VirtualGraph vg = session.getProvider(provider);\r
47         impl.writeSupport.claimValue(vg, resource, reader, amount);\r
48             \r
49         }\r
50 \r
51 }\r