Function 4

Get Next Order to Ship

FIFO Queue · Canceled orders di-skip (lazy deletion) · Loop sampai active order ditemukan

Shipping Queue
FIFO6 items
1
ORD-001
CANCELED
2
ORD-002
CANCELED
3
ORD-003
CANCELED
4
ORD-004
CANCELED
5
ORD-005
CANCELED
6
ORD-006
CANCELED

Sequence Flow — loop [queue not empty and front is canceled]

getNextOrderToShip() → peek()
Lihat elemen terdepan queue
front() → get(order_id) → isActive?
Cek apakah order masih aktif
pop() — skip canceled order
Loop: cek order berikutnya
isActive? true → pop()
Order aktif ditemukan!
11. return active order
Return order siap kirim