1 18 19 package cowsultants.itracker.web.servlets; 20 21 import java.io.*; 22 import java.rmi.*; 23 import java.util.*; 24 import javax.rmi.*; 25 import javax.naming.*; 26 import javax.servlet.*; 27 import javax.servlet.http.*; 28 29 import cowsultants.itracker.ejb.client.models.*; 30 import cowsultants.itracker.ejb.client.interfaces.*; 31 import cowsultants.itracker.ejb.client.util.*; 32 import cowsultants.itracker.web.scheduler.*; 33 34 public class SchedulerController extends GenericController { 35 Scheduler scheduler = null; 36 37 public SchedulerController() { 38 } 39 40 public void init(ServletConfig config) { 41 try { 42 scheduler = new Scheduler(); 43 scheduler.setPriority(4); 44 scheduler.start(); 45 46 InitialContext ic = new InitialContext(); 47 Object shRef = ic.lookup("java:comp/env/" + SchedulerHandler.JNDI_NAME); 48 SchedulerHandlerHome shHome = (SchedulerHandlerHome) PortableRemoteObject.narrow(shRef, SchedulerHandlerHome.class); 49 SchedulerHandler sh = shHome.create(); 50 51 ScheduledTaskModel[] tasks = sh.getAllTasks(); 52 if(tasks != null) { 53 for(int i = 0; i < tasks.length; i++) { 54 scheduler.addTask(tasks[i]); 55 } 56 } 57 } catch(Exception e) { 58 Logger.logError("Unable to start scheduler. " + e.getMessage()); 59 } 60 } 61 62 public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 63 } 64 65 public void destroy() { 66 scheduler.setStop(true); 67 scheduler = null; 68 } 69 } 70 | Popular Tags |