001 002package com.commercetools.api.models.product; 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>Produces the ProductRemovedFromCategory Message.</p> 019 */ 020@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") 021public class ProductRemoveFromCategoryActionImpl implements ProductRemoveFromCategoryAction, ModelBase { 022 023 private String action; 024 025 private com.commercetools.api.models.category.CategoryResourceIdentifier category; 026 027 private Boolean staged; 028 029 /** 030 * create instance with all properties 031 */ 032 @JsonCreator 033 ProductRemoveFromCategoryActionImpl( 034 @JsonProperty("category") final com.commercetools.api.models.category.CategoryResourceIdentifier category, 035 @JsonProperty("staged") final Boolean staged) { 036 this.category = category; 037 this.staged = staged; 038 this.action = REMOVE_FROM_CATEGORY; 039 } 040 041 /** 042 * create empty instance 043 */ 044 public ProductRemoveFromCategoryActionImpl() { 045 this.action = REMOVE_FROM_CATEGORY; 046 } 047 048 /** 049 * 050 */ 051 052 public String getAction() { 053 return this.action; 054 } 055 056 /** 057 * <p>The Category to remove.</p> 058 */ 059 060 public com.commercetools.api.models.category.CategoryResourceIdentifier getCategory() { 061 return this.category; 062 } 063 064 /** 065 * <p>If <code>true</code>, only the staged <code>categories</code> and <code>categoryOrderHints</code> are removed. If <code>false</code>, both the current and staged <code>categories</code> and <code>categoryOrderHints</code> are removed.</p> 066 */ 067 068 public Boolean getStaged() { 069 return this.staged; 070 } 071 072 public void setCategory(final com.commercetools.api.models.category.CategoryResourceIdentifier category) { 073 this.category = category; 074 } 075 076 public void setStaged(final Boolean staged) { 077 this.staged = staged; 078 } 079 080 @Override 081 public boolean equals(Object o) { 082 if (this == o) 083 return true; 084 085 if (o == null || getClass() != o.getClass()) 086 return false; 087 088 ProductRemoveFromCategoryActionImpl that = (ProductRemoveFromCategoryActionImpl) o; 089 090 return new EqualsBuilder().append(action, that.action) 091 .append(category, that.category) 092 .append(staged, that.staged) 093 .isEquals(); 094 } 095 096 @Override 097 public int hashCode() { 098 return new HashCodeBuilder(17, 37).append(action).append(category).append(staged).toHashCode(); 099 } 100 101}