1 package mircoders.servlet;
6 import javax.servlet.*;
7 import javax.servlet.http.*;
9 import freemarker.template.*;
13 import mir.producer.*;
15 import mircoders.producer.*;
16 import mircoders.entity.*;
17 import mircoders.global.*;
19 /* Verteilerservlet, dass je nach Parameter task die Klasse Producer"TASK"
20 * ueber die Methode handle(); aufruft
25 public class ServletModuleProducer extends ServletModule
28 private static ServletModuleProducer instance = new ServletModuleProducer();
29 public static ServletModule getInstance() { return instance; }
31 private ServletModuleProducer() {
32 theLog = Logfile.getInstance(MirConfig.getProp("Home") + MirConfig.getProp("ServletModule.Producer.Logfile"));
33 defaultAction="produce";
37 public void produce(HttpServletRequest req, HttpServletResponse res)
38 throws ServletModuleException
41 PrintWriter out = res.getWriter();
44 if (req.getParameter("producer")!=null) {
45 // ML: new producer system:
47 String producerParam = req.getParameter("producer");
48 String verbParam = req.getParameter("verb");
50 MirGlobal.producerEngine().addJob(producerParam, verbParam);
51 MirGlobal.producerEngine().printQueueStatus(out);
53 // ProducerFactory factory = (ProducerFactory) MirGlobal.localizer().producers().factories().get(producerParam);
54 // mir.producer.Producer producer = factory.makeProducer(verbParam);
56 // producer.produce(out);
61 // ML: old producer system:
63 String taskParam = req.getParameter("task");
64 String forcedParam = req.getParameter("forced");
65 String syncParam = req.getParameter("sync");
66 theLog.printInfo("Starting Task: " + taskParam);
67 if (taskParam == null) {
68 throw new ServletModuleException("Kein Task angegeben!");
70 Class producerModule = Class.forName("mircoders.producer.Producer" + taskParam);
71 mircoders.producer.Producer producer = (mircoders.producer.Producer) producerModule.newInstance();
72 HttpSession session=req.getSession(false);
73 EntityUsers user = (EntityUsers)session.getAttribute("login.uid");
75 if (forcedParam!=null && !forcedParam.equals("")) {
76 if (syncParam!=null && !syncParam.equals("")) {
77 producer.handle(out, user, true, true);
79 producer.handle(out, user, true,false);
82 producer.handle(out, user, false,false);
89 throw new ServletModuleException(e.toString());