summaryrefslogtreecommitdiffstats
path: root/gearman
diff options
context:
space:
mode:
authorBjörn Geiger2011-10-24 09:36:35 +0200
committerBjörn Geiger2011-10-24 09:36:35 +0200
commit07022dcbd91ea63f71a13f63f323e5b425de577d (patch)
tree58c715ece65c84726e071b256e726c3e0fc6dd96 /gearman
parentverschiedenes§ (diff)
downloadpoolctrl-07022dcbd91ea63f71a13f63f323e5b425de577d.tar.gz
poolctrl-07022dcbd91ea63f71a13f63f323e5b425de577d.tar.xz
poolctrl-07022dcbd91ea63f71a13f63f323e5b425de577d.zip
Worker.java
Diffstat (limited to 'gearman')
-rw-r--r--gearman/controllerWorker/ControllerWorker/Worker.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/gearman/controllerWorker/ControllerWorker/Worker.java b/gearman/controllerWorker/ControllerWorker/Worker.java
new file mode 100644
index 0000000..3501179
--- /dev/null
+++ b/gearman/controllerWorker/ControllerWorker/Worker.java
@@ -0,0 +1,37 @@
+package ControllerWorker;
+
+import org.gearman.common.GearmanJobServerConnection;
+import org.gearman.common.GearmanNIOJobServerConnection;
+import org.gearman.worker.GearmanWorker;
+import org.gearman.worker.GearmanWorkerImpl;
+
+public class Worker extends Thread {
+ private GearmanWorker worker;
+
+ public Worker() {
+ final GearmanJobServerConnection connection = new GearmanNIOJobServerConnection(
+ "127.0.0.1", 4730);
+ worker = new GearmanWorkerImpl();
+ worker.registerFunction(SomePingWorker.class);
+ worker.registerFunction(BootWorker.class);
+ worker.registerFunction(ShutdownWorker.class);
+ worker.registerFunction(StatusWorker.class);
+ worker.addServer(connection);
+ }
+
+ public void run() {
+ work();
+ }
+
+ private void work() {
+ worker.work();
+ }
+
+ public boolean isRunning() {
+ if (worker != null) {
+ return worker.isRunning();
+ } else {
+ return false;
+ }
+ }
+}