
ru.paymentgate.engine.webservices.merchant.OrderStatusResponse Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of abyss-acquiring Show documentation
Show all versions of abyss-acquiring Show documentation
Internet acquiring Web Service client library
/**
* OrderStatusResponse.java
*
* This file was auto-generated from WSDL
* by the Apache Axis2 version: 1.7.5 Built on : May 06, 2017 (03:45:50 BST)
*/
package ru.paymentgate.engine.webservices.merchant;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import javax.xml.namespace.NamespaceContext;
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
import javax.xml.stream.XMLStreamWriter;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axis2.databinding.ADBBean;
import org.apache.axis2.databinding.ADBDataSource;
import org.apache.axis2.databinding.ADBException;
import org.apache.axis2.databinding.utils.BeanUtil;
import org.apache.axis2.databinding.utils.ConverterUtil;
import ru.abyss.acquiring.soap.MerchantService;
/**
* Результат запроса состояния зарегистрированного заказа
*
* @see {@link MerchantService#getOrderStatus(GetOrderStatus)}
*/
public class OrderStatusResponse extends AbstractResponse implements ADBBean {
private static final long serialVersionUID = -2888428689739151085L;
/**
* Дополнительные параметры заказа
*/
protected ServiceParam[] localParams;
protected boolean localParamsTracker = false;
/**
* field for OrderBundle
*/
protected OrderBundle localOrderBundle;
protected boolean localOrderBundleTracker = false;
/**
* По значению этого параметра определяется состояние заказа в платежной системе.
* Список возможных значений приведен в таблице ниже. Отсутствует, если заказ не был найден.
*
*
* Номер состояния Описание
*
* 0 Заказ зарегистрирован, но не оплачен
*
* 1 Предавторизованная сумма захолдирована (для двухстадийных платежей)
*
* 2 Проведена полная авторизация суммы заказа
*
* 3 Авторизация отменена
*
* 4 По транзакции была проведена операция возврата
*
* 5 Инициирована авторизация через ACS банка-эмитента
*
* 6 Авторизация отклонена
*
*
*/
protected int localOrderStatus;
/**
* Номер (идентификатор) заказа в системе магазина.
* Обязательное поле. Максимальная длина - 32 символа.
*/
protected String localOrderNumber;
/**
* Маскированный номер карты, которая использовалась для оплаты. Указан только после оплаты заказа.
* Максимальная длина - 19 символа.
*/
protected String localPan;
/**
* field for Hpan This was an Attribute!
*/
protected String localHpan;
/**
* Срок истечения действия карты в формате YYYYMM. Указан только после оплаты заказа.
* Максимальная длина - 6 цифр.
*/
protected String localExpiration;
/**
* Имя держателя карты. Указан только после оплаты заказа.
* Максимальная длина - 64 символа.
*/
protected String localCardholderName;
/**
* Сумма платежа в копейках (или центах).
* Максимальная длина - 20 цифр.
*/
protected long localAmount;
/**
* Код валюты платежа ISO 4217. Если не указан, считается равным коду валюты по умолчанию.
* Обязательное поле. Максимальная длина - 3 символа.
*/
protected String localCurrency;
/**
* Код авторизации МПС. Поле фиксированной длины (6 символов), может содержать цифры и латинские буквы.
*/
protected String localApprovalCode;
/**
* Это поле является устаревшим. Его значение всегда равно "2", независимо от состояния заказа и кода авторизации процессинговой системы.
* Максимальная длина - 3 цифры.
*
* @deprecated Cтатус заказа необходимо определять по значению параметра {@link #getOrderStatus()}.
*/
@Deprecated
protected int localAuthCode;
/**
* IP адрес пользователя, который оплачивал заказ.
* Максимальная длина - 15 символов.
*/
protected String localIp;
/**
* Дата регистрации заказа
*/
protected Calendar localDate;
/**
* Описание заказа, переданное при его регистрации.
* Обязательное поле. Максимальная длина - 512 символов.
*/
protected String localOrderDescription;
/**
* field for MerchantLogin This was an Attribute!
*/
protected String localMerchantLogin;
/**
* Расшифровка кода ответа на языке, переданном в параметре Language в запросе.
* Обязательное поле. Максимальная длина - 512 символов.
*/
protected String localActionCodeDescription;
/**
* Номер (идентификатор) клиента в системе магазина, переданный при регистрации заказа.
* Присутствует только если магазину разрешено создание связок.
* Максимальная длина - 255 символов.
*/
protected String localClientId;
/**
* Идентификатор связки созданной при оплате заказа или использованной для оплаты.
* Присутствует только если магазину разрешено создание связок.
* Максимальная длина - 255 символов.
*/
protected String localBindingId;
public boolean isParamsSpecified() {
return localParamsTracker;
}
/**
* Дополнительные параметры заказа
*/
public ServiceParam[] getParams() {
return localParams;
}
/**
* validate the array for Params
*/
protected void validateParams(ServiceParam[] param) {
}
/**
* Дополнительные параметры заказа
*/
public void setParams(ServiceParam[] param) {
validateParams(param);
localParamsTracker = param != null;
this.localParams = param;
}
/**
* Добавить дополнительный параметр заказа
*/
public void addParams(ServiceParam param) {
if (localParams == null) {
localParams = new ServiceParam[] {};
}
// update the setting tracker
localParamsTracker = true;
@SuppressWarnings("unchecked")
List list = ConverterUtil.toList(localParams);
list.add(param);
this.localParams = list.toArray(new ServiceParam[list.size()]);
}
public boolean isOrderBundleSpecified() {
return localOrderBundleTracker;
}
/**
* Auto generated getter method
*
* @return OrderBundle
*/
public OrderBundle getOrderBundle() {
return localOrderBundle;
}
/**
* Auto generated setter method
*
* @param param
* OrderBundle
*/
public void setOrderBundle(OrderBundle param) {
localOrderBundleTracker = param != null;
this.localOrderBundle = param;
}
/**
* По значению этого параметра определяется состояние заказа в платежной системе.
* Список возможных значений приведен в таблице ниже. Отсутствует, если заказ не был найден.
*
*
* Номер состояния Описание
*
* 0 Заказ зарегистрирован, но не оплачен
*
* 1 Предавторизованная сумма захолдирована (для двухстадийных платежей)
*
* 2 Проведена полная авторизация суммы заказа
*
* 3 Авторизация отменена
*
* 4 По транзакции была проведена операция возврата
*
* 5 Инициирована авторизация через ACS банка-эмитента
*
* 6 Авторизация отклонена
*
*
*/
public int getOrderStatus() {
return localOrderStatus;
}
/**
* По значению этого параметра определяется состояние заказа в платежной системе.
* Список возможных значений приведен в таблице ниже. Отсутствует, если заказ не был найден.
*
*
* Номер состояния Описание
*
* 0 Заказ зарегистрирован, но не оплачен
*
* 1 Предавторизованная сумма захолдирована (для двухстадийных платежей)
*
* 2 Проведена полная авторизация суммы заказа
*
* 3 Авторизация отменена
*
* 4 По транзакции была проведена операция возврата
*
* 5 Инициирована авторизация через ACS банка-эмитента
*
* 6 Авторизация отклонена
*
*
*/
public void setOrderStatus(int param) {
this.localOrderStatus = param;
}
/**
* Номер (идентификатор) заказа в системе магазина.
* Обязательное поле. Максимальная длина - 32 символа.
*/
public String getOrderNumber() {
return localOrderNumber;
}
/**
* Номер (идентификатор) заказа в системе магазина.
* Обязательное поле. Максимальная длина - 32 символа.
*/
public void setOrderNumber(String param) {
this.localOrderNumber = param;
}
/**
* Маскированный номер карты, которая использовалась для оплаты. Указан только после оплаты заказа.
* Максимальная длина - 19 символа.
*/
public String getPan() {
return localPan;
}
/**
* Маскированный номер карты, которая использовалась для оплаты. Указан только после оплаты заказа.
* Максимальная длина - 19 символа.
*/
public void setPan(String param) {
this.localPan = param;
}
/**
* Auto generated getter method
*
* @return String
*/
public String getHpan() {
return localHpan;
}
/**
* Auto generated setter method
*
* @param param
* Hpan
*/
public void setHpan(String param) {
this.localHpan = param;
}
/**
* Срок истечения действия карты в формате YYYYMM. Указан только после оплаты заказа.
* Максимальная длина - 6 цифр.
*/
public String getExpiration() {
return localExpiration;
}
/**
* Срок истечения действия карты в формате YYYYMM. Указан только после оплаты заказа.
* Максимальная длина - 6 цифр.
*/
public void setExpiration(String param) {
this.localExpiration = param;
}
/**
* Имя держателя карты. Указан только после оплаты заказа.
* Максимальная длина - 64 символа.
*/
public String getCardholderName() {
return localCardholderName;
}
/**
* Имя держателя карты. Указан только после оплаты заказа.
* Максимальная длина - 64 символа.
*/
public void setCardholderName(String param) {
this.localCardholderName = param;
}
/**
* Сумма платежа в копейках (или центах).
* Максимальная длина - 20 цифр.
*/
public long getAmount() {
return localAmount;
}
/**
* Сумма платежа в копейках (или центах).
* Максимальная длина - 20 цифр.
*/
public void setAmount(long param) {
this.localAmount = param;
}
/**
* Код валюты платежа ISO 4217. Если не указан, считается равным коду валюты по умолчанию.
* Обязательное поле. Максимальная длина - 3 символа.
*/
public String getCurrency() {
return localCurrency;
}
/**
* Код валюты платежа ISO 4217. Если не указан, считается равным коду валюты по умолчанию.
* Обязательное поле. Максимальная длина - 3 символа.
*/
public void setCurrency(String param) {
this.localCurrency = param;
}
/**
* Код авторизации МПС. Поле фиксированной длины (6 символов), может содержать цифры и латинские буквы.
*/
public String getApprovalCode() {
return localApprovalCode;
}
/**
* Код авторизации МПС. Поле фиксированной длины (6 символов), может содержать цифры и латинские буквы.
*/
public void setApprovalCode(String param) {
this.localApprovalCode = param;
}
/**
* Это поле является устаревшим. Его значение всегда равно "2", независимо от состояния заказа и кода авторизации процессинговой системы.
* Максимальная длина - 3 цифры.
*
* @deprecated Cтатус заказа необходимо определять по значению параметра {@link #getOrderStatus()}.
*/
@Deprecated
public int getAuthCode() {
return localAuthCode;
}
/**
* Это поле является устаревшим. Его значение всегда равно "2", независимо от состояния заказа и кода авторизации процессинговой системы.
* Максимальная длина - 3 цифры.
*
* @deprecated Cтатус заказа необходимо определять по значению параметра {@link #getOrderStatus()}.
*/
@Deprecated
public void setAuthCode(int param) {
this.localAuthCode = param;
}
/**
* IP адрес пользователя, который оплачивал заказ.
* Максимальная длина - 15 символов.
*/
public String getIp() {
return localIp;
}
/**
* IP адрес пользователя, который оплачивал заказ.
* Максимальная длина - 15 символов.
*/
public void setIp(String param) {
this.localIp = param;
}
/**
* Дата регистрации заказа
*/
public Calendar getDate() {
return localDate;
}
/**
* Дата регистрации заказа
*/
public void setDate(Calendar param) {
this.localDate = param;
}
/**
* Описание заказа, переданное при его регистрации.
* Обязательное поле. Максимальная длина - 512 символов.
*/
public String getOrderDescription() {
return localOrderDescription;
}
/**
* Описание заказа, переданное при его регистрации.
* Обязательное поле. Максимальная длина - 512 символов.
*/
public void setOrderDescription(String param) {
this.localOrderDescription = param;
}
/**
* Auto generated getter method
*
* @return String
*/
public String getMerchantLogin() {
return localMerchantLogin;
}
/**
* Auto generated setter method
*
* @param param
* MerchantLogin
*/
public void setMerchantLogin(String param) {
this.localMerchantLogin = param;
}
/**
* Расшифровка кода ответа на языке, переданном в параметре Language в запросе.
* Обязательное поле. Максимальная длина - 512 символов.
*/
public String getActionCodeDescription() {
return localActionCodeDescription;
}
/**
* Расшифровка кода ответа на языке, переданном в параметре Language в запросе.
* Обязательное поле. Максимальная длина - 512 символов.
*/
public void setActionCodeDescription(String param) {
this.localActionCodeDescription = param;
}
/**
* Номер (идентификатор) клиента в системе магазина, переданный при регистрации заказа.
* Присутствует только если магазину разрешено создание связок.
* Максимальная длина - 255 символов.
*/
public String getClientId() {
return localClientId;
}
/**
* Номер (идентификатор) клиента в системе магазина, переданный при регистрации заказа.
* Присутствует только если магазину разрешено создание связок.
* Максимальная длина - 255 символов.
*/
public void setClientId(String param) {
this.localClientId = param;
}
/**
* Идентификатор связки созданной при оплате заказа или использованной для оплаты.
* Присутствует только если магазину разрешено создание связок.
* Максимальная длина - 255 символов.
*/
public String getBindingId() {
return localBindingId;
}
/**
* Идентификатор связки созданной при оплате заказа или использованной для оплаты.
* Присутствует только если магазину разрешено создание связок.
* Максимальная длина - 255 символов.
*/
public void setBindingId(String param) {
this.localBindingId = param;
}
/**
* Коды ошибок:
*
*
* Значение Описание
*
* 0 Обработка запроса прошла без системных ошибок
*
* 2 Платёж отклонён
*
* 5 Доступ запрещён
*
* 5 Пользователь должен сменить свой пароль
*
* 5 [orderId] не указан
*
* 6 Неизвестный номер заказа
*
* 7 Системная ошибка
*
*
*/
@Override
public int getErrorCode() {
return super.getErrorCode();
}
/**
*
* @param parentQName
* @param factory
* @return OMElement
*/
public OMElement getOMElement(final QName parentQName, final OMFactory factory) throws ADBException {
return factory.createOMElement(new ADBDataSource(this, parentQName));
}
public void serialize(final QName parentQName, XMLStreamWriter xmlWriter) throws XMLStreamException, ADBException {
serialize(parentQName, xmlWriter, false);
}
public void serialize(final QName parentQName, XMLStreamWriter xmlWriter, boolean serializeType)
throws XMLStreamException, ADBException {
String prefix = null;
String namespace = null;
prefix = parentQName.getPrefix();
namespace = parentQName.getNamespaceURI();
writeStartElement(prefix, namespace, parentQName.getLocalPart(), xmlWriter);
String namespacePrefix = registerPrefix(xmlWriter, "http://engine.paymentgate.ru/webservices/merchant");
if ((namespacePrefix != null) && (namespacePrefix.trim().length() > 0)) {
writeAttribute("xsi", "http://www.w3.org/2001/XMLSchema-instance", "type",
namespacePrefix + ":orderStatusResponse", xmlWriter);
} else {
writeAttribute("xsi", "http://www.w3.org/2001/XMLSchema-instance", "type", "orderStatusResponse",
xmlWriter);
}
if (localErrorCode != Integer.MIN_VALUE) {
writeAttribute("", "errorCode", ConverterUtil.convertToString(localErrorCode), xmlWriter);
} else {
throw new ADBException("required attribute localErrorCode is null");
}
if (localErrorMessage != null) {
writeAttribute("", "errorMessage", ConverterUtil.convertToString(localErrorMessage), xmlWriter);
}
if (localOrderStatus != Integer.MIN_VALUE) {
writeAttribute("", "orderStatus", ConverterUtil.convertToString(localOrderStatus), xmlWriter);
} else {
throw new ADBException("required attribute localOrderStatus is null");
}
if (localOrderNumber != null) {
writeAttribute("", "orderNumber", ConverterUtil.convertToString(localOrderNumber), xmlWriter);
}
if (localPan != null) {
writeAttribute("", "pan", ConverterUtil.convertToString(localPan), xmlWriter);
}
if (localHpan != null) {
writeAttribute("", "hpan", ConverterUtil.convertToString(localHpan), xmlWriter);
}
if (localExpiration != null) {
writeAttribute("", "expiration", ConverterUtil.convertToString(localExpiration), xmlWriter);
}
if (localCardholderName != null) {
writeAttribute("", "cardholderName", ConverterUtil.convertToString(localCardholderName), xmlWriter);
}
if (localAmount != Long.MIN_VALUE) {
writeAttribute("", "amount", ConverterUtil.convertToString(localAmount), xmlWriter);
} else {
throw new ADBException("required attribute localAmount is null");
}
if (localCurrency != null) {
writeAttribute("", "currency", ConverterUtil.convertToString(localCurrency), xmlWriter);
}
if (localApprovalCode != null) {
writeAttribute("", "approvalCode", ConverterUtil.convertToString(localApprovalCode), xmlWriter);
}
if (localAuthCode != Integer.MIN_VALUE) {
writeAttribute("", "authCode", ConverterUtil.convertToString(localAuthCode), xmlWriter);
} else {
throw new ADBException("required attribute localAuthCode is null");
}
if (localIp != null) {
writeAttribute("", "ip", ConverterUtil.convertToString(localIp), xmlWriter);
}
if (localDate != null) {
writeAttribute("", "date", ConverterUtil.convertToString(localDate), xmlWriter);
}
if (localOrderDescription != null) {
writeAttribute("", "orderDescription", ConverterUtil.convertToString(localOrderDescription), xmlWriter);
}
if (localMerchantLogin != null) {
writeAttribute("", "merchantLogin", ConverterUtil.convertToString(localMerchantLogin), xmlWriter);
}
if (localActionCodeDescription != null) {
writeAttribute("", "actionCodeDescription", ConverterUtil.convertToString(localActionCodeDescription),
xmlWriter);
}
if (localClientId != null) {
writeAttribute("", "clientId", ConverterUtil.convertToString(localClientId), xmlWriter);
}
if (localBindingId != null) {
writeAttribute("", "bindingId", ConverterUtil.convertToString(localBindingId), xmlWriter);
}
if (localOperationsTracker) {
if (localOperations != null) {
for (int i = 0; i < localOperations.length; i++) {
if (localOperations[i] != null) {
localOperations[i].serialize(new QName("", "operations"), xmlWriter);
} else {
writeStartElement(null, "", "operations", xmlWriter);
// write the nil attribute
writeAttribute("xsi", "http://www.w3.org/2001/XMLSchema-instance", "nil", "1", xmlWriter);
xmlWriter.writeEndElement();
}
}
} else {
writeStartElement(null, "", "operations", xmlWriter);
// write the nil attribute
writeAttribute("xsi", "http://www.w3.org/2001/XMLSchema-instance", "nil", "1", xmlWriter);
xmlWriter.writeEndElement();
}
}
if (localParamsTracker) {
if (localParams != null) {
for (int i = 0; i < localParams.length; i++) {
if (localParams[i] != null) {
localParams[i].serialize(new QName("", "params"), xmlWriter);
} else {
// we don't have to do any thing since minOccures is
// zero
}
}
} else {
throw new ADBException("params cannot be null!!");
}
}
if (localOrderBundleTracker) {
if (localOrderBundle == null) {
throw new ADBException("orderBundle cannot be null!!");
}
localOrderBundle.serialize(new QName("", "orderBundle"), xmlWriter);
}
xmlWriter.writeEndElement();
}
private static String generatePrefix(String namespace) {
if (namespace.equals("http://engine.paymentgate.ru/webservices/merchant")) {
return "ns1";
}
return BeanUtil.getUniquePrefix();
}
/**
* Utility method to write an element start tag.
*/
private void writeStartElement(String prefix, String namespace, String localPart, XMLStreamWriter xmlWriter)
throws XMLStreamException {
String writerPrefix = xmlWriter.getPrefix(namespace);
if (writerPrefix != null) {
xmlWriter.writeStartElement(writerPrefix, localPart, namespace);
} else {
if (namespace.length() == 0) {
prefix = "";
} else if (prefix == null) {
prefix = generatePrefix(namespace);
}
xmlWriter.writeStartElement(prefix, localPart, namespace);
xmlWriter.writeNamespace(prefix, namespace);
xmlWriter.setPrefix(prefix, namespace);
}
}
/**
* Util method to write an attribute with the ns prefix
*/
private void writeAttribute(String prefix, String namespace, String attName, String attValue,
XMLStreamWriter xmlWriter) throws XMLStreamException {
String writerPrefix = xmlWriter.getPrefix(namespace);
if (writerPrefix != null) {
xmlWriter.writeAttribute(writerPrefix, namespace, attName, attValue);
} else {
xmlWriter.writeNamespace(prefix, namespace);
xmlWriter.setPrefix(prefix, namespace);
xmlWriter.writeAttribute(prefix, namespace, attName, attValue);
}
}
/**
* Util method to write an attribute without the ns prefix
*/
private void writeAttribute(String namespace, String attName, String attValue, XMLStreamWriter xmlWriter)
throws XMLStreamException {
if (namespace.equals("")) {
xmlWriter.writeAttribute(attName, attValue);
} else {
xmlWriter.writeAttribute(registerPrefix(xmlWriter, namespace), namespace, attName, attValue);
}
}
/**
* Register a namespace prefix
*/
private String registerPrefix(XMLStreamWriter xmlWriter, String namespace) throws XMLStreamException {
String prefix = xmlWriter.getPrefix(namespace);
if (prefix == null) {
prefix = generatePrefix(namespace);
NamespaceContext nsContext = xmlWriter.getNamespaceContext();
while (true) {
String uri = nsContext.getNamespaceURI(prefix);
if ((uri == null) || (uri.length() == 0)) {
break;
}
prefix = BeanUtil.getUniquePrefix();
}
xmlWriter.writeNamespace(prefix, namespace);
xmlWriter.setPrefix(prefix, namespace);
}
return prefix;
}
/**
* Factory class that keeps the parse method
*/
public static class Factory {
/**
* static method to create the object Precondition: If this object is an
* element, the current or next start element starts this object and any
* intervening reader events are ignorable If this object is not an
* element, it is a complex type and the reader is at the event just
* after the outer start element Postcondition: If this object is an
* element, the reader is positioned at its end element If this object
* is a complex type, the reader is positioned at the end element of its
* outer element
*/
public static OrderStatusResponse parse(XMLStreamReader reader) throws Exception {
OrderStatusResponse object = new OrderStatusResponse();
String nillableValue = null;
try {
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if (reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance", "type") != null) {
String fullTypeName = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance", "type");
if (fullTypeName != null) {
String nsPrefix = null;
if (fullTypeName.indexOf(":") > -1) {
nsPrefix = fullTypeName.substring(0, fullTypeName.indexOf(":"));
}
nsPrefix = (nsPrefix == null) ? "" : nsPrefix;
String type = fullTypeName.substring(fullTypeName.indexOf(":") + 1);
if (!"orderStatusResponse".equals(type)) {
// find namespace for the prefix
String nsUri = reader.getNamespaceContext().getNamespaceURI(nsPrefix);
return (OrderStatusResponse) ExtensionMapper.getTypeObject(nsUri, type, reader);
}
}
}
// handle attribute "errorCode"
String tempAttribErrorCode = reader.getAttributeValue(null, "errorCode");
if (tempAttribErrorCode != null) {
object.setErrorCode(ConverterUtil.convertToInt(tempAttribErrorCode));
} else {
throw new ADBException("Required attribute errorCode is missing");
}
// handle attribute "errorMessage"
String tempAttribErrorMessage = reader.getAttributeValue(null, "errorMessage");
if (tempAttribErrorMessage != null) {
object.setErrorMessage(ConverterUtil.convertToString(tempAttribErrorMessage));
}
// handle attribute "orderStatus"
String tempAttribOrderStatus = reader.getAttributeValue(null, "orderStatus");
if (tempAttribOrderStatus != null) {
object.setOrderStatus(ConverterUtil.convertToInt(tempAttribOrderStatus));
} else {
throw new ADBException("Required attribute orderStatus is missing");
}
// handle attribute "orderNumber"
String tempAttribOrderNumber = reader.getAttributeValue(null, "orderNumber");
if (tempAttribOrderNumber != null) {
object.setOrderNumber(ConverterUtil.convertToString(tempAttribOrderNumber));
}
// handle attribute "pan"
String tempAttribPan = reader.getAttributeValue(null, "pan");
if (tempAttribPan != null) {
object.setPan(ConverterUtil.convertToString(tempAttribPan));
}
// handle attribute "hpan"
String tempAttribHpan = reader.getAttributeValue(null, "hpan");
if (tempAttribHpan != null) {
object.setHpan(ConverterUtil.convertToString(tempAttribHpan));
}
// handle attribute "expiration"
String tempAttribExpiration = reader.getAttributeValue(null, "expiration");
if (tempAttribExpiration != null) {
object.setExpiration(ConverterUtil.convertToString(tempAttribExpiration));
}
// handle attribute "cardholderName"
String tempAttribCardholderName = reader.getAttributeValue(null, "cardholderName");
if (tempAttribCardholderName != null) {
object.setCardholderName(ConverterUtil.convertToString(tempAttribCardholderName));
}
// handle attribute "amount"
String tempAttribAmount = reader.getAttributeValue(null, "amount");
if (tempAttribAmount != null) {
object.setAmount(ConverterUtil.convertToLong(tempAttribAmount));
} else {
throw new ADBException("Required attribute amount is missing");
}
// handle attribute "currency"
String tempAttribCurrency = reader.getAttributeValue(null, "currency");
if (tempAttribCurrency != null) {
object.setCurrency(ConverterUtil.convertToString(tempAttribCurrency));
}
// handle attribute "approvalCode"
String tempAttribApprovalCode = reader.getAttributeValue(null, "approvalCode");
if (tempAttribApprovalCode != null) {
object.setApprovalCode(ConverterUtil.convertToString(tempAttribApprovalCode));
}
// handle attribute "authCode"
String tempAttribAuthCode = reader.getAttributeValue(null, "authCode");
if (tempAttribAuthCode != null) {
object.setAuthCode(ConverterUtil.convertToInt(tempAttribAuthCode));
} else {
throw new ADBException("Required attribute authCode is missing");
}
// handle attribute "ip"
String tempAttribIp = reader.getAttributeValue(null, "ip");
if (tempAttribIp != null) {
object.setIp(ConverterUtil.convertToString(tempAttribIp));
}
// handle attribute "date"
String tempAttribDate = reader.getAttributeValue(null, "date");
if (tempAttribDate != null) {
object.setDate(ConverterUtil.convertToDateTime(tempAttribDate));
}
// handle attribute "orderDescription"
String tempAttribOrderDescription = reader.getAttributeValue(null, "orderDescription");
if (tempAttribOrderDescription != null) {
object.setOrderDescription(ConverterUtil.convertToString(tempAttribOrderDescription));
}
// handle attribute "merchantLogin"
String tempAttribMerchantLogin = reader.getAttributeValue(null, "merchantLogin");
if (tempAttribMerchantLogin != null) {
object.setMerchantLogin(ConverterUtil.convertToString(tempAttribMerchantLogin));
}
// handle attribute "actionCodeDescription"
String tempAttribActionCodeDescription = reader.getAttributeValue(null, "actionCodeDescription");
if (tempAttribActionCodeDescription != null) {
object.setActionCodeDescription(ConverterUtil.convertToString(tempAttribActionCodeDescription));
}
// handle attribute "clientId"
String tempAttribClientId = reader.getAttributeValue(null, "clientId");
if (tempAttribClientId != null) {
object.setClientId(ConverterUtil.convertToString(tempAttribClientId));
}
// handle attribute "bindingId"
String tempAttribBindingId = reader.getAttributeValue(null, "bindingId");
if (tempAttribBindingId != null) {
object.setBindingId(ConverterUtil.convertToString(tempAttribBindingId));
}
reader.next();
ArrayList list1 = new ArrayList();
ArrayList list2 = new ArrayList();
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if ((reader.isStartElement() && new QName("", "operations").equals(reader.getName()))
|| new QName("", "operations").equals(reader.getName())) {
// Process the array and step past its final element's end.
nillableValue = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance", "nil");
if ("true".equals(nillableValue) || "1".equals(nillableValue)) {
list1.add(null);
reader.next();
} else {
list1.add(LoyaltyOperation.Factory.parse(reader));
}
// loop until we find a start element that is not part of
// this array
boolean loopDone1 = false;
while (!loopDone1) {
// We should be at the end element, but make sure
while (!reader.isEndElement())
reader.next();
// Step out of this element
reader.next();
// Step to next element event.
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if (reader.isEndElement()) {
// two continuous end elements means we are exiting
// the xml structure
loopDone1 = true;
} else {
if (new QName("", "operations").equals(reader.getName())) {
nillableValue = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance",
"nil");
if ("true".equals(nillableValue) || "1".equals(nillableValue)) {
list1.add(null);
reader.next();
} else {
list1.add(LoyaltyOperation.Factory.parse(reader));
}
} else {
loopDone1 = true;
}
}
}
// call the converter utility to convert and set the array
object.setOperations(
(LoyaltyOperation[]) ConverterUtil.convertToArray(LoyaltyOperation.class, list1));
} // End of if for expected property start element
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if ((reader.isStartElement() && new QName("", "params").equals(reader.getName()))
|| new QName("", "params").equals(reader.getName())) {
// Process the array and step past its final element's end.
list2.add(ServiceParam.Factory.parse(reader));
// loop until we find a start element that is not part of
// this array
boolean loopDone2 = false;
while (!loopDone2) {
// We should be at the end element, but make sure
while (!reader.isEndElement())
reader.next();
// Step out of this element
reader.next();
// Step to next element event.
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if (reader.isEndElement()) {
// two continuous end elements means we are exiting
// the xml structure
loopDone2 = true;
} else {
if (new QName("", "params").equals(reader.getName())) {
list2.add(ServiceParam.Factory.parse(reader));
} else {
loopDone2 = true;
}
}
}
// call the converter utility to convert and set the array
object.setParams((ServiceParam[]) ConverterUtil.convertToArray(ServiceParam.class, list2));
} // End of if for expected property start element
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if ((reader.isStartElement() && new QName("", "orderBundle").equals(reader.getName()))
|| new QName("", "orderBundle").equals(reader.getName())) {
object.setOrderBundle(OrderBundle.Factory.parse(reader));
reader.next();
} // End of if for expected property start element
while (!reader.isStartElement() && !reader.isEndElement())
reader.next();
if (reader.isStartElement()) {
// 2 - A start element we are not expecting indicates a
// trailing invalid property
throw new ADBException("Unexpected subelement " + reader.getName());
}
} catch (XMLStreamException e) {
throw new Exception(e);
}
return object;
}
} // end of factory class
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy