package com.sungardas.enhancedsnapshots.aws.dynamodb.model;
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAttribute;
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAutoGeneratedKey;
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey;
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable;
@DynamoDBTable(tableName = "Users")
public class User {
@DynamoDBAutoGeneratedKey
@DynamoDBHashKey
private String id;
@DynamoDBAttribute
private String email;
@DynamoDBAttribute
private String password;
@DynamoDBAttribute
private String role;
@DynamoDBAttribute
private String firstName;
@DynamoDBAttribute
private String lastName;
public User() {
super();
}
// for local users
public User(String email, String password, String role, String firstName, String lastName) {
this.email = email;
this.password = password;
this.role = role;
this.firstName = firstName;
this.lastName = lastName;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getRole() {
return role;
}
public void setRole(String role) {
this.role = role;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
@Override
public boolean equals(final Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
final User user = (User) o;
if (id != null ? !id.equals(user.id) : user.id != null) {
return false;
}
if (email != null ? !email.equals(user.email) : user.email != null) {
return false;
}
if (password != null ? !password.equals(user.password) : user.password != null) {
return false;
}
if (role != null ? !role.equals(user.role) : user.role != null) {
return false;
}
if (firstName != null ? !firstName.equals(user.firstName) : user.firstName != null) {
return false;
}
return !(lastName != null ? !lastName.equals(user.lastName) : user.lastName != null);
}
@Override
public int hashCode() {
int result = id != null ? id.hashCode() : 0;
result = 31 * result + (email != null ? email.hashCode() : 0);
result = 31 * result + (password != null ? password.hashCode() : 0);
result = 31 * result + (role != null ? role.hashCode() : 0);
result = 31 * result + (firstName != null ? firstName.hashCode() : 0);
result = 31 * result + (lastName != null ? lastName.hashCode() : 0);
return result;
}
}