001 package railo.runtime.thread; 002 003 import railo.runtime.config.Config; 004 import railo.runtime.exp.PageException; 005 import railo.runtime.spooler.ExecutionPlan; 006 import railo.runtime.spooler.SpoolerTaskSupport; 007 import railo.runtime.type.Struct; 008 import railo.runtime.type.StructImpl; 009 010 public class ChildSpoolerTask extends SpoolerTaskSupport { 011 012 private ChildThreadImpl ct; 013 014 public ChildSpoolerTask(ChildThreadImpl ct,ExecutionPlan[] plans) { 015 super(plans); 016 this.ct=ct; 017 } 018 019 @Override 020 public Struct detail() { 021 StructImpl detail = new StructImpl(); 022 detail.setEL("template", ct.getTemplate()); 023 return detail; 024 } 025 026 public Object execute(Config config) throws PageException { 027 PageException pe = ct.execute(config); 028 if(pe!=null) throw pe; 029 return null; 030 } 031 032 public String getType() { 033 return "cfthread"; 034 } 035 036 public String subject() { 037 return ct.getTagName(); 038 } 039 040 }