/*
* 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;
}
}