001 002package com.commercetools.api.models.error; 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>Returned when a Product is not assigned to the Product Selection. The error is returned as a failed response either to the Set Variant Selection or to the Set Variant Exclusion update action.</p> 019 */ 020@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") 021public class GraphQLProductAssignmentMissingErrorImpl implements GraphQLProductAssignmentMissingError, ModelBase { 022 023 private String code; 024 025 private Map<String, java.lang.Object> values; 026 027 private com.commercetools.api.models.product.ProductReference product; 028 029 /** 030 * create instance with all properties 031 */ 032 @JsonCreator 033 GraphQLProductAssignmentMissingErrorImpl(@JsonProperty("values") final Map<String, java.lang.Object> values, 034 @JsonProperty("product") final com.commercetools.api.models.product.ProductReference product) { 035 this.values = values; 036 this.product = product; 037 this.code = PRODUCT_ASSIGNMENT_MISSING; 038 } 039 040 /** 041 * create empty instance 042 */ 043 public GraphQLProductAssignmentMissingErrorImpl() { 044 this.code = PRODUCT_ASSIGNMENT_MISSING; 045 } 046 047 /** 048 * 049 */ 050 051 public String getCode() { 052 return this.code; 053 } 054 055 /** 056 * <p>Error-specific additional fields.</p> 057 */ 058 059 public Map<String, java.lang.Object> values() { 060 return values; 061 } 062 063 /** 064 * <p>Reference to the Product for which the error was returned.</p> 065 */ 066 067 public com.commercetools.api.models.product.ProductReference getProduct() { 068 return this.product; 069 } 070 071 public void setValue(String key, java.lang.Object value) { 072 if (values == null) { 073 values = new HashMap<>(); 074 } 075 values.put(key, value); 076 } 077 078 public void setProduct(final com.commercetools.api.models.product.ProductReference product) { 079 this.product = product; 080 } 081 082 @Override 083 public boolean equals(Object o) { 084 if (this == o) 085 return true; 086 087 if (o == null || getClass() != o.getClass()) 088 return false; 089 090 GraphQLProductAssignmentMissingErrorImpl that = (GraphQLProductAssignmentMissingErrorImpl) o; 091 092 return new EqualsBuilder().append(code, that.code) 093 .append(values, that.values) 094 .append(product, that.product) 095 .isEquals(); 096 } 097 098 @Override 099 public int hashCode() { 100 return new HashCodeBuilder(17, 37).append(code).append(values).append(product).toHashCode(); 101 } 102 103}