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

com.paypal.sdk.models.VenmoPaymentTokenUsagePattern Maven / Gradle / Ivy

/*
 * PaypalServerSDKLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */

package com.paypal.sdk.models;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.TreeMap;


/**
 * VenmoPaymentTokenUsagePattern to be used.
 */
public enum VenmoPaymentTokenUsagePattern {
    IMMEDIATE,

    DEFERRED,

    RECURRING_PREPAID,

    RECURRING_POSTPAID,

    THRESHOLD_PREPAID,

    THRESHOLD_POSTPAID,

    /**
     * Unknown values will be mapped by this enum member
     */
    _UNKNOWN;


    private static TreeMap valueMap = new TreeMap<>();
    private String value;

    static {
        IMMEDIATE.value = "IMMEDIATE";
        DEFERRED.value = "DEFERRED";
        RECURRING_PREPAID.value = "RECURRING_PREPAID";
        RECURRING_POSTPAID.value = "RECURRING_POSTPAID";
        THRESHOLD_PREPAID.value = "THRESHOLD_PREPAID";
        THRESHOLD_POSTPAID.value = "THRESHOLD_POSTPAID";
        _UNKNOWN.value = null;

        valueMap.put("IMMEDIATE", IMMEDIATE);
        valueMap.put("DEFERRED", DEFERRED);
        valueMap.put("RECURRING_PREPAID", RECURRING_PREPAID);
        valueMap.put("RECURRING_POSTPAID", RECURRING_POSTPAID);
        valueMap.put("THRESHOLD_PREPAID", THRESHOLD_PREPAID);
        valueMap.put("THRESHOLD_POSTPAID", THRESHOLD_POSTPAID);
    }

    /**
     * Returns the enum member associated with the given string value.
     * @param toConvert String value to get enum member.
     * @return The enum member against the given string value.
     * @throws IOException when provided value is not mapped to any enum member.
     */
    @JsonCreator
    public static VenmoPaymentTokenUsagePattern constructFromString(String toConvert) throws IOException {
        VenmoPaymentTokenUsagePattern enumValue = fromString(toConvert);
        if (enumValue == null) {
            throw new IOException("Unable to create enum instance with value: " + toConvert);
        }
        return enumValue;
    }

    /**
     * Returns the enum member associated with the given string value.
     * @param toConvert String value to get enum member.
     * @return The enum member against the given string value.
     */
    public static VenmoPaymentTokenUsagePattern fromString(String toConvert) {
        if (!valueMap.containsKey(toConvert)) {
            return _UNKNOWN;
        }
        return valueMap.get(toConvert);
    }

    /**
     * Returns the string value associated with the enum member.
     * @return The string value against enum member.
     */
    @JsonValue
    public String value() {
        return value;
    }
        
    /**
     * Get string representation of this enum.
     */
    @Override
    public String toString() {
        if (value == null) {
            return null;
        }
        return value.toString();
    }

    /**
     * Convert list of VenmoPaymentTokenUsagePattern values to list of string values.
     * @param toConvert The list of VenmoPaymentTokenUsagePattern values to convert.
     * @return List of representative string values.
     */
    public static List toValue(List toConvert) {
        if (toConvert == null) {
            return null;
        }
        List convertedValues = new ArrayList<>();
        for (VenmoPaymentTokenUsagePattern enumValue : toConvert) {
            convertedValues.add(enumValue.value);
        }
        return convertedValues;
    }
} 




© 2015 - 2024 Weber Informatics LLC | Privacy Policy