1 14 package org.compiere.model; 15 16 import java.sql.*; 17 import java.math.*; 18 import java.io.*; 19 import java.util.*; 20 21 import org.compiere.util.*; 22 23 29 public abstract class PaymentProcessor 30 { 31 34 public PaymentProcessor() 35 { 36 } 38 39 protected Logger log = Logger.getCLogger (getClass()); 40 static private Logger s_log = Logger.getCLogger (PaymentProcessor.class); 41 42 48 public static PaymentProcessor create (MPaymentProcessor mpp, MPayment mp) 49 { 50 s_log.info("create for " + mpp); 51 String className = mpp.getPayProcessorClass(); 52 if (className == null || className.length() == 0) 53 { 54 s_log.error("create - no PaymentProcessor class name in " + mpp); 55 return null; 56 } 57 PaymentProcessor myProcessor = null; 59 try 60 { 61 Class ppClass = Class.forName(className); 62 if (ppClass != null) 63 myProcessor = (PaymentProcessor)ppClass.newInstance(); 64 } 65 catch (Error e1) { 67 s_log.error("create " + className + " - Error=" + e1.getMessage()); 68 return null; 69 } 70 catch (Exception e2) 71 { 72 s_log.error("create " + className, e2); 73 return null; 74 } 75 if (myProcessor == null) 76 { 77 s_log.error("create - no class"); 78 return null; 79 } 80 81 myProcessor.p_mpp = mpp; 83 myProcessor.p_mp = mp; 84 return myProcessor; 86 } 88 89 90 protected MPaymentProcessor p_mpp = null; 91 protected MPayment p_mp = null; 92 private int m_timeout = 30; 94 95 96 97 102 public abstract boolean processCC () throws IllegalArgumentException ; 103 104 108 public abstract boolean isProcessedOK(); 109 110 111 112 116 public void setTimeout(int newTimeout) 117 { 118 m_timeout = newTimeout; 119 } 120 public int getTimeout() 121 { 122 return m_timeout; 123 } 124 125 } | Popular Tags |