1 18 19 package org.apache.roller.ui.rendering.util; 20 21 import javax.servlet.http.HttpServletRequest ; 22 import org.apache.commons.logging.Log; 23 import org.apache.commons.logging.LogFactory; 24 import org.apache.roller.RollerException; 25 import org.apache.roller.ThemeNotFoundException; 26 import org.apache.roller.model.RollerFactory; 27 import org.apache.roller.model.ThemeManager; 28 import org.apache.roller.pojos.Theme; 29 30 31 34 public class WeblogPreviewRequest extends WeblogPageRequest { 35 36 private static Log log = LogFactory.getLog(WeblogPreviewRequest.class); 37 38 private static final String PREVIEW_SERVLET = "/roller-ui/authoring/preview"; 39 40 private String themeName = null; 42 43 private Theme theme = null; 45 46 47 public WeblogPreviewRequest(HttpServletRequest request) 48 throws InvalidRequestException { 49 50 super(request); 52 53 if(request.getParameter("theme") != null) { 56 this.themeName = request.getParameter("theme"); 57 } 58 59 if(log.isDebugEnabled()) { 60 log.debug("theme = "+this.themeName); 61 } 62 } 63 64 65 boolean isValidDestination(String servlet) { 66 return (servlet != null && PREVIEW_SERVLET.equals(servlet)); 67 } 68 69 70 public String getThemeName() { 71 return themeName; 72 } 73 74 public void setThemeName(String theme) { 75 this.themeName = theme; 76 } 77 78 public String getAuthenticUser() { 80 return null; 81 } 82 83 public boolean isLoggedIn() { 85 return false; 86 } 87 88 public Theme getTheme() { 89 90 if(theme == null && themeName != null) { 91 try { 92 ThemeManager themeMgr = RollerFactory.getRoller().getThemeManager(); 93 theme = themeMgr.getTheme(themeName); 94 } catch(ThemeNotFoundException tnfe) { 95 } catch(RollerException re) { 97 log.error("Error looking up theme "+themeName, re); 98 } 99 } 100 101 return theme; 102 } 103 104 public void setTheme(Theme theme) { 105 this.theme = theme; 106 } 107 108 } 109 | Popular Tags |