Programming Guide » History » Revision 8
« Previous |
Revision 8/13
(diff)
| Next »
chin-yeh, 08/10/2011 03:40 PM
- Table of contents
- Programming Guide
Programming Guide¶
There are number of APIs provided by VP. All of these APIs are wrapped and exposed through a client application, vp-client. Refer to the following sub sections for more information.
The Javadoc of vp-client:
The binary or source files of vp-client:
Demo application of vp-client:
VP Registration¶
This method is only applicable for new registration, which means the member/shopper ID is not yet registered with VP before.
Input Parameters¶
Output Parameters¶
The return object, TransactionResponse consists of the following fields value:- process - For registration, the possible value is VRegister
- transactionId - The unique reference that passed in by the caller
- countryId - The country ID/code that passed in by the caller
- centerId - To differentiate if the caller are from POS system or online
- memberId - The member/shopper ID
- status - The status of the transaction. If success, returns 0000
- refer to VP Web Service Format for other possible status
- errorCode - the error code of the transaction. if success, returns 00000
- refer to VP Web Service Format for other possible error code
- errorMessage - the detailed description of the error code
- refer to VP Web Service Format for other possible description
Code Snippet¶
Important note: One should modify the following code to cater existing program so do not copy & paste it directly.
Connection dbConnection = DBConnectionFactory.createDbConnection("java:/DB2DS2"); TransactionResponse vpResponse = new TransactionResponse(); try { vpResponse = VPServicesUtils.performRegistration(dbConnection, trxId, countryId, memberId, memberName, vpAmount, trxDate, regDate, expDate); } catch (RemoteException ex) { // do not ignore. either log the full stack trace or handle it LOGGER.error(ex); } catch (SQLException ex) { // do not ignore. either log the full stack trace or handle it LOGGER.error(ex); } finally { if (dbConnection != null) { dbConnection.close(); } }
Exception Handling Strategies¶
This method would throws the following exceptions:- RemoteException - if there's any issue in communicating with VP
- SQLException - if there's any issue in persisting or updating the event
- unchecked exception - e.g. NullPointerException. This is more like a programming errors so do not catch it for whatever reasons.
- note: catch the Exception will catch both checked & unchecked exception
The above exceptions should never be ignored, at least, the full error stack trace should be logged.
VP Renewal¶
This method is only applicable for renewal. The member/shopper ID should have already registered with VP before.
Input Parameters¶
See performRenewal
Output Parameters¶
The return object, TransactionResponse consists of the following fields value:- process - For registration/renewal, the possible value is VRegister
- transactionId - The unique reference that passed in by the caller
- countryId - The country ID/code that passed in by the caller
- centerId - To differentiate if the caller are from POS system or online
- memberId - The member/shopper ID
- status - The status of the transaction. If success, returns 0000
- refer to VP Web Service Format for other possible status
- errorCode - the error code of the transaction. if success, returns 00000
- refer to VP Web Service Format for other possible error code
- errorMessage - the detailed description of the error code
- refer to VP Web Service Format for other possible description
Code Snippet¶
Important note: One should modify the following code to cater existing program so do not copy & paste it directly.
Connection dbConnection = DBConnectionFactory.createDbConnection("java:/DB2DS2"); TransactionResponse vpResponse = new TransactionResponse(); try { vpResponse = VPServicesUtils.performRenewal(dbConnection, trxId, countryId, memberId, memberName, vpAmount, trxDate, regDate, expDate); } catch (RemoteException ex) { // do not ignore. either log the full stack trace or handle it LOGGER.error(ex); } catch (SQLException ex) { // do not ignore. either log the full stack trace or handle it LOGGER.error(ex); } finally { if (dbConnection != null) { dbConnection.close(); } }
Exception Handling Strategies¶
This method would throws the following exceptions:- RemoteException - if there's any issue in communicating with VP
- SQLException - if there's any issue in persisting or updating the event
- unchecked exception - e.g. NullPointerException. This is more like a programming errors so do not catch it for whatever reasons.
- note: catch the Exception will catch both checked & unchecked exception
The above exceptions should never be ignored, at least, the full error stack trace should be logged.
Updated by chin-yeh over 13 years ago · 8 revisions