/**
 *     This code was auto-generated by a Codezu.     
 *
 *     Changes to this file may cause incorrect behavior and will be lost if
 *     the code is regenerated.
 */
package com.mozu.api.contracts.paymentservice.extensibility.v1;

import java.util.List;
import java.util.HashMap;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import org.joda.time.DateTime;
import java.io.IOException;
import java.lang.ClassNotFoundException;
import com.mozu.api.contracts.paymentservice.extensibility.v1.ConnectionStatuses;
import com.mozu.api.contracts.paymentservice.extensibility.v1.KeyValueTuple;

/**
 *	Contains a credit response
 */
@JsonIgnoreProperties(ignoreUnknown = true)
public class GatewayCreditResponse implements Serializable
{
	// Default Serial Version UID
	private static final long serialVersionUID = 1L;

	/**
	 * Set this to true if the transaction is declined or fails for any reason.
	 */
	protected  Boolean isDeclined;

	public Boolean getIsDeclined() {
		return this.isDeclined;
	}

	public void setIsDeclined(Boolean isDeclined) {
		this.isDeclined = isDeclined;
	}

	/**
	 * Contains the response code from the gateway.
	 */
	protected  String responseCode;

	public String getResponseCode() {
		return this.responseCode;
	}

	public void setResponseCode(String responseCode) {
		this.responseCode = responseCode;
	}

	/**
	 * Contains the text for the response, eg, 'Insufficient funds'.
	 */
	protected  String responseText;

	public String getResponseText() {
		return this.responseText;
	}

	public void setResponseText(String responseText) {
		this.responseText = responseText;
	}

	/**
	 * Contains the id for the transaction provided by the gateway.
	 */
	protected  String transactionId;

	public String getTransactionId() {
		return this.transactionId;
	}

	public void setTransactionId(String transactionId) {
		this.transactionId = transactionId;
	}

	/**
	 * Contains information about the interaction with the gateway.
	 */
	protected  ConnectionStatuses remoteConnectionStatus;

	public ConnectionStatuses getRemoteConnectionStatus() {
		return this.remoteConnectionStatus;
	}

	public void setRemoteConnectionStatus(ConnectionStatuses remoteConnectionStatus) {
		this.remoteConnectionStatus = remoteConnectionStatus;
	}

	/**
	 * Contains information not in the object allowing flexibility.
	 */
	protected List<KeyValueTuple> responseData;
	public List<KeyValueTuple> getResponseData() {
		return this.responseData;
	}
	public void setResponseData(List<KeyValueTuple> responseData) {
		this.responseData = responseData;
	}


}
