1 24 package org.riotfamily.common.i18n; 25 26 import javax.servlet.http.HttpServletRequest ; 27 import javax.servlet.http.HttpServletResponse ; 28 29 import org.apache.commons.logging.Log; 30 import org.apache.commons.logging.LogFactory; 31 import org.springframework.beans.BeansException; 32 import org.springframework.beans.factory.BeanFactory; 33 import org.springframework.beans.factory.BeanFactoryAware; 34 import org.springframework.beans.factory.BeanNotOfRequiredTypeException; 35 import org.springframework.beans.factory.NoSuchBeanDefinitionException; 36 import org.springframework.web.servlet.ModelAndView; 37 import org.springframework.web.servlet.mvc.Controller; 38 39 46 public class MessageCodeRevelationController implements Controller, 47 BeanFactoryAware { 48 49 private static Log log = LogFactory.getLog( 50 MessageCodeRevelationController.class); 51 52 private CodeRevealingMessageSource messageSource; 53 54 public void setBeanFactory(BeanFactory beanFactory) throws BeansException { 55 try { 56 messageSource = (CodeRevealingMessageSource) beanFactory.getBean( 57 "messageSource", CodeRevealingMessageSource.class); 58 } 59 catch (BeanNotOfRequiredTypeException e) { 60 log.info("MessageSource is not a CodeRevealingMessageSource - " + 61 "Message code revelation is not available."); 62 } 63 catch (NoSuchBeanDefinitionException e) { 64 log.info("No MessageSource found - " + 65 "Message code revelation is not available."); 66 } 67 } 68 69 public ModelAndView handleRequest(HttpServletRequest request, 70 HttpServletResponse response) throws Exception { 71 72 if (messageSource != null) { 73 boolean reveal = !messageSource.isRevealCodes(); 74 messageSource.setRevealCodes(reveal); 75 } 76 return null; 77 } 78 } 79 | Popular Tags |