1 16 package org.outerj.daisy.frontend; 17 18 import org.apache.avalon.framework.thread.ThreadSafe; 19 import org.apache.avalon.framework.parameters.Parameters; 20 import org.apache.avalon.framework.service.Serviceable; 21 import org.apache.avalon.framework.service.ServiceManager; 22 import org.apache.avalon.framework.service.ServiceException; 23 import org.apache.avalon.framework.activity.Disposable; 24 import org.apache.cocoon.acting.Action; 25 import org.apache.cocoon.environment.Redirector; 26 import org.apache.cocoon.environment.SourceResolver; 27 import org.apache.cocoon.environment.Request; 28 import org.apache.cocoon.environment.ObjectModelHelper; 29 import org.outerj.daisy.frontend.components.siteconf.SitesManager; 30 import org.outerj.daisy.frontend.components.siteconf.SiteConf; 31 32 import java.util.Map ; 33 import java.util.Collections ; 34 35 public class HandleSiteAction implements ThreadSafe, Action, Serviceable, Disposable { 36 private ServiceManager serviceManager; 37 private SitesManager sitesManager; 38 39 public void service(ServiceManager serviceManager) throws ServiceException { 40 this.serviceManager = serviceManager; 41 this.sitesManager = (SitesManager)serviceManager.lookup(SitesManager.ROLE); 42 } 43 44 public void dispose() { 45 serviceManager.release(sitesManager); 46 } 47 48 public Map act(Redirector redirector, SourceResolver sourceResolver, Map objectModel, String s, Parameters parameters) throws Exception { 49 String siteName = parameters.getParameter("siteName"); 50 SiteConf siteConf = sitesManager.getSiteConf(siteName); 51 52 Request request = ObjectModelHelper.getRequest(objectModel); 53 request.setAttribute("siteConf", siteConf); 54 55 return Collections.EMPTY_MAP; 56 } 57 } 58 | Popular Tags |