1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package org.apache.http.auth;
28
29 import java.io.Serializable;
30 import java.security.Principal;
31
32 import org.apache.http.annotation.Contract;
33 import org.apache.http.annotation.ThreadingBehavior;
34 import org.apache.http.util.Args;
35 import org.apache.http.util.LangUtils;
36
37
38
39
40
41
42
43 @Contract(threading = ThreadingBehavior.IMMUTABLE)
44 public class UsernamePasswordCredentials implements Credentials, Serializable {
45
46 private static final long serialVersionUID = 243343858802739403L;
47
48 private final BasicUserPrincipal principal;
49 private final String password;
50
51
52
53
54
55
56
57
58 @Deprecated
59 public UsernamePasswordCredentials(final String usernamePassword) {
60 super();
61 Args.notNull(usernamePassword, "Username:password string");
62 final int atColon = usernamePassword.indexOf(':');
63 if (atColon >= 0) {
64 this.principal = new BasicUserPrincipal(usernamePassword.substring(0, atColon));
65 this.password = usernamePassword.substring(atColon + 1);
66 } else {
67 this.principal = new BasicUserPrincipal(usernamePassword);
68 this.password = null;
69 }
70 }
71
72
73
74
75
76
77
78
79 public UsernamePasswordCredentials(final String userName, final String password) {
80 super();
81 Args.notNull(userName, "Username");
82 this.principal = new BasicUserPrincipal(userName);
83 this.password = password;
84 }
85
86 @Override
87 public Principal getUserPrincipal() {
88 return this.principal;
89 }
90
91 public String getUserName() {
92 return this.principal.getName();
93 }
94
95 @Override
96 public String getPassword() {
97 return password;
98 }
99
100 @Override
101 public int hashCode() {
102 return this.principal.hashCode();
103 }
104
105 @Override
106 public boolean equals(final Object o) {
107 if (this == o) {
108 return true;
109 }
110 if (o instanceof UsernamePasswordCredentials) {
111 final UsernamePasswordCredentialsche/http/auth/UsernamePasswordCredentials.html#UsernamePasswordCredentials">UsernamePasswordCredentials that = (UsernamePasswordCredentials) o;
112 if (LangUtils.equals(this.principal, that.principal)) {
113 return true;
114 }
115 }
116 return false;
117 }
118
119 @Override
120 public String toString() {
121 return this.principal.toString();
122 }
123
124 }
125