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

com.softlayer.api.service.billing.invoice.receivable.Payment Maven / Gradle / Ivy

The newest version!
package com.softlayer.api.service.billing.invoice.receivable;

import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Account;
import com.softlayer.api.service.Entity;
import com.softlayer.api.service.billing.Invoice;
import com.softlayer.api.service.billing.currency.ExchangeRate;
import com.softlayer.api.service.billing.payment.paypal.Transaction;
import java.math.BigDecimal;
import java.util.GregorianCalendar;

/**
 * The SoftLayer_Billing_Invoice_Receivable_Payment data type contains general information relating to payments made against invoices. 
 *
 * @see SoftLayer_Billing_Invoice_Receivable_Payment
 */
@ApiType("SoftLayer_Billing_Invoice_Receivable_Payment")
public class Payment extends Entity {

    @ApiProperty
    protected Account account;

    public Account getAccount() {
        return account;
    }

    public void setAccount(Account account) {
        this.account = account;
    }

    @ApiProperty
    protected com.softlayer.api.service.billing.payment.card.Transaction creditCardTransaction;

    public com.softlayer.api.service.billing.payment.card.Transaction getCreditCardTransaction() {
        return creditCardTransaction;
    }

    public void setCreditCardTransaction(com.softlayer.api.service.billing.payment.card.Transaction creditCardTransaction) {
        this.creditCardTransaction = creditCardTransaction;
    }

    @ApiProperty
    protected ExchangeRate exchangeRate;

    public ExchangeRate getExchangeRate() {
        return exchangeRate;
    }

    public void setExchangeRate(ExchangeRate exchangeRate) {
        this.exchangeRate = exchangeRate;
    }

    @ApiProperty
    protected Invoice invoice;

    public Invoice getInvoice() {
        return invoice;
    }

    public void setInvoice(Invoice invoice) {
        this.invoice = invoice;
    }

    @ApiProperty
    protected Transaction paypalTransaction;

    public Transaction getPaypalTransaction() {
        return paypalTransaction;
    }

    public void setPaypalTransaction(Transaction paypalTransaction) {
        this.paypalTransaction = paypalTransaction;
    }

    /**
     * The amount of the payment.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal amount;

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        amountSpecified = true;
        this.amount = amount;
    }

    protected boolean amountSpecified;

    public boolean isAmountSpecified() {
        return amountSpecified;
    }

    public void unsetAmount() {
        amount = null;
        amountSpecified = false;
    }

    /**
     * The date of the payment.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected GregorianCalendar createDate;

    public GregorianCalendar getCreateDate() {
        return createDate;
    }

    public void setCreateDate(GregorianCalendar createDate) {
        createDateSpecified = true;
        this.createDate = createDate;
    }

    protected boolean createDateSpecified;

    public boolean isCreateDateSpecified() {
        return createDateSpecified;
    }

    public void unsetCreateDate() {
        createDate = null;
        createDateSpecified = false;
    }

    /**
     * The invoice that the payment is for.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long invoiceId;

    public Long getInvoiceId() {
        return invoiceId;
    }

    public void setInvoiceId(Long invoiceId) {
        invoiceIdSpecified = true;
        this.invoiceId = invoiceId;
    }

    protected boolean invoiceIdSpecified;

    public boolean isInvoiceIdSpecified() {
        return invoiceIdSpecified;
    }

    public void unsetInvoiceId() {
        invoiceId = null;
        invoiceIdSpecified = false;
    }

    /**
     * The type of payment.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String typeCode;

    public String getTypeCode() {
        return typeCode;
    }

    public void setTypeCode(String typeCode) {
        typeCodeSpecified = true;
        this.typeCode = typeCode;
    }

    protected boolean typeCodeSpecified;

    public boolean isTypeCodeSpecified() {
        return typeCodeSpecified;
    }

    public void unsetTypeCode() {
        typeCode = null;
        typeCodeSpecified = false;
    }

    public static class Mask extends com.softlayer.api.service.Entity.Mask {

        public com.softlayer.api.service.Account.Mask account() {
            return withSubMask("account", com.softlayer.api.service.Account.Mask.class);
        }

        public com.softlayer.api.service.billing.payment.card.Transaction.Mask creditCardTransaction() {
            return withSubMask("creditCardTransaction", com.softlayer.api.service.billing.payment.card.Transaction.Mask.class);
        }

        public com.softlayer.api.service.billing.currency.ExchangeRate.Mask exchangeRate() {
            return withSubMask("exchangeRate", com.softlayer.api.service.billing.currency.ExchangeRate.Mask.class);
        }

        public com.softlayer.api.service.billing.Invoice.Mask invoice() {
            return withSubMask("invoice", com.softlayer.api.service.billing.Invoice.Mask.class);
        }

        public com.softlayer.api.service.billing.payment.paypal.Transaction.Mask paypalTransaction() {
            return withSubMask("paypalTransaction", com.softlayer.api.service.billing.payment.paypal.Transaction.Mask.class);
        }

        public Mask amount() {
            withLocalProperty("amount");
            return this;
        }

        public Mask createDate() {
            withLocalProperty("createDate");
            return this;
        }

        public Mask invoiceId() {
            withLocalProperty("invoiceId");
            return this;
        }

        public Mask typeCode() {
            withLocalProperty("typeCode");
            return this;
        }

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy