View Javadoc

1   package org.sourceforge.jemm.database.persistent.berkeley;
2   
3   import com.sleepycat.persist.model.Entity;
4   import com.sleepycat.persist.model.PrimaryKey;
5   import com.sleepycat.persist.model.Relationship;
6   import com.sleepycat.persist.model.SecondaryKey;
7   
8   import org.sourceforge.jemm.database.ClientId;
9   import org.sourceforge.jemm.database.ClientThreadId;
10  import org.sourceforge.jemm.types.ID;
11  
12  @Entity
13  public class ClientLockEntry {
14  
15  	@PrimaryKey
16  	ClientLockKey key;
17  
18  	@SecondaryKey(relate=Relationship.MANY_TO_ONE)
19  	String clientId;
20  	
21  	String threadId;
22  	long objectId;
23  
24  	public ClientLockEntry() {}
25  	
26  	public ClientLockEntry(ClientThreadId clientThreadId,ID objectId) {
27  		key = new ClientLockKey(clientThreadId,objectId);
28  		this.clientId = clientThreadId.getClientId().getInternalRep();
29  		this.threadId = clientThreadId.getThreadId();
30  		this.objectId = objectId.getIDValue();
31  	}
32  
33  	public ClientId getClientId() {
34  		return new ClientId(clientId);
35  	}
36  
37  	public ID getObjectId() {
38  		return new ID(objectId);
39  	}
40  
41  	public ClientThreadId getClientThreadId() {
42  		return new ClientThreadId(getClientId(),threadId);
43  	}
44  }