1 package org.oxerr.spring.security.otp.authentication;
2
3 import java.util.Collection;
4
5 import org.springframework.security.core.Authentication;
6 import org.springframework.security.core.GrantedAuthority;
7
8 public class OTPAuthenticationToken implements Authentication {
9
10 private static final long serialVersionUID = 2019011001L;
11
12 private String oneTimePassword;
13
14 private Authentication authentication;
15
16 public OTPAuthenticationToken(String oneTimePassword) {
17 this.oneTimePassword = oneTimePassword;
18 }
19
20 public OTPAuthenticationToken(Authentication authentication) {
21 this.authentication = authentication;
22 }
23
24 public String getOneTimePassword() {
25 return oneTimePassword;
26 }
27
28 public void setOneTimePassword(String oneTimePassword) {
29 this.oneTimePassword = oneTimePassword;
30 }
31
32 @Override
33 public String getName() {
34 return authentication.getName();
35 }
36
37 @Override
38 public Collection<? extends GrantedAuthority> getAuthorities() {
39 return authentication.getAuthorities();
40 }
41
42 @Override
43 public Object getCredentials() {
44 return authentication.getCredentials();
45 }
46
47 @Override
48 public Object getDetails() {
49 return authentication.getDetails();
50 }
51
52 @Override
53 public Object getPrincipal() {
54 return authentication.getPrincipal();
55 }
56
57 @Override
58 public boolean isAuthenticated() {
59 return authentication.isAuthenticated();
60 }
61
62 @Override
63 public void setAuthenticated(boolean isAuthenticated) throws IllegalArgumentException {
64 this.authentication.setAuthenticated(isAuthenticated);
65 }
66
67 }