View Javadoc

1   package com.bradmcevoy.http;
2   
3   import java.io.Serializable;
4   import java.util.Date;
5   
6   public class LockToken implements Serializable {
7   
8       private static final long serialVersionUID = 1L;
9       /**
10       * the date/time that this lock was created or last refreshed
11       */
12      private Date from;
13      public String tokenId;
14      public LockInfo info;
15      public LockTimeout timeout;
16  
17      public LockToken() {
18          from = new Date();
19      }
20  
21      public LockToken(String tokenId, LockInfo info, LockTimeout timeout) {
22          from = new Date();
23          this.tokenId = tokenId;
24          this.info = info;
25          this.timeout = timeout;
26      }
27  
28      public Date getFrom() {
29          return from;
30      }
31  
32      public void setFrom(Date from) {
33          this.from = from;
34      }
35  
36      public boolean isExpired() {
37          long secondsDif = dateDiffSeconds(new Date(), from);
38          // http://jira.ettrema.com:8080/browse/MIL-79
39          Long seconds = timeout.getSeconds();
40          if (seconds == null) // Infinite
41          {
42              return false;
43          }
44          return (secondsDif > seconds);
45  
46      }
47  
48      private long dateDiffSeconds(Date dt1, Date dt2) {
49          return (dt1.getTime() - dt2.getTime()) / 1000;
50  
51      }
52  }