1 package org.sourceforge.jemm.database.remote.shared; 2 3 import org.sourceforge.jemm.comm.shared.SynchronousCall; 4 import org.sourceforge.jemm.database.ClassId; 5 import org.sourceforge.jemm.database.ClassInfo; 6 import org.sourceforge.jemm.database.EnumId; 7 import org.sourceforge.jemm.database.EnumInfo; 8 import org.sourceforge.jemm.database.GetObjectResp; 9 import org.sourceforge.jemm.database.ObjectSyncData; 10 import org.sourceforge.jemm.database.ObjectSyncResp; 11 import org.sourceforge.jemm.database.StructureModifiedException; 12 import org.sourceforge.jemm.lifecycle.TypeRequest; 13 import org.sourceforge.jemm.lifecycle.TypeResponse; 14 import org.sourceforge.jemm.types.ID; 15 16 public interface RDbServerIF { 17 @SynchronousCall 18 void acquireLock(String threadId, ID id); 19 20 ClassInfo getClassInfo(ClassId classId); 21 22 EnumInfo getEnumInfo(EnumId enumId); 23 24 GetObjectResp getObject(ID id); 25 26 ID getRoot(String rootName); 27 28 ID newObject(ClassId classId); 29 30 @SynchronousCall 31 void referenceCleared(ID[] ids); 32 33 ClassId registerClass(ClassInfo classInfo) throws StructureModifiedException; 34 35 EnumId registerEnum(EnumInfo enumInfo) throws StructureModifiedException; 36 37 @SynchronousCall 38 void releaseLock(String threadId, ID id); 39 40 @SynchronousCall 41 void setRoot(String rootName, ID newValue); 42 43 ID setRootIfNull(String rootName, ID newValue); 44 45 ObjectSyncResp synchroniseObject(ID id, ObjectSyncData syncData); 46 47 TypeResponse<?> processTypeRequest(ClassId classId, ID objId, 48 TypeRequest<?> request); 49 }