001
002package com.commercetools.history.models.common;
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 * InheritedAssociate
019 */
020@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen")
021public class InheritedAssociateImpl implements InheritedAssociate, ModelBase {
022
023    private java.util.List<com.commercetools.history.models.common.InheritedAssociateRoleAssignment> associateRoleAssignments;
024
025    private com.commercetools.history.models.common.Reference customer;
026
027    /**
028     * create instance with all properties
029     */
030    @JsonCreator
031    InheritedAssociateImpl(
032            @JsonProperty("associateRoleAssignments") final java.util.List<com.commercetools.history.models.common.InheritedAssociateRoleAssignment> associateRoleAssignments,
033            @JsonProperty("customer") final com.commercetools.history.models.common.Reference customer) {
034        this.associateRoleAssignments = associateRoleAssignments;
035        this.customer = customer;
036    }
037
038    /**
039     * create empty instance
040     */
041    public InheritedAssociateImpl() {
042    }
043
044    /**
045     *
046     */
047
048    public java.util.List<com.commercetools.history.models.common.InheritedAssociateRoleAssignment> getAssociateRoleAssignments() {
049        return this.associateRoleAssignments;
050    }
051
052    /**
053     *
054     */
055
056    public com.commercetools.history.models.common.Reference getCustomer() {
057        return this.customer;
058    }
059
060    public void setAssociateRoleAssignments(
061            final com.commercetools.history.models.common.InheritedAssociateRoleAssignment... associateRoleAssignments) {
062        this.associateRoleAssignments = new ArrayList<>(Arrays.asList(associateRoleAssignments));
063    }
064
065    public void setAssociateRoleAssignments(
066            final java.util.List<com.commercetools.history.models.common.InheritedAssociateRoleAssignment> associateRoleAssignments) {
067        this.associateRoleAssignments = associateRoleAssignments;
068    }
069
070    public void setCustomer(final com.commercetools.history.models.common.Reference customer) {
071        this.customer = customer;
072    }
073
074    @Override
075    public boolean equals(Object o) {
076        if (this == o)
077            return true;
078
079        if (o == null || getClass() != o.getClass())
080            return false;
081
082        InheritedAssociateImpl that = (InheritedAssociateImpl) o;
083
084        return new EqualsBuilder().append(associateRoleAssignments, that.associateRoleAssignments)
085                .append(customer, that.customer)
086                .append(associateRoleAssignments, that.associateRoleAssignments)
087                .append(customer, that.customer)
088                .isEquals();
089    }
090
091    @Override
092    public int hashCode() {
093        return new HashCodeBuilder(17, 37).append(associateRoleAssignments).append(customer).toHashCode();
094    }
095
096}