1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.miloss.fgsms.auxsrv;
23
24 import org.miloss.fgsms.common.DBSettingsLoader;
25 import org.miloss.fgsms.services.interfaces.common.PolicyType;
26 import org.miloss.fgsms.services.interfaces.policyconfiguration.KeyNameValueEnc;
27 import org.miloss.fgsms.sla.AuxHelper;
28 import org.miloss.fgsms.sla.SLACommon;
29 import org.apache.log4j.*;
30 import org.miloss.fgsms.dependency.DependencyScanner;
31 import org.quartz.*;
32 import org.quartz.JobExecutionContext;
33 import org.quartz.JobExecutionException;
34
35
36
37
38
39
40 public class DependencyScannerScheduler implements StatefulJob {
41
42 public void execute(JobExecutionContext jec) throws JobExecutionException {
43 try {
44
45
46
47
48
49
50
51
52
53 DependencyScanner ds = new DependencyScanner();
54 Object get = jec.getJobDetail().getJobDataMap().get("LastRanAt");
55 if (get == null) {
56 ds.go(true, 0);
57 } else {
58 ds.go(true, (Long) get);
59 }
60 jec.getJobDetail().getJobDataMap().put("LastRanAt", Long.valueOf(System.currentTimeMillis()));
61
62 AuxHelper.TryUpdateStatus(true, "urn:fgsms:DependencyScanner:" + SLACommon.GetHostName(), "OK", true, PolicyType.STATUS, AuxHelper.UNSPECIFIED, SLACommon.GetHostName());
63 } catch (Exception ex) {
64 Logger.getLogger(DependencyScannerScheduler.class.getName()).log(Level.ERROR, null, ex);
65 AuxHelper.TryUpdateStatus(false, "urn:fgsms:DependencyScanner:" + SLACommon.GetHostName(), ex.getMessage(), true, PolicyType.STATUS, AuxHelper.UNSPECIFIED, SLACommon.GetHostName());
66 }
67
68
69 }
70 }