Class PaymentProcessor

java.lang.Object
org.compiere.model.PaymentProcessor
Direct Known Subclasses:
PP_Authorize, PP_Dummy, PP_Optimal, PP_PayFlowPro, PP_PayFlowPro4, PP_PayPal

public abstract class PaymentProcessor extends Object
Payment Processor Abstract Class
Version:
$Id: PaymentProcessor.java,v 1.3 2006/07/30 00:51:02 jjanke Exp $
Author:
Jorg Janke
  • Field Details

  • Constructor Details

    • PaymentProcessor

      public PaymentProcessor()
      Public Constructor
  • Method Details

    • initialize

      public void initialize(MBankAccountProcessor mbap, PaymentInterface mp)
      Parameters:
      mbap -
      mp -
    • create

      public static PaymentProcessor create(MBankAccountProcessor mbap, PaymentInterface mp)
      Factory
      Parameters:
      mbap -
      mp -
      Returns:
      initialized PaymentProcessor or null
    • processCC

      public abstract boolean processCC() throws IllegalArgumentException
      Process CreditCard (no date check)
      Returns:
      true if processed successfully
      Throws:
      IllegalArgumentException
    • isProcessedOK

      public abstract boolean isProcessedOK()
      Payment is processed successfully
      Returns:
      true if OK
    • validate

      public String validate() throws IllegalArgumentException
      Validate payment before process.
      Returns:
      "" or Error AD_Message.
      Throws:
      IllegalArgumentException
    • validateAccountNo

      public String validateAccountNo()
      Standard account validation.
      Returns:
    • validateCheckNo

      public String validateCheckNo()
    • validateCreditCard

      public String validateCreditCard() throws IllegalArgumentException
      Throws:
      IllegalArgumentException
    • setTimeout

      public void setTimeout(int newTimeout)
      Set Timeout
      Parameters:
      newTimeout - timeout
    • getTimeout

      public int getTimeout()
      Get Timeout
      Returns:
      timeout
    • createPair

      protected String createPair(String name, BigDecimal value, int maxLength)
      Check for delimiter fields &= and add length of not encoded
      Parameters:
      name - name
      value - value
      maxLength - maximum length
      Returns:
      name[5]=value or name=value
    • createPair

      protected String createPair(String name, int value, int maxLength)
      Check for delimiter fields &= and add length of not encoded
      Parameters:
      name - name
      value - value
      maxLength - maximum length
      Returns:
      name[5]=value or name=value
    • createPair

      protected String createPair(String name, String value, int maxLength)
      Check for delimiter fields &= and add length of not encoded
      Parameters:
      name - name
      value - value
      maxLength - maximum length
      Returns:
      name[5]=value or name=value
    • setEncoded

      public void setEncoded(boolean doEncode)
      Set Encoded
      Parameters:
      doEncode - true if encode
    • isEncoded

      public boolean isEncoded()
      Is Encoded
      Returns:
      true if encoded
    • getConnectPostProperties

      protected Properties getConnectPostProperties(String urlString, String parameter)
      Get Connect Post Properties
      Parameters:
      urlString - POST url string
      parameter - parameter
      Returns:
      result as properties
    • connectPost

      protected String connectPost(String urlString, String parameter)
      Connect via Post
      Parameters:
      urlString - url destination (assuming https)
      parameter - parameter
      Returns:
      response or null if failure