SSOConfigurer extends SecurityConfigurerAdapter<Void, ServiceProviderBuilder> { @Override public void init(ServiceProviderBuilder builder) throws Exception { authenticationManager = builder.getSharedObject(AuthenticationManager.class); config = builder.getSharedObject(SAMLSSOProperties.class); endpoints = builder.getSharedObject(ServiceProviderEndpoints.class); if ( config.isEnableEventPublisher() ) eventPublisher = builder.getSharedObject(ApplicationEventPublisher.class); else eventPublisher = null; }  @Override void init(ServiceProviderBuilder builder); @Override void configure(ServiceProviderBuilder builder); SSOConfigurer samlEntryPoint(SAMLEntryPoint samlEntryPoint); SSOConfigurer defaultSuccessURL(String defaultSuccessURL); SSOConfigurer successHandler(AuthenticationSuccessHandler successHandler); SSOConfigurer defaultFailureURL(String defaultFailureURL); SSOConfigurer failureHandler(AuthenticationFailureHandler failureHandler); SSOConfigurer ssoProcessingURL(String ssoProcessingURL); SSOConfigurer ssoHoKProcessingURL(String ssoHoKProcessingURL); SSOConfigurer enableSsoHoK(boolean enableSsoHoK); SSOConfigurer discoveryProcessingURL(String discoveryProcessingURL); SSOConfigurer idpSelectionPageURL(String idpSelectionPageURL); SSOConfigurer ssoLoginURL(String ssoLoginURL); SSOConfigurer profileOptions(WebSSOProfileOptions profileOptions); SSOConfigurer sessionAuthenticationStrategy(SessionAuthenticationStrategy sessionAuthenticationStrategy);  }
@Test public void init() throws Exception { SSOConfigurer configurer = new SSOConfigurer(); configurer.init(builder); verify(builder).getSharedObject(eq(ServiceProviderEndpoints.class)); verify(builder).getSharedObject(eq(SAMLSSOProperties.class)); verify(builder).getSharedObject(eq(AuthenticationManager.class)); }