1 package br.com.ibnetwork.guara.pipeline.valve.view;
2
3 import org.apache.avalon.framework.configuration.Configurable;
4 import org.apache.avalon.framework.configuration.Configuration;
5 import org.apache.avalon.framework.configuration.ConfigurationException;
6 import org.apache.avalon.framework.service.ServiceException;
7 import org.apache.avalon.framework.service.ServiceManager;
8 import org.apache.avalon.framework.service.Serviceable;
9
10 import br.com.ibnetwork.guara.pipeline.PipelineException;
11 import br.com.ibnetwork.guara.pipeline.valve.ValveSupport;
12 import br.com.ibnetwork.guara.rundata.RunData;
13 import br.com.ibnetwork.guara.view.TemplateEngine;
14 import br.com.ibnetwork.guara.view.TemplateUtils;
15
16 /***
17 * @author leandro
18 */
19 public class WriteOutput
20 extends ValveSupport
21 implements Serviceable, Configurable
22 {
23 private TemplateEngine engine;
24
25 private String defaultLayout = "layouts.ajax.Body";
26
27 public void service(ServiceManager manager)
28 throws ServiceException
29 {
30 engine = (TemplateEngine) manager.lookup(TemplateEngine.ROLE);
31 }
32
33 public void configure(Configuration conf)
34 throws ConfigurationException {
35 defaultLayout = conf.getChild("defaultLayout").getAttribute("template",defaultLayout);
36 }
37
38 public boolean execute(RunData runData)
39 throws PipelineException
40 {
41 TemplateUtils.renderOutput(engine,runData,defaultLayout);
42 return true;
43 }
44
45
46 }