comparison src/org/dancres/blitz/remote/BackEndSpace.java @ 0:3dc0c5604566

Initial checkin of blitz 2.0 fcs - no installer yet.
author Dan Creswell <dan.creswell@gmail.com>
date Sat, 21 Mar 2009 11:00:06 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:3dc0c5604566
1 package org.dancres.blitz.remote;
2
3 import net.jini.core.lease.Lease;
4 import net.jini.core.transaction.Transaction;
5 import net.jini.core.transaction.TransactionException;
6 import net.jini.core.event.EventRegistration;
7 import net.jini.core.event.RemoteEventListener;
8 import org.dancres.blitz.mangler.MangledEntry;
9
10 import java.rmi.RemoteException;
11 import java.rmi.MarshalledObject;
12
13 /**
14 */
15 public interface BackEndSpace {
16 public LeaseImpl write(MangledEntry anEntry, Transaction aTxn,
17 long aLeaseTime)
18 throws RemoteException, TransactionException;
19
20 public MangledEntry take(MangledEntry anEntry, Transaction aTxn,
21 long aWaitTime)
22 throws RemoteException, TransactionException;
23
24 public MangledEntry read(MangledEntry anEntry, Transaction aTxn,
25 long aWaitTime)
26 throws RemoteException, TransactionException;
27
28 public MangledEntry takeIfExists(MangledEntry anEntry, Transaction aTxn,
29 long aWaitTime)
30 throws RemoteException, TransactionException;
31
32 public MangledEntry readIfExists(MangledEntry anEntry, Transaction aTxn,
33 long aWaitTime)
34 throws RemoteException, TransactionException;
35
36 public EventRegistration notify(MangledEntry anEntry, Transaction aTxn,
37 RemoteEventListener aListener,
38 long aLeaseTime,
39 MarshalledObject aHandback)
40 throws RemoteException, TransactionException;
41
42 /**
43 Used by the base proxy (which implements Administrable) to return
44 a proxy for the admin functions. Saves sending the admin proxy to
45 clients that don't intend to use it.
46 */
47 public Object getAdmin() throws RemoteException;
48 }