package com.softwaremill.common.paypal.process;
import com.softwaremill.common.paypal.process.processors.PayPalProcessor;
import java.util.Date;
/**
* @Author: lukasz.zuchowski at gmail dot com
* Date: 05.04.12
* Time: 12:18
*/
public abstract class PayPalErrorHandler {
public static class ErrorMessage {
private StringBuilder message;
public ErrorMessage() {
message = new StringBuilder("There was something wrong with processing Paypal payment.")
.append(" Please investigate. Payment data below.\n\n")
.append("Timestamp: ").append(new Date()).append("\n\n");
}
public void appendPayPalParameters(PayPalParameters parameters) {
message.append("Parameters:\n\n").append(parameters).append("\n\n");
}
public void appendProcessingError(String processingError){
message.append("Processing error:\n\n").append(processingError);
}
@Override
public String toString() {
return message.toString();
}
}
public ErrorMessage prepareErrorMessage() {
return new ErrorMessage();
}
public abstract void processErrorMessage(ErrorMessage errorMessage);
}