All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ru.tinkoff.acquiring.sdk.requests.AttachCardRequest Maven / Gradle / Ivy

package ru.tinkoff.acquiring.sdk.requests;

import java.util.HashMap;
import java.util.Map;

/**
 * @author Vitaliy Markus
 */
final public class AttachCardRequest extends AcquiringRequest {

    private String cardData;
    private String requestKey;
    private String email;
    private Map data;

    public AttachCardRequest() {
        super("AttachCard");
    }

    @Override
    public Map asMap() {
        Map map = super.asMap();

        putIfNotNull(CARD_DATA, cardData, map);
        putIfNotNull(REQUEST_KEY, requestKey, map);
        putDataIfNonNull(map);

        return map;
    }

    public String getCardData() {
        return cardData;
    }

    void setCardData(String cardData) {
        this.cardData = cardData;
    }

    public String getRequestKey() {
        return requestKey;
    }

    void setRequestKey(String requestKey) {
        this.requestKey = requestKey;
    }

    public String getEmail() {
        return email;
    }

    void setEmail(String email) {
        this.email = email;
    }

    public Map getData() {
        return data;
    }

    void setData(Map data) {
        this.data = data;
    }

    void addData(Map data) {
        if (data != null) {
            if (this.data == null) {
                this.data = new HashMap<>();
            }
            this.data.putAll(data);
        }
    }

    private void putDataIfNonNull(Map map) {
        if (data == null && (email == null || email.length() == 0)) {
            return;
        }

        HashMap dataMap = new HashMap<>();
        if (data != null) {
            dataMap.putAll(data);
        }
        dataMap.put(DATA_KEY_EMAIL, email);
        map.put(DATA, dataMap);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy