jp.gopay.sdk.models.response.configuration.Configuration Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gopay-java-sdk Show documentation
Show all versions of gopay-java-sdk Show documentation
Official Gyro-n Payments Java SDK
package jp.gopay.sdk.models.response.configuration;
import com.google.gson.annotations.SerializedName;
import jp.gopay.sdk.models.common.*;
import jp.gopay.sdk.models.common.stores.SecurityConfiguration;
import jp.gopay.sdk.models.response.store.CardConfiguration;
import jp.gopay.sdk.models.response.store.QrScanConfiguration;
import jp.gopay.sdk.models.response.store.RecurringTokenConfiguration;
import jp.gopay.sdk.models.response.subscription.SubscriptionConfiguration;
import jp.gopay.sdk.types.CardBrand;
import jp.gopay.sdk.types.Country;
import org.threeten.bp.ZoneId;
import javax.annotation.Nullable;
import java.math.BigDecimal;
import java.net.URL;
import java.util.List;
import java.util.Locale;
import java.util.Map;
public class Configuration {
@SerializedName("percent_fee")
private BigDecimal percentFee;
@SerializedName("flat_fees")
private List flatFees;
@SerializedName("logo_url")
private URL logoUrl;
@SerializedName("country")
private Country country;
@SerializedName("language")
private Locale language;
@SerializedName("min_transfer_payout")
private MoneyLike minTransferPayout;
@SerializedName("maximum_charge_amounts")
private List maximumChargeAmounts;
@SerializedName("transfer_schedule")
private TransferScheduleConfiguration transferScheduleConfiguration;
@SerializedName("display_time_zone")
private ZoneId timeZone;
@SerializedName("user_transactions_configuration")
private UserTransactionsConfiguration userTransactionsConfiguration;
@SerializedName("card_configuration")
private CardConfiguration cardConfiguration;
@SerializedName("qr_scan_configuration")
private QrScanConfiguration qrScanConfiguration;
@SerializedName("convenience_configuration")
private KonbiniConfiguration convenienceConfiguration;
@SerializedName("paidy_configuration")
private PaidyConfiguration paidyConfiguration;
@SerializedName("recurring_token_configuration")
private RecurringTokenConfiguration recurringConfiguration;
@SerializedName("security_configuration")
private SecurityConfiguration securityConfiguration;
@SerializedName("installments_configuration")
private InstallmentsConfiguration installmentsConfiguration;
@SerializedName("card_brand_percent_fees")
private Map cardBrandPercentFees;
@SerializedName("subscription_configuration")
private SubscriptionConfiguration subscriptionConfiguration;
public BigDecimal getPercentFee() {
return percentFee;
}
public List getFlatFees() {
return flatFees;
}
public URL getLogoUrl() {
return logoUrl;
}
/**
* The returned type will be changed to {@link Country} on later release
* @return country
*/
public String getCountry() {
if(country == null){
return null;
}
return country.getAlpha2();
}
/**
* This method will be deleted when the returned type by "getCountry(String)" is changed to {@link Country}
* @return country enum
*/
public Country getCountryEnum() {
return country;
}
public Locale getLanguage() {
return language;
}
public MoneyLike getMinTransferPayout() {
return minTransferPayout;
}
public List getMaximumChargeAmounts() {
return maximumChargeAmounts;
}
public TransferScheduleConfiguration getTransferScheduleConfiguration() {
return transferScheduleConfiguration;
}
public ZoneId getTimeZone() {
return timeZone;
}
public UserTransactionsConfiguration getUserTransactionsConfiguration() {
return userTransactionsConfiguration;
}
public CardConfiguration getCardConfiguration() {
return cardConfiguration;
}
public QrScanConfiguration getQrScanConfiguration() {
return qrScanConfiguration;
}
public RecurringTokenConfiguration getRecurringConfiguration() {
return recurringConfiguration;
}
public SecurityConfiguration getSecurityConfiguration() {
return securityConfiguration;
}
public InstallmentsConfiguration getInstallmentsConfiguration() {
return installmentsConfiguration;
}
public Map getCardBrandPercentFees() {
return cardBrandPercentFees;
}
public KonbiniConfiguration getConvenienceConfiguration() {
return convenienceConfiguration;
}
public PaidyConfiguration getPaidyConfiguration() {
return paidyConfiguration;
}
public SubscriptionConfiguration getSubscriptionConfiguration() {
return subscriptionConfiguration;
}
public Configuration(@Nullable BigDecimal percentFee,
@Nullable List flatFees,
@Nullable URL logoUrl,
@Nullable Country country,
@Nullable Locale language,
@Nullable MoneyLike minTransferPayout,
@Nullable List maximumChargeAmounts,
@Nullable TransferScheduleConfiguration transferScheduleConfiguration,
@Nullable ZoneId timeZone,
@Nullable UserTransactionsConfiguration userTransactionsConfiguration,
@Nullable CardConfiguration cardConfiguration,
@Nullable QrScanConfiguration qrScanConfiguration,
@Nullable KonbiniConfiguration convenienceConfiguration,
@Nullable PaidyConfiguration paidyConfiguration,
@Nullable RecurringTokenConfiguration recurringConfiguration,
@Nullable SecurityConfiguration securityConfiguration,
@Nullable Map cardBrandPercentFees,
@Nullable InstallmentsConfiguration installmentsConfiguration,
@Nullable SubscriptionConfiguration subscriptionConfiguration) {
this.percentFee = percentFee;
this.flatFees = flatFees;
this.logoUrl = logoUrl;
this.country = country;
this.language = language;
this.minTransferPayout = minTransferPayout;
this.maximumChargeAmounts = maximumChargeAmounts;
this.transferScheduleConfiguration = transferScheduleConfiguration;
this.timeZone = timeZone;
this.userTransactionsConfiguration = userTransactionsConfiguration;
this.cardConfiguration = cardConfiguration;
this.qrScanConfiguration = qrScanConfiguration;
this.convenienceConfiguration = convenienceConfiguration;
this.paidyConfiguration = paidyConfiguration;
this.recurringConfiguration = recurringConfiguration;
this.securityConfiguration = securityConfiguration;
this.cardBrandPercentFees = cardBrandPercentFees;
this.installmentsConfiguration = installmentsConfiguration;
this.subscriptionConfiguration = subscriptionConfiguration;
}
public Configuration(){}
}