-package fi.vtt.simantics.procore.internal;\r
-\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.ResourceSerializer;\r
-import org.simantics.db.common.utils.Logger;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.impl.ClusterI;\r
-import org.simantics.db.impl.ResourceImpl;\r
-import org.simantics.db.procore.cluster.ClusterImpl;\r
-import org.simantics.db.procore.cluster.ClusterTraits;\r
-import org.simantics.db.service.ResourceUID;\r
-import org.simantics.db.service.SerialisationSupport;\r
-\r
-import fi.vtt.simantics.procore.internal.SessionImplSocket.ResourceSerializerImpl;\r
-\r
-public class SerialisationSupportImpl implements SerialisationSupport {\r
-\r
- final private SessionImplSocket session;\r
- final private ResourceSerializerImpl serializer;\r
- \r
- SerialisationSupportImpl(SessionImplSocket session) {\r
- this.session = session;\r
- this.serializer = session.resourceSerializer;\r
- }\r
- \r
- @Override\r
- public ResourceSerializer getResourceSerializer() {\r
- return serializer;\r
- }\r
-\r
- @Override\r
- public long getRandomAccessId(int id) {\r
- try {\r
- return serializer.createRandomAccessId(id);\r
- } catch (DatabaseException e) {\r
- Logger.defaultLogError(e);\r
- } catch (Throwable t) {\r
- Logger.defaultLogError(t);\r
- }\r
- return 0;\r
- }\r
- \r
- @Override\r
- public int getTransientId(Resource resource) throws DatabaseException {\r
- return serializer.getTransientId(resource);\r
- }\r
- \r
- @Override\r
- public Resource getResource(long randomAccessId) throws DatabaseException {\r
- return serializer.getResource(randomAccessId);\r
- }\r
- \r
- @Override\r
- public int getTransientId(long randomAccessId) throws DatabaseException {\r
- return serializer.getTransientId(randomAccessId);\r
- }\r
-\r
- @Override\r
- public long getRandomAccessId(Resource resource) throws DatabaseException {\r
- return serializer.getRandomAccessId(resource);\r
- }\r
-\r
- @Override\r
- public Resource getResource(int transientId) throws DatabaseException {\r
- return session.getResource(transientId);\r
- }\r
-\r
- @Override\r
- public ResourceUID getUID(Resource resource) throws DatabaseException {\r
- ResourceImpl impl = (ResourceImpl)resource;\r
- int resourceKey = impl.id;\r
- ClusterImpl cluster = session.clusterTable.getClusterByResourceKey(resourceKey);\r
- return cluster.clusterUID.toRID(ClusterTraits.getResourceIndexFromResourceKey(resourceKey));\r
- }\r
-\r
- @Override\r
- public Resource getResource(ResourceUID uid) throws DatabaseException {\r
- ClusterI cluster = session.clusterTable.getClusterByClusterUIDOrMakeProxy(uid.asCID());\r
- int key = ClusterTraits.createResourceKey(cluster.getClusterKey(), (int) uid.getIndex());\r
- return new ResourceImpl(session.resourceSupport, key);\r
- }\r
- \r
-}\r
+package fi.vtt.simantics.procore.internal;
+
+import org.simantics.db.Resource;
+import org.simantics.db.ResourceSerializer;
+import org.simantics.db.common.utils.Logger;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.impl.ClusterI;
+import org.simantics.db.impl.ResourceImpl;
+import org.simantics.db.procore.cluster.ClusterImpl;
+import org.simantics.db.procore.cluster.ClusterTraits;
+import org.simantics.db.service.ResourceUID;
+import org.simantics.db.service.SerialisationSupport;
+
+import fi.vtt.simantics.procore.internal.SessionImplSocket.ResourceSerializerImpl;
+
+public class SerialisationSupportImpl implements SerialisationSupport {
+
+ final private SessionImplSocket session;
+ final private ResourceSerializerImpl serializer;
+
+ SerialisationSupportImpl(SessionImplSocket session) {
+ this.session = session;
+ this.serializer = session.resourceSerializer;
+ }
+
+ @Override
+ public ResourceSerializer getResourceSerializer() {
+ return serializer;
+ }
+
+ @Override
+ public long getRandomAccessId(int id) {
+ try {
+ return serializer.createRandomAccessId(id);
+ } catch (DatabaseException e) {
+ Logger.defaultLogError(e);
+ } catch (Throwable t) {
+ Logger.defaultLogError(t);
+ }
+ return 0;
+ }
+
+ @Override
+ public int getTransientId(Resource resource) throws DatabaseException {
+ return serializer.getTransientId(resource);
+ }
+
+ @Override
+ public Resource getResource(long randomAccessId) throws DatabaseException {
+ return serializer.getResource(randomAccessId);
+ }
+
+ @Override
+ public int getTransientId(long randomAccessId) throws DatabaseException {
+ return serializer.getTransientId(randomAccessId);
+ }
+
+ @Override
+ public long getRandomAccessId(Resource resource) throws DatabaseException {
+ return serializer.getRandomAccessId(resource);
+ }
+
+ @Override
+ public Resource getResource(int transientId) throws DatabaseException {
+ return session.getResource(transientId);
+ }
+
+ @Override
+ public ResourceUID getUID(Resource resource) throws DatabaseException {
+ ResourceImpl impl = (ResourceImpl)resource;
+ int resourceKey = impl.id;
+ ClusterImpl cluster = session.clusterTable.getClusterByResourceKey(resourceKey);
+ return cluster.clusterUID.toRID(ClusterTraits.getResourceIndexFromResourceKey(resourceKey));
+ }
+
+ @Override
+ public Resource getResource(ResourceUID uid) throws DatabaseException {
+ ClusterI cluster = session.clusterTable.getClusterByClusterUIDOrMakeProxy(uid.asCID());
+ int key = ClusterTraits.createResourceKey(cluster.getClusterKey(), (int) uid.getIndex());
+ return new ResourceImpl(session.resourceSupport, key);
+ }
+
+}