1
19
20 package com.liferay.counter.service.persistence;
21
22 import com.liferay.portal.kernel.job.IntervalJob;
23 import com.liferay.portal.kernel.job.JobExecutionContext;
24 import com.liferay.portal.kernel.job.JobExecutionException;
25 import com.liferay.portal.kernel.log.Log;
26 import com.liferay.portal.kernel.log.LogFactoryUtil;
27 import com.liferay.portal.kernel.util.Time;
28 import com.liferay.portal.util.PropsValues;
29
30 import java.sql.Connection;
31 import java.sql.Statement;
32
33
39 public class ConnectionHeartbeatJob implements IntervalJob {
40
41 public static final long INTERVAL =
42 PropsValues.COUNTER_CONNECTION_HEARTBEAT_JOB_INTERVAL * Time.MINUTE;
43
44 public void execute(JobExecutionContext context)
45 throws JobExecutionException {
46
47 try {
48 sendHeartbeat();
49 }
50 catch (Exception e) {
51 throw new JobExecutionException(e);
52 }
53 }
54
55 public long getInterval() {
56 return INTERVAL;
57 }
58
59 protected void sendHeartbeat() throws Exception {
60 if (_log.isDebugEnabled()) {
61 _log.debug("Sending heartbeat");
62 }
63
64 Connection connection = CounterUtil.getPersistence().getConnection();
65
66 Statement statement = connection.createStatement();
67
68 statement.execute(_SELECT_RELEASE);
69 }
70
71 private static String _SELECT_RELEASE = "SELECT releaseId FROM Release_";
72
73 private static final Log _log =
74 LogFactoryUtil.getLog(ConnectionHeartbeatJob.class);
75
76 }