List of usage examples for org.springframework.boot.web.servlet FilterRegistrationBean getFilter
@Override
public T getFilter()
From source file:net.bull.javamelody.TestJavaMelodyAutoConfiguration.java
/** * test.//from ww w . j a v a 2s . c om */ @SuppressWarnings("unchecked") @Test public void testJavaMelodyAutoConfigurationIsCreated() { // It should create a session listener. final ServletListenerRegistrationBean<EventListener> sessionListenerRegistrationBean = context .getBean(ServletListenerRegistrationBean.class); assertThat(sessionListenerRegistrationBean).isNotNull(); // It should create a registration bean named "javamelody-registration". final Object registrationBean = context.getBean(JavaMelodyAutoConfiguration.REGISTRATION_BEAN_NAME); assertThat(registrationBean).isNotNull(); assertThat(registrationBean).isInstanceOf(FilterRegistrationBean.class); // It should create a filter registration bean with the appropriately configured monitoring filter. final FilterRegistrationBean filterRegistrationBean = (FilterRegistrationBean) registrationBean; assertThat(filterRegistrationBean.getFilter()).isNotNull(); assertThat(filterRegistrationBean.getFilter()).isInstanceOf(MonitoringFilter.class); assertThat(filterRegistrationBean.getInitParameters()).containsEntry("log", "true"); assertThat(filterRegistrationBean.getInitParameters()).containsEntry("monitoring-path", "/test/path"); assertThat(filterRegistrationBean.getUrlPatterns()).containsExactly("/*"); // It should create the monitoring filter with the application type "Spring Boot". final MonitoringFilter monitoringFilter = (MonitoringFilter) filterRegistrationBean.getFilter(); assertThat(monitoringFilter.getApplicationType()).isEqualTo("Spring Boot"); // It should create an auto-proxy creator. final DefaultAdvisorAutoProxyCreator autoProxyCreator = context .getBean(DefaultAdvisorAutoProxyCreator.class); assertThat(autoProxyCreator).isNotNull(); // It should create a bean post-processor for data sources. final SpringDataSourceBeanPostProcessor dataSourcePostProcessor = context .getBean(SpringDataSourceBeanPostProcessor.class); assertThat(dataSourcePostProcessor).isNotNull(); // Cannot test excluded data sources since there is no public accessor for that. // It should create interceptors to monitor Spring services and controllers. final Map<String, MonitoringSpringAdvisor> springAdvisors = context .getBeansOfType(MonitoringSpringAdvisor.class); boolean monitoredWithAdvisorFound = false; int stereotypeAdvisorsCount = 0; for (final MonitoringSpringAdvisor springAdvisor : springAdvisors.values()) { if (springAdvisor.getPointcut() instanceof MonitoredWithAnnotationPointcut) { monitoredWithAdvisorFound = true; } else if (springAdvisor.getPointcut() instanceof AnnotationMatchingPointcut) { stereotypeAdvisorsCount++; // Maybe use synthetic @Service, @Controller and @RestController classes to check if point cuts match. } } assertThat(monitoredWithAdvisorFound).isTrue(); assertThat(stereotypeAdvisorsCount).isEqualTo(3); // It should create a bean post-processor for rest templates. final SpringRestTemplateBeanPostProcessor restTemplatePostProcessor = context .getBean(SpringRestTemplateBeanPostProcessor.class); assertThat(restTemplatePostProcessor).isNotNull(); }
From source file:com.stormpath.shiro.spring.boot.autoconfigure.StormpathShiroWebAutoConfiguration.java
@Bean public ShiroPrioritizedFilterChainResolver shiroPrioritizedFilterChainResolver( @Qualifier("filterShiroFilterRegistrationBean") FilterRegistrationBean filterShiroFilterRegistrationBean, @Qualifier("stormpathFilter") FilterRegistrationBean stormpathFilter) { if (!(filterShiroFilterRegistrationBean.getFilter() instanceof AbstractShiroFilter)) { throw new ConfigurationException( "Shiro filter registration bean did not contain a AbstractShiroFitler"); }//from w w w . j a v a 2 s. c om AbstractShiroFilter filter = (AbstractShiroFilter) filterShiroFilterRegistrationBean.getFilter(); FilterChainResolver originalFilterChainResolver = filter.getFilterChainResolver(); List<Filter> prioritizedFilters = new ArrayList<>(); prioritizedFilters.add(stormpathFilter.getFilter()); stormpathFilter.setEnabled(false); prioritizedFilters.add(new StormpathShiroPassiveLoginFilter()); ShiroPrioritizedFilterChainResolver prioritizedFilterChainResolver = new ShiroPrioritizedFilterChainResolver( originalFilterChainResolver, prioritizedFilters); filter.setFilterChainResolver(prioritizedFilterChainResolver); return prioritizedFilterChainResolver; }
From source file:org.springframework.boot.test.autoconfigure.web.servlet.SpringBootMockMvcBuilderCustomizer.java
private void addFilter(ConfigurableMockMvcBuilder<?> builder, FilterRegistrationBean registration) { addFilter(builder, registration.getFilter(), registration.getUrlPatterns()); }