001 002package com.commercetools.api.models.business_unit; 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>Removing an Associate from a Business Unit generates a BusinessUnitAssociateRemoved Message.</p> 019 */ 020@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") 021public class BusinessUnitRemoveAssociateActionImpl implements BusinessUnitRemoveAssociateAction, ModelBase { 022 023 private String action; 024 025 private com.commercetools.api.models.customer.CustomerResourceIdentifier customer; 026 027 /** 028 * create instance with all properties 029 */ 030 @JsonCreator 031 BusinessUnitRemoveAssociateActionImpl( 032 @JsonProperty("customer") final com.commercetools.api.models.customer.CustomerResourceIdentifier customer) { 033 this.customer = customer; 034 this.action = REMOVE_ASSOCIATE; 035 } 036 037 /** 038 * create empty instance 039 */ 040 public BusinessUnitRemoveAssociateActionImpl() { 041 this.action = REMOVE_ASSOCIATE; 042 } 043 044 /** 045 * 046 */ 047 048 public String getAction() { 049 return this.action; 050 } 051 052 /** 053 * <p>Associate to remove.</p> 054 */ 055 056 public com.commercetools.api.models.customer.CustomerResourceIdentifier getCustomer() { 057 return this.customer; 058 } 059 060 public void setCustomer(final com.commercetools.api.models.customer.CustomerResourceIdentifier customer) { 061 this.customer = customer; 062 } 063 064 @Override 065 public boolean equals(Object o) { 066 if (this == o) 067 return true; 068 069 if (o == null || getClass() != o.getClass()) 070 return false; 071 072 BusinessUnitRemoveAssociateActionImpl that = (BusinessUnitRemoveAssociateActionImpl) o; 073 074 return new EqualsBuilder().append(action, that.action) 075 .append(customer, that.customer) 076 .append(action, that.action) 077 .append(customer, that.customer) 078 .isEquals(); 079 } 080 081 @Override 082 public int hashCode() { 083 return new HashCodeBuilder(17, 37).append(action).append(customer).toHashCode(); 084 } 085 086}