|
||||||||||
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 |
PaddedIntegerSeq |
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 |
PaddedVoid |
exitLot(int seq)
Removes the client's car from the lot that it is currently in |
PaddedInteger |
getClientID()
Returns the client's ID, which can be used in the client manager factory's getExistingClientManager() method |
PaddedInteger |
getCurrentLevel()
Returns the car's current level number |
PaddedIntegerSeq |
getLots()
Returns an array of valid lot numbers in the system, sorted by the lot number in ascending order |
PaddedInteger |
getMaxLevel()
Returns the top level number of the car's current parking lot |
PaddedInteger |
getMinLevel()
Returns the bottom level number of the car's current parking lot |
PaddedIntegerSeq |
getOtherLotAvailability(int lot)
Returns an array of other lots that have availability, sorted by lot distance such that closer lots are listed first |
PaddedInteger |
moveDownLevel(int seq)
Moves the car from its present level to the level beneath it |
PaddedInteger |
moveUpLevel(int seq)
Moves the car from its present level to the level above it |
Method Detail |
---|
PaddedInteger getClientID() throws ServiceUnavailableException
ServiceUnavailableException
- Thrown when the log is closed and the
server is shutting downPaddedIntegerSeq 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 lotPaddedVoid 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]PaddedIntegerSeq 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 lotsPaddedIntegerSeq getLots() throws ServiceUnavailableException
ServiceUnavailableException
- Thrown if the database cannot be contacted or if some
other reason prevents the system from discovering the its defined lotsPaddedInteger 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 levelPaddedInteger 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
PaddedInteger 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 levelPaddedInteger 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 levelPaddedInteger 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 |