public class PurchaseSessionManager extends Object implements IPurchaseSessionManager
Modifier and Type | Field and Description |
---|---|
static org.apache.log4j.Logger |
LOG |
Constructor and Description |
---|
PurchaseSessionManager() |
Modifier and Type | Method and Description |
---|---|
void |
checkReserved(String sessionId,
IPurchaseDTO purchase)
Check that purchase has been reserved before to save it.
|
void |
clearPurchase(Integer minutes)
Delete all purchase create more than "minute" minutes ago
|
void |
release(String sessionId,
IPurchaseDTO purchase)
Remove purchase from session
|
void |
releaseAll(String sessionId)
Remove all active purchases for a session id
|
void |
reserve(String sessionId,
IPurchaseDTO purchase)
Reserves an offer quantity for a session.
|
Integer |
updateQuantityWithSession(Integer quantity,
Integer offerId)
Update offer quantity with quantity in session
|
public void reserve(String sessionId, IPurchaseDTO purchase) throws PurchaseUnavailable
reserve
in interface IPurchaseSessionManager
sessionId
- session idpurchase
- purchase (offer id, quantity and user)PurchaseUnavailable
- exception thrown if purchase is impossiblepublic void checkReserved(String sessionId, IPurchaseDTO purchase) throws PurchaseSessionExpired
checkReserved
in interface IPurchaseSessionManager
sessionId
- session idpurchase
- purchasePurchaseSessionExpired
- the purchase session expiredpublic void release(String sessionId, IPurchaseDTO purchase)
release
in interface IPurchaseSessionManager
sessionId
- session idpurchase
- purchasepublic void releaseAll(String sessionId)
releaseAll
in interface IPurchaseSessionManager
sessionId
- session idpublic Integer updateQuantityWithSession(Integer quantity, Integer offerId)
IPurchaseSessionManager
updateQuantityWithSession
in interface IPurchaseSessionManager
quantity
- the quantityofferId
- the offer idpublic void clearPurchase(Integer minutes)
IPurchaseSessionManager
clearPurchase
in interface IPurchaseSessionManager
minutes
- the number max of minutes for keeping purchase in sessionCopyright © 2020 City of Paris. All rights reserved.