summaryrefslogtreecommitdiffstats
path: root/gearman/controllerWorker/ControllerWorker/BootWorker.java
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/controllerWorker/ControllerWorker/BootWorker.java
parentminor (diff)
downloadpoolctrl-6550267106ac24a57df2b32e2d1bb50edfa68ec8.tar.gz
poolctrl-6550267106ac24a57df2b32e2d1bb50edfa68ec8.tar.xz
poolctrl-6550267106ac24a57df2b32e2d1bb50edfa68ec8.zip
verschiedene Korrekturen
Diffstat (limited to 'gearman/controllerWorker/ControllerWorker/BootWorker.java')
-rwxr-xr-xgearman/controllerWorker/ControllerWorker/BootWorker.java49
1 files changed, 34 insertions, 15 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