Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
DCB STATE | Max backoff / Next Poll interval / Next Step
| Max backoff / Next Poll interval / Next Step
| What tracking for next step in 2l process | What tracking for next step in 3l process | ||||
---|---|---|---|---|---|---|---|---|
REQUEST_PLACED_AT_SUPPLYING_AGENCY | 10ms | 10ms | wait for SupplierRequest= CONFIRMED | TRANSIT → HandleSupplierRequestConfirmed Moves us into the CONFIRMED state | |||||
CONFIRMED | 10m | 10m | Auto Triggers PlacePatronRequestAtBorrowingAgencyStateTransition Moves us to REQUEST_PLACED_AT_BORROWING_AGENCY | |||||
REQUEST_PLACED_AT_BORROWING_AGENCY | 10m | 1h | wait for SupplyingItem State = TRANSIT -> HandleSupplierInTransit Moves us to PICKUP_TRANSIT | |||||
PICKUP_TRANSIT | 10m | 1h | wait for BorrowingItem = RECEIVED | LOANED | ON_HOLD_SHELF Then HandleBorrowerItemReceived moves us to RECEIVED_AT_PICKUP | |||||
RECEIVED_AT_PICKUP | 10m | 1h | wait for BorrowingItem = ON_HOLD_SHELF | LOANED Then HandleBorrowerItemOnHoldShelf moves us to READY_FOR_PICKUP | |||||
READY_FOR_PICKUP | 10m | 1h | wait for BorrowingItem = LOANED Then HandleBorrowerItemLoaned moves us to LOANED | |||||
LOANED | 10m | 6h | wait for BorrowingItem = AVAILABLE | TRANSIT OR SupplierItem=AVAILABLE HandleBorrowerRequestReturnTransit moves us to RETURN_TRANSIT N.b. CLOSED==FOLIO Specific N.b. Additional check needed here - item loaned other | |||||
RETURN_TRANSIT | 10m | 1h | SupplierItem = AVAILABLE | SupplierRequest=CLOSED Then HandleSupplierItemAvailable moves us to COMPLETED N.b. CLOSED==FOLIO Specific N.b. Additional check needed here - item loaned other |
Finishing States
When a request completes its cycle, or if it terminates prematurely, it enters a finishing state.
...
DCB STATE | Max backoff / Next Poll interval / Next Step
| Max backoff / Next Poll interval / Next Step
| What tracking for next step in 2l process | What tracking for next step in 3l process | ||||
---|---|---|---|---|---|---|---|---|
Preliminary Finishing (follows a preliminary state before a request enters tracked circulation) | ||||||||
NOT_SUPPLIED_CURRENT_SUPPLIER | None | None | Auto Triggers: ResolveNextSupplierTransition Moves us to NO_ITEMS_AVAILABLE_AT_ANY_AGENCY | |||||
NO_ITEMS_AVAILABLE_AT_ANY_AGENCY | None | None | TERMINAL STATE (For now) | |||||
Circulation Finishing (interrupts tracked circulation, and is typically manually instigated) | ||||||||
CANCELLED | None | None | Auto Triggers: FinaliseRequestTransition moves us to FINALISED | |||||
Happy Path Finishing (follows directly after the end of tracked circulation) | ||||||||
COMPLETED | None | None | Auto Triggers: FinaliseRequestTransition moves us to FINALISED | |||||
FINALISED | None | None | TERMINAL STATE | TERMINAL STATE | ||||
Unexpected Termination (can happen at any stage) | ||||||||
ERROR | None | None | TERMINAL STATE | TERMINAL STATE |
...