Added equals implementations on model classes.

This commit is contained in:
Jonathan Bernard
2015-03-07 14:16:52 -06:00
parent f55cabe242
commit 66cd8f579a
5 changed files with 67 additions and 1 deletions

View File

@@ -2,10 +2,26 @@ package com.jdbernard.nlsongs.model
public class Token implements Serializable {
public static final long EXPIRY_WINDOW = 1000 * 60 * 60 * 24;
String token
User user
Date expires
public Token(Map namedArgs) {
if (!namedArgs.user) throw new IllegalArgumentException(
"Cannot create Token object: missing user property.")
if (namedArgs.expire) this.expires = namedArgs.expires
else this.expires = new Date((new Date()).time + EXPIRY_WINDOW)
if (namedArgs.token) this.token = namedArgs.token
else this.token = UUID.randomUUID().toString() }
public Token(User user) { this([user: user]) }
public void refresh() { this.expires = new Date((new Date()).time + EXPIRY_WINDOW) }
@Override
public boolean equals(Object thatObj) {
if (thatObj == null) return false