JAL-3878 Create web service class - container for service metadata and actions
[jalview.git] / src / jalview / ws2 / api / Credentials.java
1 package jalview.ws2.api;
2
3 import java.util.Objects;
4
5 public final class Credentials
6 {
7   String username = null;
8   String email = null;
9   String password = null;
10   
11   private Credentials() {
12   }
13   
14   public static final Credentials usingEmail(String email) {
15     Objects.requireNonNull(email);
16     if (email.isEmpty())
17       throw new IllegalArgumentException("empty email");
18     Credentials credentials = new Credentials();
19     credentials.email = email;
20     return credentials;
21   }
22   
23   public static final Credentials usingEmail(String email, String password) {
24     Objects.requireNonNull(email);
25     Objects.requireNonNull(password);
26     if (email.isEmpty())
27       throw new IllegalArgumentException("empty email");
28     Credentials credentials = new Credentials();
29     credentials.email = email;
30     credentials.password = password;
31     return credentials;
32   }
33   
34   public static final Credentials usingUsername(String username, String password) {
35     Objects.requireNonNull(username);
36     Objects.requireNonNull(password);
37     if (username.isEmpty())
38       throw new IllegalArgumentException("empty username");
39     Credentials credentials = new Credentials();
40     credentials.username = username;
41     credentials.password = password;
42     return credentials;
43   }
44 }