List of usage examples for org.springframework.security.web.access.channel ChannelDecisionManagerImpl setChannelProcessors
@SuppressWarnings("cast") public void setChannelProcessors(List<?> newList)
From source file:org.broadleafcommerce.common.security.channel.ProtoChannelBeanPostProcessor.java
@Override public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { if (bean instanceof ChannelDecisionManagerImpl) { try {// www . ja va 2 s. c o m ChannelDecisionManagerImpl manager = (ChannelDecisionManagerImpl) bean; Field channelProcessors = manager.getClass().getDeclaredField("channelProcessors"); channelProcessors.setAccessible(true); List<ChannelProcessor> list = (List<ChannelProcessor>) channelProcessors.get(manager); list.clear(); manager.setChannelProcessors(channelProcessorOverrides); LOG.info( "Replacing the standard Spring Security channel processors with custom processors that look for a " + "'X-Forwarded-Proto' request header. This allows Spring Security to sit behind a load balancer with SSL termination."); } catch (Exception e) { throw new RuntimeException(e); } } return bean; }