1 16 19 20 package org.apache.pluto.portalImpl.om.servlet.impl; 21 22 import java.util.Collection ; 23 import java.util.Locale ; 24 25 import javax.servlet.RequestDispatcher ; 26 import javax.servlet.ServletContext ; 27 28 import org.apache.pluto.om.common.Description; 29 import org.apache.pluto.om.common.DescriptionSet; 30 import org.apache.pluto.om.common.DisplayName; 31 import org.apache.pluto.om.common.DisplayNameSet; 32 import org.apache.pluto.om.common.ObjectID; 33 import org.apache.pluto.om.common.ParameterSet; 34 import org.apache.pluto.om.common.SecurityRoleRefSet; 35 import org.apache.pluto.om.servlet.ServletDefinition; 36 import org.apache.pluto.om.servlet.ServletDefinitionCtrl; 37 import org.apache.pluto.om.servlet.WebApplicationDefinition; 38 import org.apache.pluto.portalImpl.om.common.Support; 39 import org.apache.pluto.portalImpl.om.common.impl.DescriptionSetImpl; 40 import org.apache.pluto.portalImpl.om.common.impl.DisplayNameSetImpl; 41 import org.apache.pluto.portalImpl.services.log.Log; 42 import org.apache.pluto.util.StringUtils; 43 44 public class ServletDefinitionImpl 45 implements ServletDefinition, ServletDefinitionCtrl, java.io.Serializable , Support { 46 47 private DescriptionSet descriptions = new org.apache.pluto.portalImpl.om.common.impl.DescriptionSetImpl(); 48 private DisplayNameSet displayNames = new org.apache.pluto.portalImpl.om.common.impl.DisplayNameSetImpl(); 49 50 public String icon = null; 52 private String id = ""; 53 private ParameterSet initParams = new org.apache.pluto.portalImpl.om.common.impl.ParameterSetImpl(); 54 private SecurityRoleRefSet initSecurityRoleRefs = new org.apache.pluto.portalImpl.om.common.impl.SecurityRoleRefSetImpl(); 55 public String jspFile = null; 56 public String loadOnStartup = null; 57 private ObjectID objectId = null; 58 public String securityRoleRef = null; 59 private String servletClass = null; 60 private ServletMappingImpl servletMapping = null; 61 private String servletName = null; 62 private long available = 0; 63 64 private WebApplicationDefinition webApplication = null; 65 66 68 public ObjectID getId() 69 { 70 if (objectId==null) { 71 objectId = org.apache.pluto.portalImpl.util.ObjectID.createFromString(id); 72 } 73 return objectId; 74 } 75 76 public String getServletName() 77 { 78 return servletName; 79 } 80 81 public DisplayName getDisplayName(Locale locale) 82 { 83 return displayNames.get(locale); 84 } 85 86 89 public Description getDescription(Locale locale) { 90 return descriptions.get(locale); 91 } 92 93 public String getServletClass() 94 { 95 return servletClass; 96 } 97 98 public ParameterSet getInitParameterSet() 99 { 100 return initParams; 101 } 102 103 public WebApplicationDefinition getWebApplicationDefinition() 104 { 105 return webApplication; 106 } 107 108 public RequestDispatcher getRequestDispatcher(ServletContext servletContext) 109 { 110 ServletContext newContext = webApplication.getServletContext(servletContext); 111 if (newContext==null) { 112 Log.error("ServletContext '"+((WebApplicationDefinitionImpl)webApplication).getContextRoot()+"' not found!"); 113 return null; 114 } 115 if (Log.isDebugEnabled()) { 116 Log.debug("Looking up RequestDispatcher for servlet mapping "+servletMapping.getUrlPattern()); 117 } 118 return newContext.getRequestDispatcher(servletMapping.getUrlPattern()); 119 } 120 121 public long getAvailable() { 122 return available; 123 } 124 125 public boolean isUnavailable() { 126 if (available == 0) { 127 return false; 128 } else if (available <= System.currentTimeMillis()) { 129 available = 0; 130 return false; 131 } else { 132 return true; 133 } 134 } 135 136 138 public void postBuild(Object parameter) throws Exception 139 { 140 setServletMapping((ServletMappingImpl)parameter); 141 } 142 143 144 public void postLoad(Object parameter) throws Exception 145 { 146 ((Support)descriptions).postLoad(parameter); 147 ((Support)displayNames).postLoad(parameter); 148 } 149 public void postStore(Object parameter) throws Exception 150 { 151 } 152 public void preBuild(Object parameter) throws Exception 153 { 154 setWebApplicationDefinition((WebApplicationDefinition)parameter); 155 } 156 public void preStore(Object parameter) throws Exception 157 { 158 } 159 160 162 public String getCastorId() { 163 if (id.length() > 0) 164 return getId().toString(); 165 else 166 return null; 167 } 168 169 public Collection getCastorInitParams() 170 { 171 return(org.apache.pluto.portalImpl.om.common.impl.ParameterSetImpl)initParams; 172 } 173 174 public SecurityRoleRefSet getCastorInitSecurityRoleRefs() 175 { 176 return initSecurityRoleRefs; 177 } 178 179 public Collection getCastorDisplayNames() 180 { 181 return(DisplayNameSetImpl)displayNames; 182 } 183 184 public Collection getCastorDescriptions() 185 { 186 return(DescriptionSetImpl)descriptions; 187 } 188 189 public Collection getDescriptions() 190 { 191 return(DescriptionSetImpl)descriptions; 192 } 193 194 195 196 public SecurityRoleRefSet getInitSecurityRoleRefSet() 197 { 198 return initSecurityRoleRefs; 199 } 200 201 202 203 public String getJspFile() 204 { 205 return jspFile; 206 } 207 208 209 public void setCastorId(String id) { 210 setId(id); 211 } 212 213 public void setCastorInitSecurityRoleRefs(SecurityRoleRefSet castorInitSecurityRoleRefs) 214 { 215 this.initSecurityRoleRefs = castorInitSecurityRoleRefs; 216 } 217 218 public void setCastorDisplayNames(DisplayNameSet castorDisplayNames) 219 { 220 this.displayNames = castorDisplayNames; 221 } 222 223 public void setCastorDescriptions(DescriptionSet castorDescriptions) 224 { 225 this.descriptions = castorDescriptions; 226 } 227 228 public void setDisplayNames(DisplayNameSet displayNames) 229 { 230 this.displayNames = displayNames; 231 } 232 233 public void setDescriptions(DescriptionSet descriptions) { 234 this.descriptions = descriptions; 235 } 236 237 public void setId(String id) 238 { 239 this.id = id; 240 objectId = null; 241 } 242 243 public void setServletClass(String servletClass) 244 { 245 this.servletClass = servletClass; 246 } 247 248 public void setAvailable(long available) { 249 if (available > System.currentTimeMillis()) { 250 this.available = available; 251 } else { 252 this.available = 0; 253 } 254 } 255 256 public void setJspFile(String jspFile) 257 { 258 this.jspFile = jspFile; 259 } 260 261 protected void setServletMapping(ServletMappingImpl servletMapping) 262 { 263 this.servletMapping = servletMapping; 264 } 265 266 public void setServletName(String servletName) 267 { 268 this.servletName = servletName; 269 } 270 271 protected void setWebApplicationDefinition(WebApplicationDefinition webApplication) 272 { 273 this.webApplication = webApplication; 274 } 275 276 278 public String toString() 279 { 280 return toString(0); 281 } 282 283 public String toString(int indent) 284 { 285 StringBuffer buffer = new StringBuffer (50); 286 StringUtils.newLine(buffer,indent); 287 buffer.append(getClass().toString()); buffer.append(":"); 288 StringUtils.newLine(buffer,indent); 289 buffer.append("{"); 290 StringUtils.newLine(buffer,indent); 291 buffer.append("id='"); buffer.append(id); buffer.append("'"); 292 StringUtils.newLine(buffer,indent); 293 buffer.append("servletName='"); buffer.append(servletName); buffer.append("'"); 294 StringUtils.newLine(buffer,indent); 295 buffer.append(((DescriptionSetImpl)descriptions).toString(indent)); 296 297 StringUtils.newLine(buffer,indent); 298 buffer.append(((DisplayNameSetImpl)displayNames).toString(indent)); 299 300 if (servletClass!=null) { 301 buffer.append("servletClass='"); buffer.append(servletClass); buffer.append("'"); 302 } else if (jspFile!=null) { 303 buffer.append("jspFile='"); buffer.append(jspFile); buffer.append("'"); 304 } 305 StringUtils.newLine(buffer,indent); 306 buffer.append(((org.apache.pluto.portalImpl.om.common.impl.ParameterSetImpl)initParams).toString(indent)); 307 308 StringUtils.newLine(buffer,indent); 309 buffer.append(((org.apache.pluto.portalImpl.om.common.impl.SecurityRoleRefSetImpl)initSecurityRoleRefs).toString(indent)); 310 311 if (servletMapping!=null) { 312 StringUtils.newLine(buffer,indent); 313 buffer.append("Linked ServletMapping:"); 314 buffer.append(servletMapping.toString(indent+2)); 315 } 316 StringUtils.newLine(buffer,indent); 317 buffer.append("}"); 318 return buffer.toString(); 319 } 320 321 } 322 | Popular Tags |