View Javadoc

1   package org.apache.portals.applications.springmvc;
2   
3   import java.util.HashMap;
4   import java.util.Map;
5   import java.util.List;
6   import java.util.ArrayList;
7   import java.util.SortedSet;
8   
9   import javax.portlet.RenderRequest;
10  import javax.portlet.RenderResponse;
11  import javax.portlet.PortletConfig;
12  
13  import org.apache.commons.logging.Log;
14  import org.apache.commons.logging.LogFactory;
15  import org.springframework.beans.factory.InitializingBean;
16  import org.springframework.web.portlet.mvc.AbstractController;
17  import org.springframework.web.portlet.ModelAndView;
18  import org.springframework.web.portlet.context.PortletConfigAware;
19  
20  public class DOMTreeViewController extends AbstractController implements InitializingBean, PortletConfigAware
21  {	
22      private static final Log        log = LogFactory.getLog( DOMTreeViewController.class);
23  
24      private DOMTreeService domTreeService ;
25      private PortletConfig portletConfig ;
26      
27      private String xmlFilePath = null ;
28      private String xmlFileName = null ;
29      
30      public void afterPropertiesSet() throws Exception {
31          if (this.domTreeService == null)
32              throw new IllegalArgumentException("A DOMTreeService is required");
33      }
34      
35  	public ModelAndView handleRenderRequestInternal(RenderRequest request, RenderResponse response) throws Exception
36  	{
37  		List addTo = new ArrayList();
38  		if ( getXmlFilePath() != null )
39  		{
40  			addTo.add( new DOMTree( getXmlFileName(), getXmlFilePath() ) );
41  		}
42  		SortedSet domTreeSet = domTreeService.parseAllDOMTrees( request, this.getPortletContext(), addTo );	
43  		
44  		Map model = new HashMap();
45  		model.put( "messages", portletConfig.getResourceBundle( request.getLocale() ) );
46  		model.put( "domTreeList", domTreeSet );
47  		model.put( "domNodeHelper", new DOMTreeService.DOMNodeHelper() );
48  		
49          return new ModelAndView("domTreeView", "model", model);
50  	}	
51  	
52      public void setDomTreeService(DOMTreeService domTreeService)
53      {
54          this.domTreeService = domTreeService;
55      }
56      
57      public String getXmlFilePath()
58      {
59          return this.xmlFilePath ;
60      }
61      public void setXmlFilePath(String xmlFile)
62      {
63          this.xmlFilePath = xmlFile;
64      }
65      public String getXmlFileName()
66      {
67          return this.xmlFileName;
68      }
69      public void setXmlFileName(String xmlFileName)
70      {
71          this.xmlFileName = xmlFileName;
72      }
73      public void setPortletConfig(PortletConfig portletConfig)
74      {
75      	
76          this.portletConfig = portletConfig;
77      }
78  }