1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.omid.tso;
19
20 import org.apache.commons.daemon.Daemon;
21 import org.apache.commons.daemon.DaemonContext;
22 import org.slf4j.Logger;
23 import org.slf4j.LoggerFactory;
24
25
26
27
28 public class TsoServerDaemon implements Daemon {
29
30 private static final Logger LOG = LoggerFactory.getLogger(TsoServerDaemon.class);
31 private TSOServer tsoServer;
32
33 @Override
34 public void init(DaemonContext daemonContext) throws Exception {
35 try {
36 TSOServerConfig config = new TSOServerConfig();
37 LOG.info("Creating TSOServer instance as a Daemon process...");
38 tsoServer = TSOServer.getInitializedTsoServer(config);
39 LOG.info("TSOServer instance for Daemon process created");
40 } catch (Exception e) {
41 LOG.error("Error creating TSOServer instance", e);
42 throw e;
43 }
44 }
45
46 @Override
47 public void start() throws Exception {
48 tsoServer.startAsync();
49 tsoServer.awaitRunning();
50 }
51
52 @Override
53 public void stop() throws Exception {
54 tsoServer.stopAsync();
55 tsoServer.awaitTerminated();
56 }
57
58 @Override
59 public void destroy() {
60 }
61
62 }