View Javadoc

1   package com.bradmcevoy.http;
2   
3   /**
4    *
5    */
6   public class LockResult {
7   
8       public static LockResult failed( FailureReason failureReason) {
9           return new LockResult(failureReason, null);
10      }
11  
12      public static LockResult success(LockToken token) {
13          return new LockResult(null, token);
14      }
15  
16      public enum FailureReason {
17          ALREADY_LOCKED(Response.Status.SC_CONFLICT),
18          PRECONDITION_FAILED(Response.Status.SC_LOCKED);
19  
20          public Response.Status status;
21  
22          FailureReason(Response.Status status) {
23              this.status = status;
24          }
25      }
26  
27      final FailureReason failureReason;
28      final LockToken lockToken;
29  
30      public LockResult(FailureReason failureReason, LockToken lockToken) {
31          this.failureReason = failureReason;
32          this.lockToken = lockToken;
33      }
34  
35      public boolean isSuccessful() {
36          return failureReason == null;
37      }
38  
39      public FailureReason getFailureReason() {
40          return failureReason;
41      }
42  
43      public LockToken getLockToken() {
44          return lockToken;
45      }
46  
47      
48  }