001
002package com.commercetools.api.models.message;
003
004import java.time.*;
005import java.util.*;
006
007import com.fasterxml.jackson.annotation.JsonCreator;
008import com.fasterxml.jackson.annotation.JsonProperty;
009import com.fasterxml.jackson.databind.annotation.*;
010
011import io.vrap.rmf.base.client.ModelBase;
012import io.vrap.rmf.base.client.utils.Generated;
013
014import org.apache.commons.lang3.builder.EqualsBuilder;
015import org.apache.commons.lang3.builder.HashCodeBuilder;
016
017/**
018 *  <p>Generated after a successful Set Customer Id update action.</p>
019 */
020@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen")
021public class OrderCustomerSetMessagePayloadImpl implements OrderCustomerSetMessagePayload, ModelBase {
022
023    private String type;
024
025    private com.commercetools.api.models.customer.CustomerReference customer;
026
027    private com.commercetools.api.models.customer_group.CustomerGroupReference customerGroup;
028
029    private com.commercetools.api.models.customer.CustomerReference oldCustomer;
030
031    private com.commercetools.api.models.customer_group.CustomerGroupReference oldCustomerGroup;
032
033    /**
034     * create instance with all properties
035     */
036    @JsonCreator
037    OrderCustomerSetMessagePayloadImpl(
038            @JsonProperty("customer") final com.commercetools.api.models.customer.CustomerReference customer,
039            @JsonProperty("customerGroup") final com.commercetools.api.models.customer_group.CustomerGroupReference customerGroup,
040            @JsonProperty("oldCustomer") final com.commercetools.api.models.customer.CustomerReference oldCustomer,
041            @JsonProperty("oldCustomerGroup") final com.commercetools.api.models.customer_group.CustomerGroupReference oldCustomerGroup) {
042        this.customer = customer;
043        this.customerGroup = customerGroup;
044        this.oldCustomer = oldCustomer;
045        this.oldCustomerGroup = oldCustomerGroup;
046        this.type = ORDER_CUSTOMER_SET;
047    }
048
049    /**
050     * create empty instance
051     */
052    public OrderCustomerSetMessagePayloadImpl() {
053        this.type = ORDER_CUSTOMER_SET;
054    }
055
056    /**
057     *
058     */
059
060    public String getType() {
061        return this.type;
062    }
063
064    /**
065     *  <p>Customer on the Order after the Set Customer Id update action.</p>
066     */
067
068    public com.commercetools.api.models.customer.CustomerReference getCustomer() {
069        return this.customer;
070    }
071
072    /**
073     *  <p>CustomerGroup on the Order after the Set Customer Id update action.</p>
074     */
075
076    public com.commercetools.api.models.customer_group.CustomerGroupReference getCustomerGroup() {
077        return this.customerGroup;
078    }
079
080    /**
081     *  <p>Customer on the Order before the Set Customer Id update action.</p>
082     */
083
084    public com.commercetools.api.models.customer.CustomerReference getOldCustomer() {
085        return this.oldCustomer;
086    }
087
088    /**
089     *  <p>CustomerGroup on the Order before the Set Customer Id update action.</p>
090     */
091
092    public com.commercetools.api.models.customer_group.CustomerGroupReference getOldCustomerGroup() {
093        return this.oldCustomerGroup;
094    }
095
096    public void setCustomer(final com.commercetools.api.models.customer.CustomerReference customer) {
097        this.customer = customer;
098    }
099
100    public void setCustomerGroup(
101            final com.commercetools.api.models.customer_group.CustomerGroupReference customerGroup) {
102        this.customerGroup = customerGroup;
103    }
104
105    public void setOldCustomer(final com.commercetools.api.models.customer.CustomerReference oldCustomer) {
106        this.oldCustomer = oldCustomer;
107    }
108
109    public void setOldCustomerGroup(
110            final com.commercetools.api.models.customer_group.CustomerGroupReference oldCustomerGroup) {
111        this.oldCustomerGroup = oldCustomerGroup;
112    }
113
114    @Override
115    public boolean equals(Object o) {
116        if (this == o)
117            return true;
118
119        if (o == null || getClass() != o.getClass())
120            return false;
121
122        OrderCustomerSetMessagePayloadImpl that = (OrderCustomerSetMessagePayloadImpl) o;
123
124        return new EqualsBuilder().append(type, that.type)
125                .append(customer, that.customer)
126                .append(customerGroup, that.customerGroup)
127                .append(oldCustomer, that.oldCustomer)
128                .append(oldCustomerGroup, that.oldCustomerGroup)
129                .isEquals();
130    }
131
132    @Override
133    public int hashCode() {
134        return new HashCodeBuilder(17, 37).append(type)
135                .append(customer)
136                .append(customerGroup)
137                .append(oldCustomer)
138                .append(oldCustomerGroup)
139                .toHashCode();
140    }
141
142}