6262import org .springframework .security .oauth2 .provider .TokenRequest ;
6363import org .springframework .security .oauth2 .provider .token .TokenEnhancer ;
6464import org .springframework .stereotype .Service ;
65+ import org .springframework .transaction .annotation .Transactional ;
6566
6667import com .google .common .collect .Sets ;
6768import com .nimbusds .jose .util .Base64URL ;
@@ -177,6 +178,7 @@ private OAuth2RefreshTokenEntity clearExpiredRefreshToken(OAuth2RefreshTokenEnti
177178 }
178179
179180 @ Override
181+ @ Transactional (value ="defaultTransactionManager" )
180182 public OAuth2AccessTokenEntity createAccessToken (OAuth2Authentication authentication ) throws AuthenticationException , InvalidClientException {
181183 if (authentication != null && authentication .getOAuth2Request () != null ) {
182184 // look up our client
@@ -310,6 +312,7 @@ private OAuth2RefreshTokenEntity createRefreshToken(ClientDetailsEntity client,
310312 }
311313
312314 @ Override
315+ @ Transactional (value ="defaultTransactionManager" )
313316 public OAuth2AccessTokenEntity refreshAccessToken (String refreshTokenValue , TokenRequest authRequest ) throws AuthenticationException {
314317
315318 OAuth2RefreshTokenEntity refreshToken = clearExpiredRefreshToken (tokenRepository .getRefreshTokenByValue (refreshTokenValue ));
@@ -455,6 +458,7 @@ public OAuth2RefreshTokenEntity getRefreshToken(String refreshTokenValue) throws
455458 * Revoke a refresh token and all access tokens issued to it.
456459 */
457460 @ Override
461+ @ Transactional (value ="defaultTransactionManager" )
458462 public void revokeRefreshToken (OAuth2RefreshTokenEntity refreshToken ) {
459463 tokenRepository .clearAccessTokensForRefreshToken (refreshToken );
460464 tokenRepository .removeRefreshToken (refreshToken );
@@ -464,6 +468,7 @@ public void revokeRefreshToken(OAuth2RefreshTokenEntity refreshToken) {
464468 * Revoke an access token.
465469 */
466470 @ Override
471+ @ Transactional (value ="defaultTransactionManager" )
467472 public void revokeAccessToken (OAuth2AccessTokenEntity accessToken ) {
468473 tokenRepository .removeAccessToken (accessToken );
469474 }
@@ -533,6 +538,7 @@ public void doOperation(AuthenticationHolderEntity item) {
533538 * @see org.mitre.oauth2.service.OAuth2TokenEntityService#saveAccessToken(org.mitre.oauth2.model.OAuth2AccessTokenEntity)
534539 */
535540 @ Override
541+ @ Transactional (value ="defaultTransactionManager" )
536542 public OAuth2AccessTokenEntity saveAccessToken (OAuth2AccessTokenEntity accessToken ) {
537543 OAuth2AccessTokenEntity newToken = tokenRepository .saveAccessToken (accessToken );
538544
@@ -548,6 +554,7 @@ public OAuth2AccessTokenEntity saveAccessToken(OAuth2AccessTokenEntity accessTok
548554 * @see org.mitre.oauth2.service.OAuth2TokenEntityService#saveRefreshToken(org.mitre.oauth2.model.OAuth2RefreshTokenEntity)
549555 */
550556 @ Override
557+ @ Transactional (value ="defaultTransactionManager" )
551558 public OAuth2RefreshTokenEntity saveRefreshToken (OAuth2RefreshTokenEntity refreshToken ) {
552559 return tokenRepository .saveRefreshToken (refreshToken );
553560 }
0 commit comments