1 package org.oxerr.spring.security.wechat.authentication;
2
3 import org.springframework.security.authentication.AbstractAuthenticationToken;
4 import org.springframework.security.core.userdetails.UserDetails;
5
6 public class WeChatAuthenticationToken
7 extends AbstractAuthenticationToken {
8
9 private static final long serialVersionUID = 2016100101L;
10
11 private final UserDetails userDetails;
12 private String code;
13
14 public WeChatAuthenticationToken(String code) {
15 super(null);
16 this.userDetails = null;
17 this.code = code;
18
19 super.setAuthenticated(false);
20 }
21
22 public WeChatAuthenticationToken(UserDetails userDetails) {
23 super(userDetails.getAuthorities());
24 this.userDetails = userDetails;
25
26 super.setAuthenticated(true);
27 }
28
29
30
31
32 @Override
33 public String getCredentials() {
34 return code;
35 }
36
37
38
39
40 @Override
41 public Object getPrincipal() {
42 return userDetails;
43 }
44
45 }