ConfirmationDTO.java

package com.tradecloud.dto.treasury;

import com.tradecloud.domain.model.fec.FECConfirmationType;

import java.util.Date;

/**
 * Created by ds on 10/14/14.
 */
public class ConfirmationDTO extends  BaseDTO {

    protected FECConfirmationType confirmationType;
    private MoneyDTO amount = new MoneyDTO();
    private Date maturityDate;
    private MoneyDTO spotRate=new MoneyDTO();
    private MoneyDTO forwardRate=new MoneyDTO();
    private String bankReference;
    private String internalReference;
    private DefaultDTO organisationalUnit;
    private DefaultDTO forexGroup;
    private MoneyDTO localCurrencyAmount = new MoneyDTO();
    private FECDTO fecdto;

    public FECConfirmationType getConfirmationType() {
        return confirmationType;
    }

    public void setConfirmationType(FECConfirmationType confirmationType) {
        this.confirmationType = confirmationType;
    }

    public MoneyDTO getAmount() {
        return amount;
    }

    public void setAmount(MoneyDTO amount) {
        this.amount = amount;
    }

    public Date getMaturityDate() {
        return maturityDate;
    }

    public void setMaturityDate(Date maturityDate) {
        this.maturityDate = maturityDate;
    }

    public MoneyDTO getSpotRate() {
        return spotRate;
    }

    public void setSpotRate(MoneyDTO spotRate) {
        this.spotRate = spotRate;
    }

    public MoneyDTO getForwardRate() {
        return forwardRate;
    }

    public void setForwardRate(MoneyDTO forwardRate) {
        this.forwardRate = forwardRate;
    }

    public String getBankReference() {
        return bankReference;
    }

    public void setBankReference(String bankReference) {
        this.bankReference = bankReference;
    }

    public DefaultDTO getOrganisationalUnit() {
        return organisationalUnit;
    }

    public void setOrganisationalUnit(DefaultDTO organisationalUnit) {
        this.organisationalUnit = organisationalUnit;
    }

    public DefaultDTO getForexGroup() {
        return forexGroup;
    }

    public void setForexGroup(DefaultDTO forexGroup) {
        this.forexGroup = forexGroup;
    }

    public MoneyDTO getLocalCurrencyAmount() {
        return localCurrencyAmount;
    }

    public void setLocalCurrencyAmount(MoneyDTO localCurrencyAmount) {
        this.localCurrencyAmount = localCurrencyAmount;
    }

    public FECDTO getFecdto() {
        return fecdto;
    }

    public void setFecdto(FECDTO fecdto) {
        this.fecdto = fecdto;
    }

    public String getInternalReference() {
        return internalReference;
    }

    public void setInternalReference(String internalReference) {
        this.internalReference = internalReference;
    }

    @Override
    public String toString() {
        return "ConfirmationDTO{" +
                "confirmationType=" + confirmationType +
                ", amount=" + amount +
                ", maturityDate=" + maturityDate +
                ", spotRate=" + spotRate +
                ", forwardRate=" + forwardRate +
                ", bankReference='" + bankReference + '\'' +
                ", internalReference='" + internalReference + '\'' +
                ", organisationalUnit=" + organisationalUnit +
                ", forexGroup=" + forexGroup +
                ", localCurrencyAmount=" + localCurrencyAmount +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof ConfirmationDTO)) return false;

        ConfirmationDTO that = (ConfirmationDTO) o;

        if (amount != null ? !amount.equals(that.amount) : that.amount != null) return false;
        if (bankReference != null ? !bankReference.equals(that.bankReference) : that.bankReference != null) return false;
        if (confirmationType != that.confirmationType) return false;
        if (forexGroup != null ? !forexGroup.equals(that.forexGroup) : that.forexGroup != null) return false;
        if (forwardRate != null ? !forwardRate.equals(that.forwardRate) : that.forwardRate != null) return false;
        if (localCurrencyAmount != null ? !localCurrencyAmount.equals(that.localCurrencyAmount) : that.localCurrencyAmount != null) return false;
        if (maturityDate != null ? !maturityDate.equals(that.maturityDate) : that.maturityDate != null) return false;
        if (organisationalUnit != null ? !organisationalUnit.equals(that.organisationalUnit) : that.organisationalUnit != null) return false;
        if (spotRate != null ? !spotRate.equals(that.spotRate) : that.spotRate != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = confirmationType != null ? confirmationType.hashCode() : 0;
        result = 31 * result + (amount != null ? amount.hashCode() : 0);
        result = 31 * result + (maturityDate != null ? maturityDate.hashCode() : 0);
        result = 31 * result + (spotRate != null ? spotRate.hashCode() : 0);
        result = 31 * result + (forwardRate != null ? forwardRate.hashCode() : 0);
        result = 31 * result + (bankReference != null ? bankReference.hashCode() : 0);
        result = 31 * result + (organisationalUnit != null ? organisationalUnit.hashCode() : 0);
        result = 31 * result + (forexGroup != null ? forexGroup.hashCode() : 0);
        result = 31 * result + (localCurrencyAmount != null ? localCurrencyAmount.hashCode() : 0);
        return result;
    }
}