@@ -17,20 +17,15 @@ class TrustedDeviceTokenStorage
1717 private $ requestStack ;
1818
1919 /**
20- * @var JwtTokenEncoder
20+ * @var TrustedDeviceTokenEncoder
2121 */
22- private $ jwtTokenEncoder ;
22+ private $ tokenGenerator ;
2323
2424 /**
2525 * @var string
2626 */
2727 private $ cookieName ;
2828
29- /**
30- * @var int
31- */
32- private $ trustedTokenLifetime ;
33-
3429 /**
3530 * @var TrustedDeviceToken[]|null
3631 */
@@ -41,12 +36,11 @@ class TrustedDeviceTokenStorage
4136 */
4237 private $ updateCookie = false ;
4338
44- public function __construct (RequestStack $ requestStack , JwtTokenEncoder $ jwtTokenEncoder , string $ cookieName, int $ trustedTokenLifetime )
39+ public function __construct (RequestStack $ requestStack , TrustedDeviceTokenEncoder $ tokenGenerator , string $ cookieName )
4540 {
46- $ this ->jwtTokenEncoder = $ jwtTokenEncoder ;
4741 $ this ->requestStack = $ requestStack ;
42+ $ this ->tokenGenerator = $ tokenGenerator ;
4843 $ this ->cookieName = $ cookieName ;
49- $ this ->trustedTokenLifetime = $ trustedTokenLifetime ;
5044 }
5145
5246 public function hasUpdatedCookie (): bool
@@ -89,22 +83,10 @@ public function addTrustedToken(string $username, string $firewall, int $version
8983 }
9084 }
9185
92- $ validUntil = $ this ->getValidUntil ();
93- $ jwtToken = $ this ->jwtTokenEncoder ->generateToken ($ username , $ firewall , $ version , $ validUntil );
94- $ this ->trustedTokenList [] = new TrustedDeviceToken ($ jwtToken );
86+ $ this ->trustedTokenList [] = $ this ->tokenGenerator ->generateToken ($ username , $ firewall , $ version );
9587 $ this ->updateCookie = true ;
9688 }
9789
98- private function getValidUntil (): \DateTimeInterface
99- {
100- return $ this ->getDateTimeNow ()->add (new \DateInterval ('PT ' .$ this ->trustedTokenLifetime .'S ' ));
101- }
102-
103- protected function getDateTimeNow (): \DateTimeImmutable
104- {
105- return new \DateTimeImmutable ();
106- }
107-
10890 /**
10991 * @return TrustedDeviceToken[]
11092 */
@@ -130,11 +112,11 @@ private function readTrustedTokenList(): array
130112 $ trustedTokenList = [];
131113 $ trustedTokenEncodedList = explode (self ::TOKEN_DELIMITER , $ cookie );
132114 foreach ($ trustedTokenEncodedList as $ trustedTokenEncoded ) {
133- $ trustedToken = $ this ->jwtTokenEncoder ->decodeToken ($ trustedTokenEncoded );
115+ $ trustedToken = $ this ->tokenGenerator ->decodeToken ($ trustedTokenEncoded );
134116 if (!$ trustedToken || $ trustedToken ->isExpired ()) {
135117 $ this ->updateCookie = true ; // When there are invalid token, update the cookie to remove them
136118 } else {
137- $ trustedTokenList [] = new TrustedDeviceToken ( $ trustedToken) ;
119+ $ trustedTokenList [] = $ trustedToken ;
138120 }
139121 }
140122
0 commit comments