private void appendPeriodicPurchaseInfo(StringBuilder req, PeriodicPurchaseInfo periodicPurchaseInfo) { if (periodicPurchaseInfo.getPerPaymentAmount() >= 0) { this.appendAmount(req,periodicPurchaseInfo.getPerPaymentAmount()); } if (periodicPurchaseInfo.getState() != null) { this.appendPeriodicPurchaseState(req, periodicPurchaseInfo.getState()); } if (periodicPurchaseInfo.getSchedule() != null) { this.appendPeriodicPurchaseSchedule(req, periodicPurchaseInfo.getSchedule()); } if (periodicPurchaseInfo.getOrderId() != null) { this.appendOrderId(req, periodicPurchaseInfo.getOrderId()); } if (periodicPurchaseInfo.getCustomerId() != null) { this.appendParam(req, "customerId", periodicPurchaseInfo.getCustomerId()); } if (periodicPurchaseInfo.getStartDate() != DateTime.MinValue) { this.appendStartDate(req, periodicPurchaseInfo.getStartDate()); } if (periodicPurchaseInfo.getEndDate() != DateTime.MinValue) { this.appendEndDate(req, periodicPurchaseInfo.getEndDate()); } if (periodicPurchaseInfo.getNextPaymentDate() != DateTime.MinValue) { this.appendNextPaymentDate(req, periodicPurchaseInfo.getNextPaymentDate()); } if (periodicPurchaseInfo.getExecutionType() != null) { this.appendParam(req, "periodicPurchaseExecutionType", periodicPurchaseInfo.getExecutionType()); } }
public CreditCardReceipt recurringPurchaseHelper(PeriodicPurchaseInfo periodicPurchaseInfo, Object creditCardSpecifier, VerificationRequest verificationRequest, bool isActualCreditCard) { if (periodicPurchaseInfo.getOrderId() == null) { return new CreditCardReceipt(REQ_INVALID_REQUEST, "orderId is required", null); } // create the request string StringBuilder req = new StringBuilder(); try { this.appendHeader(req, "recurringPurchase"); this.appendOperationType(req, "create"); if (isActualCreditCard) { this.appendCreditCard(req, (CreditCard) creditCardSpecifier); } else { this.appendStorageTokenId(req, creditCardSpecifier.ToString()); } this.appendPeriodicPurchaseInfo(req, periodicPurchaseInfo); this.appendVerificationRequest(req, verificationRequest); } catch (Exception e) { return new CreditCardReceipt(REQ_INVALID_REQUEST, e.ToString(), null); } return this.send(req); }