001 002package com.commercetools.api.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; 012 013import org.apache.commons.lang3.builder.EqualsBuilder; 014import org.apache.commons.lang3.builder.HashCodeBuilder; 015 016/** 017 * LocalizedString implementation 018 */ 019public class LocalizedStringImpl implements LocalizedString, ModelBase { 020 021 private Map<String, String> values; 022 023 @JsonCreator 024 LocalizedStringImpl(@JsonProperty("values") final Map<String, String> values) { 025 this.values = values; 026 } 027 028 public LocalizedStringImpl() { 029 } 030 031 public Map<String, String> values() { 032 return values; 033 } 034 035 public void setValue(String key, String value) { 036 if (values == null) { 037 values = new HashMap<>(); 038 } 039 values.put(key, value); 040 } 041 042 @Override 043 public boolean equals(Object o) { 044 if (this == o) 045 return true; 046 047 if (o == null || getClass() != o.getClass()) 048 return false; 049 050 LocalizedStringImpl that = (LocalizedStringImpl) o; 051 052 return new EqualsBuilder().append(values, that.values).isEquals(); 053 } 054 055 @Override 056 public int hashCode() { 057 return new HashCodeBuilder(17, 37).append(values).toHashCode(); 058 } 059 060}