1 package org.sourceforge.jemm.database.remote.server;
2
3 import org.sourceforge.jemm.database.ClassId;
4 import org.sourceforge.jemm.database.ClassInfo;
5 import org.sourceforge.jemm.database.ClientThreadId;
6 import org.sourceforge.jemm.database.Database;
7 import org.sourceforge.jemm.database.EnumId;
8 import org.sourceforge.jemm.database.EnumInfo;
9 import org.sourceforge.jemm.database.GetObjectResp;
10 import org.sourceforge.jemm.database.ObjectSyncData;
11 import org.sourceforge.jemm.database.ObjectSyncResp;
12 import org.sourceforge.jemm.database.StructureModifiedException;
13 import org.sourceforge.jemm.database.remote.shared.RDbServerIF;
14 import org.sourceforge.jemm.lifecycle.TypeRequest;
15 import org.sourceforge.jemm.lifecycle.TypeResponse;
16 import org.sourceforge.jemm.types.ID;
17
18 class RDbServerIFImpl extends AbstractRDbIFImpl implements RDbServerIF {
19
20 protected final Database underlyingDatabase;
21
22 RDbServerIFImpl(Database underlyingDatabase,ClientReferenceHandler crh) {
23 super(crh);
24 this.underlyingDatabase = underlyingDatabase;
25 }
26
27 @Override
28 public ID getRoot(String rootName) {
29 return underlyingDatabase.getRoot(getClientId(), rootName);
30 }
31
32 @Override
33 public void acquireLock(String threadId, ID jemmId) {
34 ClientThreadId clientThreadId = new ClientThreadId(getClientId(),threadId);
35 underlyingDatabase.acquireLock(clientThreadId, jemmId);
36 }
37
38 @Override
39 public void setRoot(String rootName, ID newValue) {
40 underlyingDatabase.setRoot(getClientId(), rootName, newValue);
41 }
42
43 @Override
44 public ID setRootIfNull(String rootName, ID newValue) {
45 return underlyingDatabase.setRootIfNull(getClientId(), rootName, newValue);
46 }
47
48 @Override
49 public ObjectSyncResp synchroniseObject(ID id, ObjectSyncData syncData) {
50 return underlyingDatabase.synchroniseObject(getClientId(),id,syncData);
51 }
52
53 @Override
54 public ClassInfo getClassInfo(ClassId classId) {
55 return underlyingDatabase.getClassInfo(getClientId(), classId);
56 }
57
58 @Override
59 public EnumInfo getEnumInfo(EnumId enumId) {
60 return underlyingDatabase.getEnumInfo(getClientId(), enumId);
61 }
62
63 @Override
64 public GetObjectResp getObject(ID id) {
65 return underlyingDatabase.getObject(getClientId(), id);
66 }
67
68 @Override
69 public ID newObject(ClassId classId) {
70 return underlyingDatabase.newObject(getClientId(), classId);
71 }
72
73 @Override
74 public void referenceCleared(ID[] ids) {
75 underlyingDatabase.referenceCleared(getClientId(), ids);
76 }
77
78 @Override
79 public ClassId registerClass(ClassInfo classInfo) throws StructureModifiedException {
80 return underlyingDatabase.registerClass(getClientId(), classInfo);
81 }
82
83 @Override
84 public EnumId registerEnum(EnumInfo enumInfo) throws StructureModifiedException {
85 return underlyingDatabase.registerEnum(getClientId(), enumInfo);
86 }
87
88 @Override
89 public void releaseLock(String threadId,ID id) {
90 ClientThreadId ctId = new ClientThreadId(getClientId(),threadId);
91 underlyingDatabase.releaseLock(ctId, id);
92 }
93
94 @Override
95 public TypeResponse<?> processTypeRequest(ClassId classId, ID objId,
96 TypeRequest<?> request) {
97 return underlyingDatabase.processTypeRequest(getClientId(), classId,objId,request);
98 }
99 }