fr.paris.lutece.plugins.stock.service
Interface IPurchaseSessionManager

All Known Implementing Classes:
PurchaseSessionManager

public interface IPurchaseSessionManager

Manager for purchase session. Contains methods for managing the purchase mechanism : - reserve an offer into session - check if purchase is into session just before store it in database - release that

Author:
abataille

Method Summary
 void checkReserved(java.lang.String sessionId, IPurchaseDTO purchase)
          Check that purchase has been reserved before to save it.
 void release(java.lang.String sessionId, IPurchaseDTO purchase)
          Remove purchase from session
 void releaseAll(java.lang.String sessionId)
          Remove all active purchases for a session id
 void reserve(java.lang.String sessionId, IPurchaseDTO purchase)
          Reserves an offer quantity for a session.
 

Method Detail

reserve

void reserve(java.lang.String sessionId,
             IPurchaseDTO purchase)
             throws PurchaseUnavailable
Reserves an offer quantity for a session. Check if offer is available (quantity remaining in database + purchases in session) and add purchase in session

Parameters:
sessionId - session id
purchase - purchase (offer id, quantity and user)
Throws:
PurchaseUnavailable - exception thrown if purchase is impossible

checkReserved

void checkReserved(java.lang.String sessionId,
                   IPurchaseDTO purchase)
                   throws PurchaseSessionExpired
Check that purchase has been reserved before to save it.

Parameters:
sessionId - session id
purchase - purchase
Throws:
PurchaseSessionExpired - the purchase session expired

release

void release(java.lang.String sessionId,
             IPurchaseDTO purchase)
Remove purchase from session

Parameters:
sessionId - session id
purchase - purchase

releaseAll

void releaseAll(java.lang.String sessionId)
Remove all active purchases for a session id

Parameters:
sessionId - session id


Copyright © 2012 Mairie de Paris. All Rights Reserved.