com.softslate.commerce.businessobjects.payment
Class BasePayPalNVPProcessor

java.lang.Object
  extended by com.softslate.commerce.businessobjects.core.BaseBusinessObject
      extended by com.softslate.commerce.businessobjects.core.BaseBusinessProcessor
          extended by com.softslate.commerce.businessobjects.payment.BasePaymentProcessor
              extended by com.softslate.commerce.businessobjects.payment.BasePayPalNVPProcessor
All Implemented Interfaces:
BusinessObject, BusinessProcessor, PaymentProcessor
Direct Known Subclasses:
PayflowProACHProcessor, PayflowProProcessor, PayPalUKDirectProcessor, PayPalUKExpressProcessor

public abstract class BasePayPalNVPProcessor
extends BasePaymentProcessor

Base class for all payment processors that use PayPal's name-value pair (NVP) API to process payments. Common functionality as been distilled to this class for each of the processors, including PayPal Direct US, PayPal ACH, and Payflow Pro.

Author:
Ashish Jain

Field Summary
static java.lang.String CERT_PATH
           
static java.lang.String COMMENT1
           
static java.lang.String COMMENT2
           
static java.lang.String CUSTOMER_CODE
           
static java.lang.String CUSTOMER_REF
           
static java.lang.String DESCRIPTION
           
static java.lang.String HOST_ADDRESS
           
static java.lang.String HOST_PORT
           
(package private) static org.apache.commons.logging.Log log
           
static java.lang.String PARTNER
           
static java.lang.String PASSWORD
           
static java.lang.String PO_NUMBER
           
static java.lang.String PROXY_ADDR
           
static java.lang.String PROXY_LOGON
           
static java.lang.String PROXY_PASSWD
           
static java.lang.String PROXY_PORT
           
static java.lang.String TIME_OUT
           
static java.lang.String USER
           
static java.lang.String VENDOR
           
 
Constructor Summary
BasePayPalNVPProcessor()
           
 
Method Summary
 void initializeConnection(com.Verisign.payment.PFProAPI payflowProConnection, java.lang.String keyPrefix)
           
 java.lang.String makePayPalCall(java.util.Map parameters, java.lang.String keyPrefix)
           
 java.util.Map preparePayPalAuthRequest(java.util.Map params, java.lang.String keyPrefix)
           
 java.util.Map preparePaypalRequest(java.util.Map parameters, java.lang.String keyPrefix)
           
protected abstract  java.util.Map preparePaypalRequestAcutalPayload(java.util.Map params, java.util.Map parameters)
           
 java.util.Map preparePaypalRequestCommonPayload(java.util.Map params, java.util.Map parameters)
           
 void processSuccessfulTransaction(java.util.Map parameters, java.util.Map responseMap)
           
protected abstract  void setPaymentVariablesToPersist(Payment payment, java.util.Map parameters, java.util.Map responseMap)
           
 
Methods inherited from class com.softslate.commerce.businessobjects.payment.BasePaymentProcessor
process, processPayment
 
Methods inherited from class com.softslate.commerce.businessobjects.core.BaseBusinessProcessor
formatDateTime, formatPrice, getAppComponents, getAppSettings, getAttributeIDs, getBusinessObjectFactory, getDaoFactory, getProductIDs, getSettings, getUser, initialize, loadMatchingSkus, parseDateTime, parseResponseData, prepareRequestData, sendHTTPPost, setAppComponents, setAppSettings, setBusinessObjectFactory, setDaoFactory, setSettings, setUser, utils
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.softslate.commerce.businessobjects.core.BusinessObject
initialize
 

Field Detail

log

static org.apache.commons.logging.Log log

HOST_ADDRESS

public static final java.lang.String HOST_ADDRESS
See Also:
Constant Field Values

HOST_PORT

public static final java.lang.String HOST_PORT
See Also:
Constant Field Values

TIME_OUT

public static final java.lang.String TIME_OUT
See Also:
Constant Field Values

PROXY_ADDR

public static final java.lang.String PROXY_ADDR
See Also:
Constant Field Values

PROXY_PORT

public static final java.lang.String PROXY_PORT
See Also:
Constant Field Values

PROXY_LOGON

public static final java.lang.String PROXY_LOGON
See Also:
Constant Field Values

PROXY_PASSWD

public static final java.lang.String PROXY_PASSWD
See Also:
Constant Field Values

CERT_PATH

public static final java.lang.String CERT_PATH
See Also:
Constant Field Values

PARTNER

public static final java.lang.String PARTNER
See Also:
Constant Field Values

VENDOR

public static final java.lang.String VENDOR
See Also:
Constant Field Values

USER

public static final java.lang.String USER
See Also:
Constant Field Values

PASSWORD

public static final java.lang.String PASSWORD
See Also:
Constant Field Values

COMMENT1

public static final java.lang.String COMMENT1
See Also:
Constant Field Values

COMMENT2

public static final java.lang.String COMMENT2
See Also:
Constant Field Values

CUSTOMER_REF

public static final java.lang.String CUSTOMER_REF
See Also:
Constant Field Values

PO_NUMBER

public static final java.lang.String PO_NUMBER
See Also:
Constant Field Values

CUSTOMER_CODE

public static final java.lang.String CUSTOMER_CODE
See Also:
Constant Field Values

DESCRIPTION

public static final java.lang.String DESCRIPTION
See Also:
Constant Field Values
Constructor Detail

BasePayPalNVPProcessor

public BasePayPalNVPProcessor()
Method Detail

setPaymentVariablesToPersist

protected abstract void setPaymentVariablesToPersist(Payment payment,
                                                     java.util.Map parameters,
                                                     java.util.Map responseMap)

makePayPalCall

public java.lang.String makePayPalCall(java.util.Map parameters,
                                       java.lang.String keyPrefix)
                                throws java.lang.Exception
Throws:
java.lang.Exception

initializeConnection

public void initializeConnection(com.Verisign.payment.PFProAPI payflowProConnection,
                                 java.lang.String keyPrefix)
                          throws java.lang.Exception
Throws:
java.lang.Exception

preparePayPalAuthRequest

public java.util.Map preparePayPalAuthRequest(java.util.Map params,
                                              java.lang.String keyPrefix)
                                       throws java.lang.Exception
Throws:
java.lang.Exception

preparePaypalRequest

public java.util.Map preparePaypalRequest(java.util.Map parameters,
                                          java.lang.String keyPrefix)
                                   throws java.lang.Exception
Throws:
java.lang.Exception

preparePaypalRequestAcutalPayload

protected abstract java.util.Map preparePaypalRequestAcutalPayload(java.util.Map params,
                                                                   java.util.Map parameters)

preparePaypalRequestCommonPayload

public java.util.Map preparePaypalRequestCommonPayload(java.util.Map params,
                                                       java.util.Map parameters)
                                                throws java.lang.Exception
Throws:
java.lang.Exception

processSuccessfulTransaction

public void processSuccessfulTransaction(java.util.Map parameters,
                                         java.util.Map responseMap)
                                  throws java.lang.Exception
Throws:
java.lang.Exception


Copyright ? SoftSlate, LLC 2003?2005