Package com.braintreegateway

Source Code of com.braintreegateway.TransparentRedirectGateway

package com.braintreegateway;

import com.braintreegateway.util.Http;
import com.braintreegateway.util.NodeWrapper;
import com.braintreegateway.util.StringUtils;
import com.braintreegateway.util.TrUtil;

public class TransparentRedirectGateway {
    public static String CREATE_TRANSACTION = "create_transaction";
    public static String CREATE_CUSTOMER = "create_customer";
    public static String UPDATE_CUSTOMER = "update_customer";
    public static String CREATE_PAYMENT_METHOD = "create_payment_method";
    public static String UPDATE_PAYMENT_METHOD = "update_payment_method";
   
    private Http http;
    private Configuration configuration;
   
    public TransparentRedirectGateway(Http http, Configuration configuration) {
        this.http = http;
        this.configuration = configuration;
    }
   
    public String url() {
        return new TrUtil(configuration).url();
    }
   
    public Result<CreditCard> confirmCreditCard(String queryString) {
        return confirmTr(CreditCard.class, queryString);
    }
   
    public Result<Customer> confirmCustomer(String queryString) {
        return confirmTr(Customer.class, queryString);
    }
   
    public Result<Transaction> confirmTransaction(String queryString) {
        return confirmTr(Transaction.class, queryString);
    }
   
    public String trData(Request trData, String redirectURL) {
        return new TrUtil(configuration).buildTrData(trData, redirectURL);
    }
   
    private <T> Result<T> confirmTr(Class<T> klass, String queryString) {
        TransparentRedirectRequest trRequest = new TransparentRedirectRequest(configuration, queryString);
        NodeWrapper node = http.post("/transparent_redirect_requests/" + trRequest.getId() + "/confirm", trRequest);
        if (!node.getElementName().equals(StringUtils.classToXMLName(klass)) && !node.getElementName().equals("api-error-response")) {
            throw new IllegalArgumentException("You attemped to confirm a " + StringUtils.classToXMLName(klass) + ", but received a " + node.getElementName() + ".");
        }
       
        return new Result<T>(node, klass);
    }
}
TOP

Related Classes of com.braintreegateway.TransparentRedirectGateway

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.