|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ClientManagerOperations
The interface that a single client uses to communicate with its server-side client manager instance
Method Summary | |
---|---|
void |
closeClientManager()
Closes the client manager and frees server resources associated with it, including the client manager's activation in the server's CORBA portable object adapter |
int[] |
enterLot(int seq,
int lot)
Moves the client's car into the lot with the given lot number and returns an array of level numbers that have available spaces |
void |
exitLot(int seq)
Removes the client's car from the lot that it is currently in |
int |
getClientID()
Returns the client's ID, which can be used in the client manager factory's getExistingClientManager() method |
int |
getCurrentLevel()
Returns the car's current level number |
int[] |
getLots()
Returns an array of valid lot numbers in the system, sorted by the lot number in ascending order |
int |
getMaxLevel()
Returns the top level number of the car's current parking lot |
int |
getMinLevel()
Returns the bottom level number of the car's current parking lot |
int[] |
getOtherLotAvailability(int lot)
Returns an array of other lots that have availability, sorted by lot distance such that closer lots are listed first |
int |
moveDownLevel(int seq)
Moves the car from its present level to the level beneath it |
int |
moveUpLevel(int seq)
Moves the car from its present level to the level above it |
Method Detail |
---|
int getClientID()
int[] enterLot(int seq, int lot) throws AlreadyInLotException, LotNotFoundException, LotFullException, ServiceUnavailableException
seq
- The latest sequence number of the clientlot
- The lot number to enter
AlreadyInLotException
- Thrown when the client's car is already in a lot
LotNotFoundException
- Thrown if the given lot number is not known to the system
LotFullException
- Thrown if the given lot is full
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the car from entering the lotvoid exitLot(int seq) throws NotInLotException, NotOnExitLevelException, ServiceUnavailableException
seq
- The latest sequence number of the client
NotInLotException
- Thrown if the car is not in a lot
NotOnExitLevelException
- Thrown if the car is in a lot but is not on a permitted
exit level
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the car from exiting the lot
[Category: Baseline; Requirement: 7]int[] getOtherLotAvailability(int lot) throws LotNotFoundException, ServiceUnavailableException
lot
- The lot to get lot distances from
LotNotFoundException
- Thrown if the given lot number is not known to the system
ServiceUnavailableException
- Thrown if the database cannot be contacted or if
some other reason prevents the system from discovering the availability of other lotsint[] getLots() throws ServiceUnavailableException
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the system from discovering the its defined lotsint moveUpLevel(int seq) throws NotInLotException, AtTopLevelException, ServiceUnavailableException
seq
- The latest sequence number of the client
NotInLotException
- Thrown if the car is not in a lot
AtTopLevelException
- Thrown if the car is already on the highest level
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the car from moving to the next highest levelint moveDownLevel(int seq) throws NotInLotException, AtBottomLevelException, ServiceUnavailableException
seq
- The latest sequence number of the client
NotInLotException
- Thrown if the car is not in a lot
AtTopLevelException
- Thrown if the car is already on the lowest level
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some other reason prevents the car from moving to the lower level
AtBottomLevelException
int getCurrentLevel() throws NotInLotException, ServiceUnavailableException
NotInLotException
- Thrown if the car is not in a lot
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the system from returning the car's current levelint getMaxLevel() throws NotInLotException, ServiceUnavailableException
NotInLotException
- Thrown if the car is not in a lot
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the system from returning the current lot's highest levelint getMinLevel() throws NotInLotException, ServiceUnavailableException
NotInLotException
- Thrown if the car is not in a lot
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the system from returning the current lot's lowest levelvoid closeClientManager() throws ServiceUnavailableException
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the system from closing the client manager. The client manager remains
open if this exception gets thrown
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |