/* * Copyright 2013-2017 Amazon Technologies, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://aws.amazon.com/apache2.0 * * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES * OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and * limitations under the License. */ package com.amazonaws.services.dynamodbv2.pojos; import java.math.BigDecimal; import java.math.BigInteger; import java.util.Calendar; import java.util.Date; import java.util.Set; import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey; import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBRangeKey; import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable; import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBVersionAttribute; /** * Exhaustive exercise of DynamoDB domain mapping, exercising every supported * data type. */ @DynamoDBTable(tableName = "aws-xsdk") public class CrossSDKVerificationClass { private String key; private String rangeKey; private Long version; private String lastUpdater; private Integer integerAttribute; private Long longAttribute; private Double doubleAttribute; private Float floatAttribute; private BigDecimal bigDecimalAttribute; private BigInteger bigIntegerAttribute; private Byte byteAttribute; private Date dateAttribute; private Calendar calendarAttribute; private Boolean booleanAttribute; private Set<String> stringSetAttribute; private Set<Integer> integerSetAttribute; private Set<Double> doubleSetAttribute; private Set<Float> floatSetAttribute; private Set<BigDecimal> bigDecimalSetAttribute; private Set<BigInteger> bigIntegerSetAttribute; private Set<Long> longSetAttribute; private Set<Byte> byteSetAttribute; private Set<Date> dateSetAttribute; private Set<Calendar> calendarSetAttribute; // these are kind of pointless, but here for completeness private Set<Boolean> booleanSetAttribute; @DynamoDBHashKey public String getKey() { return key; } public void setKey(String key) { this.key = key; } @DynamoDBRangeKey public String getRangeKey() { return rangeKey; } public void setRangeKey(String rangeKey) { this.rangeKey = rangeKey; } @DynamoDBVersionAttribute public Long getVersion() { return version; } public void setVersion(Long version) { this.version = version; } public String getLastUpdater() { return lastUpdater; } public void setLastUpdater(String lastUpdater) { this.lastUpdater = lastUpdater; } public Integer getIntegerAttribute() { return integerAttribute; } public void setIntegerAttribute(Integer integerAttribute) { this.integerAttribute = integerAttribute; } public Long getLongAttribute() { return longAttribute; } public void setLongAttribute(Long longAttribute) { this.longAttribute = longAttribute; } public Double getDoubleAttribute() { return doubleAttribute; } public void setDoubleAttribute(Double doubleAttribute) { this.doubleAttribute = doubleAttribute; } public Float getFloatAttribute() { return floatAttribute; } public void setFloatAttribute(Float floatAttribute) { this.floatAttribute = floatAttribute; } public BigDecimal getBigDecimalAttribute() { return bigDecimalAttribute; } public void setBigDecimalAttribute(BigDecimal bigDecimalAttribute) { this.bigDecimalAttribute = bigDecimalAttribute; } public BigInteger getBigIntegerAttribute() { return bigIntegerAttribute; } public void setBigIntegerAttribute(BigInteger bigIntegerAttribute) { this.bigIntegerAttribute = bigIntegerAttribute; } public Byte getByteAttribute() { return byteAttribute; } public void setByteAttribute(Byte byteAttribute) { this.byteAttribute = byteAttribute; } public Date getDateAttribute() { return dateAttribute; } public void setDateAttribute(Date dateAttribute) { this.dateAttribute = dateAttribute; } public Calendar getCalendarAttribute() { return calendarAttribute; } public void setCalendarAttribute(Calendar calendarAttribute) { this.calendarAttribute = calendarAttribute; } public Boolean getBooleanAttribute() { return booleanAttribute; } public void setBooleanAttribute(Boolean booleanAttribute) { this.booleanAttribute = booleanAttribute; } public Set<Integer> getIntegerSetAttribute() { return integerSetAttribute; } public void setIntegerSetAttribute(Set<Integer> integerSetAttribute) { this.integerSetAttribute = integerSetAttribute; } public Set<Double> getDoubleSetAttribute() { return doubleSetAttribute; } public void setDoubleSetAttribute(Set<Double> doubleSetAttribute) { this.doubleSetAttribute = doubleSetAttribute; } public Set<Float> getFloatSetAttribute() { return floatSetAttribute; } public void setFloatSetAttribute(Set<Float> floatSetAttribute) { this.floatSetAttribute = floatSetAttribute; } public Set<BigDecimal> getBigDecimalSetAttribute() { return bigDecimalSetAttribute; } public void setBigDecimalSetAttribute(Set<BigDecimal> bigDecimalSetAttribute) { this.bigDecimalSetAttribute = bigDecimalSetAttribute; } public Set<BigInteger> getBigIntegerSetAttribute() { return bigIntegerSetAttribute; } public void setBigIntegerSetAttribute(Set<BigInteger> bigIntegerSetAttribute) { this.bigIntegerSetAttribute = bigIntegerSetAttribute; } public Set<Long> getLongSetAttribute() { return longSetAttribute; } public void setLongSetAttribute(Set<Long> longSetAttribute) { this.longSetAttribute = longSetAttribute; } public Set<Byte> getByteSetAttribute() { return byteSetAttribute; } public void setByteSetAttribute(Set<Byte> byteSetAttribute) { this.byteSetAttribute = byteSetAttribute; } public Set<Date> getDateSetAttribute() { return dateSetAttribute; } public void setDateSetAttribute(Set<Date> dateSetAttribute) { this.dateSetAttribute = dateSetAttribute; } public Set<Calendar> getCalendarSetAttribute() { return calendarSetAttribute; } public void setCalendarSetAttribute(Set<Calendar> calendarSetAttribute) { this.calendarSetAttribute = calendarSetAttribute; } public Set<Boolean> getBooleanSetAttribute() { return booleanSetAttribute; } public void setBooleanSetAttribute(Set<Boolean> booleanSetAttribute) { this.booleanSetAttribute = booleanSetAttribute; } public Set<String> getStringSetAttribute() { return stringSetAttribute; } public void setStringSetAttribute(Set<String> stringSetAttribute) { this.stringSetAttribute = stringSetAttribute; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((bigDecimalAttribute == null) ? 0 : bigDecimalAttribute.hashCode()); result = prime * result + ((bigDecimalSetAttribute == null) ? 0 : bigDecimalSetAttribute.hashCode()); result = prime * result + ((bigIntegerAttribute == null) ? 0 : bigIntegerAttribute.hashCode()); result = prime * result + ((bigIntegerSetAttribute == null) ? 0 : bigIntegerSetAttribute.hashCode()); result = prime * result + ((booleanAttribute == null) ? 0 : booleanAttribute.hashCode()); result = prime * result + ((booleanSetAttribute == null) ? 0 : booleanSetAttribute.hashCode()); result = prime * result + ((byteAttribute == null) ? 0 : byteAttribute.hashCode()); result = prime * result + ((byteSetAttribute == null) ? 0 : byteSetAttribute.hashCode()); result = prime * result + ((calendarAttribute == null) ? 0 : calendarAttribute.hashCode()); result = prime * result + ((calendarSetAttribute == null) ? 0 : calendarSetAttribute.hashCode()); result = prime * result + ((dateAttribute == null) ? 0 : dateAttribute.hashCode()); result = prime * result + ((dateSetAttribute == null) ? 0 : dateSetAttribute.hashCode()); result = prime * result + ((doubleAttribute == null) ? 0 : doubleAttribute.hashCode()); result = prime * result + ((doubleSetAttribute == null) ? 0 : doubleSetAttribute.hashCode()); result = prime * result + ((floatAttribute == null) ? 0 : floatAttribute.hashCode()); result = prime * result + ((floatSetAttribute == null) ? 0 : floatSetAttribute.hashCode()); result = prime * result + ((integerAttribute == null) ? 0 : integerAttribute.hashCode()); result = prime * result + ((integerSetAttribute == null) ? 0 : integerSetAttribute.hashCode()); result = prime * result + ((key == null) ? 0 : key.hashCode()); result = prime * result + ((lastUpdater == null) ? 0 : lastUpdater.hashCode()); result = prime * result + ((longAttribute == null) ? 0 : longAttribute.hashCode()); result = prime * result + ((longSetAttribute == null) ? 0 : longSetAttribute.hashCode()); result = prime * result + ((rangeKey == null) ? 0 : rangeKey.hashCode()); result = prime * result + ((stringSetAttribute == null) ? 0 : stringSetAttribute.hashCode()); result = prime * result + ((version == null) ? 0 : version.hashCode()); return result; } @Override public boolean equals(Object obj) { if ( this == obj ) return true; if ( obj == null ) return false; if ( getClass() != obj.getClass() ) return false; CrossSDKVerificationClass other = (CrossSDKVerificationClass) obj; if ( bigDecimalAttribute == null ) { if ( other.bigDecimalAttribute != null ) return false; } else if ( !bigDecimalAttribute.equals(other.bigDecimalAttribute) ) return false; if ( bigDecimalSetAttribute == null ) { if ( other.bigDecimalSetAttribute != null ) return false; } else if ( !bigDecimalSetAttribute.equals(other.bigDecimalSetAttribute) ) return false; if ( bigIntegerAttribute == null ) { if ( other.bigIntegerAttribute != null ) return false; } else if ( !bigIntegerAttribute.equals(other.bigIntegerAttribute) ) return false; if ( bigIntegerSetAttribute == null ) { if ( other.bigIntegerSetAttribute != null ) return false; } else if ( !bigIntegerSetAttribute.equals(other.bigIntegerSetAttribute) ) return false; if ( booleanAttribute == null ) { if ( other.booleanAttribute != null ) return false; } else if ( !booleanAttribute.equals(other.booleanAttribute) ) return false; if ( booleanSetAttribute == null ) { if ( other.booleanSetAttribute != null ) return false; } else if ( !booleanSetAttribute.equals(other.booleanSetAttribute) ) return false; if ( byteAttribute == null ) { if ( other.byteAttribute != null ) return false; } else if ( !byteAttribute.equals(other.byteAttribute) ) return false; if ( byteSetAttribute == null ) { if ( other.byteSetAttribute != null ) return false; } else if ( !byteSetAttribute.equals(other.byteSetAttribute) ) return false; if ( calendarAttribute == null ) { if ( other.calendarAttribute != null ) return false; } else if ( !calendarAttribute.equals(other.calendarAttribute) ) return false; if ( calendarSetAttribute == null ) { if ( other.calendarSetAttribute != null ) return false; } else if ( !calendarSetAttribute.equals(other.calendarSetAttribute) ) return false; if ( dateAttribute == null ) { if ( other.dateAttribute != null ) return false; } else if ( !dateAttribute.equals(other.dateAttribute) ) return false; if ( dateSetAttribute == null ) { if ( other.dateSetAttribute != null ) return false; } else if ( !dateSetAttribute.equals(other.dateSetAttribute) ) return false; if ( doubleAttribute == null ) { if ( other.doubleAttribute != null ) return false; } else if ( !doubleAttribute.equals(other.doubleAttribute) ) return false; if ( doubleSetAttribute == null ) { if ( other.doubleSetAttribute != null ) return false; } else if ( !doubleSetAttribute.equals(other.doubleSetAttribute) ) return false; if ( floatAttribute == null ) { if ( other.floatAttribute != null ) return false; } else if ( !floatAttribute.equals(other.floatAttribute) ) return false; if ( floatSetAttribute == null ) { if ( other.floatSetAttribute != null ) return false; } else if ( !floatSetAttribute.equals(other.floatSetAttribute) ) return false; if ( integerAttribute == null ) { if ( other.integerAttribute != null ) return false; } else if ( !integerAttribute.equals(other.integerAttribute) ) return false; if ( integerSetAttribute == null ) { if ( other.integerSetAttribute != null ) return false; } else if ( !integerSetAttribute.equals(other.integerSetAttribute) ) return false; if ( key == null ) { if ( other.key != null ) return false; } else if ( !key.equals(other.key) ) return false; if ( lastUpdater == null ) { if ( other.lastUpdater != null ) return false; } else if ( !lastUpdater.equals(other.lastUpdater) ) return false; if ( longAttribute == null ) { if ( other.longAttribute != null ) return false; } else if ( !longAttribute.equals(other.longAttribute) ) return false; if ( longSetAttribute == null ) { if ( other.longSetAttribute != null ) return false; } else if ( !longSetAttribute.equals(other.longSetAttribute) ) return false; if ( rangeKey == null ) { if ( other.rangeKey != null ) return false; } else if ( !rangeKey.equals(other.rangeKey) ) return false; if ( stringSetAttribute == null ) { if ( other.stringSetAttribute != null ) return false; } else if ( !stringSetAttribute.equals(other.stringSetAttribute) ) return false; if ( version == null ) { if ( other.version != null ) return false; } else if ( !version.equals(other.version) ) return false; return true; } }