summaryrefslogtreecommitdiffstats
path: root/gearman
diff options
context:
space:
mode:
authorBjörn Geiger2011-09-12 14:05:59 +0200
committerBjörn Geiger2011-09-12 14:05:59 +0200
commit6550267106ac24a57df2b32e2d1bb50edfa68ec8 (patch)
tree4b24da66fa96df17ca79286c07159bac0f9ebd7c /gearman
parentminor (diff)
downloadpoolctrl-6550267106ac24a57df2b32e2d1bb50edfa68ec8.tar.gz
poolctrl-6550267106ac24a57df2b32e2d1bb50edfa68ec8.tar.xz
poolctrl-6550267106ac24a57df2b32e2d1bb50edfa68ec8.zip
verschiedene Korrekturen
Diffstat (limited to 'gearman')
-rwxr-xr-xgearman/controllerWorker/ControllerWorker/BootWorker.java49
-rwxr-xr-xgearman/controllerWorker/ControllerWorker/ControllerWorkerMain.java29
-rwxr-xr-xgearman/controllerWorker/ControllerWorker/PoolctrlRequest.java28
-rwxr-xr-xgearman/controllerWorker/ControllerWorker/ShutdownWorker.java53
4 files changed, 94 insertions, 65 deletions
diff --git a/gearman/controllerWorker/ControllerWorker/BootWorker.java b/gearman/controllerWorker/ControllerWorker/BootWorker.java
index e32a8d2..e4b720c 100755
--- a/gearman/controllerWorker/ControllerWorker/BootWorker.java
+++ b/gearman/controllerWorker/ControllerWorker/BootWorker.java
@@ -1,5 +1,9 @@
package ControllerWorker;
+import java.io.FileInputStream;
+import java.util.PropertyResourceBundle;
+import java.util.ResourceBundle;
+import java.util.StringTokenizer;
import java.util.Vector;
import org.gearman.client.GearmanJobResult;
@@ -15,6 +19,9 @@ import org.apache.log4j.Logger;
public class BootWorker extends AbstractGearmanFunction {
static final Logger logger = Logger.getLogger(BootWorker.class);
+
+ private ResourceBundle iniFile;
+
@Override
public String getName() {
return "boot";
@@ -22,18 +29,12 @@ public class BootWorker extends AbstractGearmanFunction {
@Override
public GearmanJobResult executeFunction() {
+ iniFile = getIniFile("../../application/configs/application.ini");
String data = ByteUtils.fromUTF8Bytes((byte[]) this.data);
Vector<Client> clients = new Vector<Client>();
JSONObject jsonObject = (JSONObject) JSONValue.parse(data);
String event = jsonObject.get("eventName").toString();
String eventOS = jsonObject.get("eventOS").toString();
- String gearmanServerHost = jsonObject.get("gearmanServerHost")
- .toString();
- int gearmanServerPort = Integer.parseInt(jsonObject.get(
- "gearmanServerPort").toString());
- int updateRate = Integer.parseInt(jsonObject.get("updateRate")
- .toString());
- long waitTime = Long.parseLong(jsonObject.get("waitTime").toString());
JSONArray jsonArray = (JSONArray) jsonObject.get("clients");
for (Object clientObj : jsonArray) {
@@ -43,17 +44,26 @@ public class BootWorker extends AbstractGearmanFunction {
clients.add(client);
}
- JSONArray whitelist = (JSONArray) jsonObject.get("whitelist");
- JSONArray blacklist = (JSONArray) jsonObject.get("blacklist");
+ String gearmanServerHost = iniFile.getString("gearman.server.host");
+ int gearmanServerPort = Integer.parseInt(iniFile
+ .getString("gearman.server.port"));
+ long waitTime = Long.parseLong(iniFile
+ .getString("gearman.worker.waitTime"));
+ int updateRate = Integer.parseInt(iniFile
+ .getString("gearman.worker.updateRate"));
+ String blacklist = iniFile.getString("gearman.worker.ps.blacklist");
+ StringTokenizer blacklistTokenizer = new StringTokenizer(blacklist, ",");
+ String whitelist = iniFile.getString("gearman.worker.ps.whitelist");
+ StringTokenizer whitelistTokenizer = new StringTokenizer(whitelist, ",");
Vector<String> psWhitelist = new Vector<String>();
Vector<String> psBlacklist = new Vector<String>();
-
- for (Object whiteEntry : whitelist) {
- psWhitelist.add(whiteEntry.toString());
+ while (whitelistTokenizer.hasMoreTokens()) {
+ String whiteEntry = whitelistTokenizer.nextToken();
+ psWhitelist.add(whiteEntry);
}
-
- for (Object blackEntry : blacklist) {
- psBlacklist.add(blackEntry.toString());
+ while (blacklistTokenizer.hasMoreTokens()) {
+ String blackEntry = blacklistTokenizer.nextToken();
+ psBlacklist.add(blackEntry);
}
Boot boot = new Boot(event, clients, eventOS, updateRate, waitTime,
@@ -71,4 +81,13 @@ public class BootWorker extends AbstractGearmanFunction {
res.getBytes(), warnings, exceptions, numerator, denominator);
return gjr;
}
+
+ private static PropertyResourceBundle getIniFile(String file) {
+ try {
+ return new PropertyResourceBundle(new FileInputStream(file));
+ } catch (Exception e) {
+ logger.error(e.toString());
+ return null;
+ }
+ }
} \ No newline at end of file
diff --git a/gearman/controllerWorker/ControllerWorker/ControllerWorkerMain.java b/gearman/controllerWorker/ControllerWorker/ControllerWorkerMain.java
index 09eba5b..49ea2ab 100755
--- a/gearman/controllerWorker/ControllerWorker/ControllerWorkerMain.java
+++ b/gearman/controllerWorker/ControllerWorker/ControllerWorkerMain.java
@@ -1,22 +1,13 @@
package ControllerWorker;
-import java.io.FileInputStream;
-import java.util.PropertyResourceBundle;
-import java.util.ResourceBundle;
-
import org.gearman.common.GearmanJobServerConnection;
import org.gearman.common.GearmanNIOJobServerConnection;
import org.gearman.worker.GearmanWorker;
import org.gearman.worker.GearmanWorkerImpl;
import org.apache.log4j.BasicConfigurator;
-import org.apache.log4j.Logger;
public class ControllerWorkerMain {
- private static final Logger logger = Logger
- .getLogger(ControllerWorkerMain.class);
- private static ResourceBundle iniFile;
-
public static void main(String[] args) {
final GearmanJobServerConnection connection = new GearmanNIOJobServerConnection(
"127.0.0.1", 4730);
@@ -27,26 +18,8 @@ public class ControllerWorkerMain {
worker.registerFunction(StatusWorker.class);
worker.addServer(connection);
BasicConfigurator.configure();
- logger.info(System.getProperty("user.dir"));
- iniFile = getIniFile("../../+application/configs/application.ini");
- String runURL = "http://" + iniFile.getString("poolctrl.host")
- + iniFile.getString("poolctrl.runevent");
- String reportURL = "http://" + iniFile.getString("poolctrl.host")
- + iniFile.getString("poolctrl.runevent");
- long updatePeriod = Long.parseLong(iniFile
- .getString("event.updatePeriod")) * 60L * 1000000000L; // nanoseconds
- PoolctrlRequest poolctrlRequest;
- poolctrlRequest = new PoolctrlRequest(runURL, reportURL, updatePeriod);
+ PoolctrlRequest poolctrlRequest = new PoolctrlRequest();
poolctrlRequest.run();
worker.work();
}
-
- private static PropertyResourceBundle getIniFile(String file) {
- try {
- return new PropertyResourceBundle(new FileInputStream(file));
- } catch (Exception e) {
- logger.error(e.toString());
- return null;
- }
- }
} \ No newline at end of file
diff --git a/gearman/controllerWorker/ControllerWorker/PoolctrlRequest.java b/gearman/controllerWorker/ControllerWorker/PoolctrlRequest.java
index 086b88b..373d2e2 100755
--- a/gearman/controllerWorker/ControllerWorker/PoolctrlRequest.java
+++ b/gearman/controllerWorker/ControllerWorker/PoolctrlRequest.java
@@ -1,26 +1,35 @@
package ControllerWorker;
import java.io.BufferedReader;
+import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.util.PropertyResourceBundle;
import org.apache.log4j.Logger;
public class PoolctrlRequest extends Thread {
- private static final Logger logger = Logger.getLogger(PoolctrlRequest.class);
+ static final Logger logger = Logger.getLogger(PoolctrlRequest.class);
+
private URL runURL;
private URL reportURL;
private final long updatePeriod;
+ private PropertyResourceBundle iniFile;
- public PoolctrlRequest(String runURL, String reportURL, long updatePeriod) {
+ public PoolctrlRequest() {
+ iniFile = getIniFile("../../application/configs/application.ini");
+ updatePeriod = Long.parseLong(iniFile.getString("event.updatePeriod")) * 60L * 1000000000L; // nanoseconds
try {
- this.runURL = new URL(runURL);
- this.reportURL = new URL(reportURL);
+ this.runURL = new URL("http://"
+ + iniFile.getString("poolctrl.host")
+ + iniFile.getString("poolctrl.runevent"));
+ this.reportURL = new URL("http://"
+ + iniFile.getString("poolctrl.host")
+ + iniFile.getString("poolctrl.reportevent"));
} catch (Exception e) {
logger.error(e.toString());
}
- this.updatePeriod = updatePeriod;
}
public void run() {
@@ -80,4 +89,13 @@ public class PoolctrlRequest extends Thread {
logger.error(e.toString());
}
}
+
+ private static PropertyResourceBundle getIniFile(String file) {
+ try {
+ return new PropertyResourceBundle(new FileInputStream(file));
+ } catch (Exception e) {
+ logger.error(e.toString());
+ return null;
+ }
+ }
} \ No newline at end of file
diff --git a/gearman/controllerWorker/ControllerWorker/ShutdownWorker.java b/gearman/controllerWorker/ControllerWorker/ShutdownWorker.java
index 62ffee0..c6f63b9 100755
--- a/gearman/controllerWorker/ControllerWorker/ShutdownWorker.java
+++ b/gearman/controllerWorker/ControllerWorker/ShutdownWorker.java
@@ -1,5 +1,9 @@
package ControllerWorker;
+import java.io.FileInputStream;
+import java.util.PropertyResourceBundle;
+import java.util.ResourceBundle;
+import java.util.StringTokenizer;
import java.util.Vector;
import org.gearman.client.GearmanJobResult;
@@ -15,6 +19,9 @@ import org.apache.log4j.Logger;
public class ShutdownWorker extends AbstractGearmanFunction {
static final Logger logger = Logger.getLogger(ShutdownWorker.class);
+
+ private ResourceBundle iniFile;
+
@Override
public String getName() {
return "shutdown";
@@ -22,37 +29,40 @@ public class ShutdownWorker extends AbstractGearmanFunction {
@Override
public GearmanJobResult executeFunction() {
-
+ iniFile = getIniFile("../../application/configs/application.ini");
String data = ByteUtils.fromUTF8Bytes((byte[]) this.data);
Vector<Client> clients = new Vector<Client>();
JSONObject jsonObject = (JSONObject) JSONValue.parse(data);
String event = jsonObject.get("eventName").toString();
- String gearmanServerHost = jsonObject.get("gearmanServerHost")
- .toString();
- int gearmanServerPort = Integer.parseInt(jsonObject.get(
- "gearmanServerPort").toString());
- int updateRate = Integer.parseInt(jsonObject.get("updateRate")
- .toString());
- long waitTime = Long.parseLong(jsonObject.get("waitTime").toString());
JSONArray jsonArray = (JSONArray) jsonObject.get("clients");
for (Object clientObj : jsonArray) {
JSONObject clientJsonObj = (JSONObject) clientObj;
- Client client = new Client(clientJsonObj, "The shutdown process of the client has been started.");
+ Client client = new Client(clientJsonObj,
+ "The shutdown process of the client has been started.");
clients.add(client);
}
- JSONArray whitelist = (JSONArray) jsonObject.get("whitelist");
- JSONArray blacklist = (JSONArray) jsonObject.get("blacklist");
+ String gearmanServerHost = iniFile.getString("gearman.server.host");
+ int gearmanServerPort = Integer.parseInt(iniFile
+ .getString("gearman.server.port"));
+ long waitTime = Long.parseLong(iniFile
+ .getString("gearman.worker.waitTime"));
+ int updateRate = Integer.parseInt(iniFile
+ .getString("gearman.worker.updateRate"));
+ String blacklist = iniFile.getString("gearman.worker.ps.blacklist");
+ StringTokenizer blacklistTokenizer = new StringTokenizer(blacklist, ",");
+ String whitelist = iniFile.getString("gearman.worker.ps.whitelist");
+ StringTokenizer whitelistTokenizer = new StringTokenizer(whitelist, ",");
Vector<String> psWhitelist = new Vector<String>();
Vector<String> psBlacklist = new Vector<String>();
-
- for (Object whiteEntry : whitelist) {
- psWhitelist.add(whiteEntry.toString());
+ while (whitelistTokenizer.hasMoreTokens()) {
+ String whiteEntry = whitelistTokenizer.nextToken();
+ psWhitelist.add(whiteEntry);
}
-
- for (Object blackEntry : blacklist) {
- psBlacklist.add(blackEntry.toString());
+ while (blacklistTokenizer.hasMoreTokens()) {
+ String blackEntry = blacklistTokenizer.nextToken();
+ psBlacklist.add(blackEntry);
}
Shutdown shutdown = new Shutdown(event, clients, updateRate, waitTime,
@@ -70,4 +80,13 @@ public class ShutdownWorker extends AbstractGearmanFunction {
res.getBytes(), warnings, exceptions, numerator, denominator);
return gjr;
}
+
+ private static PropertyResourceBundle getIniFile(String file) {
+ try {
+ return new PropertyResourceBundle(new FileInputStream(file));
+ } catch (Exception e) {
+ logger.error(e.toString());
+ return null;
+ }
+ }
} \ No newline at end of file