+ public static Registration prepareForLoad(final AuthenticationService authService,
+ final TokenAuthenticators authenticators, final @Nullable TokenStore tokenStore) {
+ AUTH_SERVICE_TL.set(requireNonNull(authService));
+ AUTHENICATORS_TL.set(requireNonNull(authenticators));
+ TOKEN_STORE_TL.set(tokenStore);
+ return () -> {
+ AUTH_SERVICE_TL.remove();
+ AUTHENICATORS_TL.remove();
+ TOKEN_STORE_TL.remove();
+ };
+ }
+
+ private static <T> T verifyLoad(final ThreadLocal<T> threadLocal) {
+ return verifyNotNull(threadLocal.get(), "TokenAuthRealm loading not prepared");
+ }
+