1 16 package org.outerj.daisy.books.frontend; 17 18 import org.outerj.daisy.frontend.util.AbstractDaisyApple; 19 import org.outerj.daisy.frontend.util.XslUtil; 20 import org.outerj.daisy.frontend.WikiHelper; 21 import org.outerj.daisy.frontend.PageContext; 22 import org.outerj.daisy.frontend.SkinConfHelper; 23 import org.outerj.daisy.repository.Repository; 24 import org.outerj.daisy.books.store.BookStore; 25 import org.outerj.daisy.books.store.BookInstance; 26 import org.apache.cocoon.components.flow.apples.StatelessAppleController; 27 import org.apache.cocoon.components.flow.apples.AppleRequest; 28 import org.apache.cocoon.components.flow.apples.AppleResponse; 29 import org.apache.cocoon.environment.Request; 30 import org.apache.avalon.framework.service.Serviceable; 31 import org.apache.avalon.framework.service.ServiceManager; 32 import org.apache.avalon.framework.service.ServiceException; 33 34 import java.util.Map ; 35 import java.util.HashMap ; 36 37 public class BookInstanceEditorApple extends AbstractDaisyApple implements StatelessAppleController, Serviceable { 38 private ServiceManager serviceManager; 39 40 public void service(ServiceManager serviceManager) throws ServiceException { 41 this.serviceManager = serviceManager; 42 } 43 44 protected void processInternal(AppleRequest appleRequest, AppleResponse appleResponse) throws Exception { 45 Request request = appleRequest.getCocoonRequest(); 46 Repository repository = WikiHelper.getRepository(request, serviceManager); 47 BookStore bookStore = (BookStore)repository.getExtension("BookStore"); 48 String bookInstanceName = appleRequest.getSitemapParameter("bookInstanceName"); 49 BookInstance bookInstance = bookStore.getBookInstance(bookInstanceName); 50 51 PageContext pageContext = new PageContext(getMountPoint(), repository, getLayoutType(), getSkin(), SkinConfHelper.getGlobalSkinConf(serviceManager), getContext()); 52 Map viewData = new HashMap (); 53 viewData.put("pageContext", pageContext); 54 viewData.put("bookInstanceName", bookInstanceName); 55 viewData.put("metaData", bookInstance.getMetaData()); 56 viewData.put("publicationInfos", bookInstance.getPublicationsInfo().getInfos()); 57 viewData.put("daisyutil", new XslUtil()); 59 appleResponse.sendPage("BookInstanceEditorPipe", viewData); 60 } 61 } 62 | Popular Tags |