public DefaultEventHandlerSpecification(EventHandler eventHandler) { EventHandlerSpecification spec = eventHandler.configure(); this.className = eventHandler.getClass().getName(); this.configs = Collections.unmodifiableMap(new HashMap<String, String>(spec.getConfigs())); }
public DefaultEventHandlerSpecification(EventHandler eventHandler) { EventHandlerSpecification spec = eventHandler.configure(); this.className = eventHandler.getClass().getName(); this.configs = Collections.unmodifiableMap(new HashMap<String, String>(spec.getConfigs())); }
@Override public void initialize(EventHandlerContext context) { super.initialize(context); this.abortTime = Long.parseLong(context.getSpecification().getConfigs().get("abortTime")); this.abortIfNotFull = Boolean.parseBoolean(context.getSpecification().getConfigs().get("abortIfNotFull")); }
@Override public void initialize(EventHandlerContext context) { super.initialize(context); this.abortTime = Long.parseLong(context.getSpecification().getConfigs().get("abortTime")); this.abortIfNotFull = Boolean.parseBoolean(context.getSpecification().getConfigs().get("abortIfNotFull")); this.applicationName = context.getApplicationName(); this.runId = context.getRunId(); }
@Override public JsonElement serialize(EventHandlerSpecification src, Type typeOfSrc, JsonSerializationContext context) { JsonObject json = new JsonObject(); json.addProperty("classname", src.getClassName()); json.add("configs", context.serialize(src.getConfigs(), new TypeToken<Map<String, String>>() { }.getType())); return json; }
@Override public void initialize(EventHandlerContext context) { super.initialize(context); this.abortTime = Long.parseLong(context.getSpecification().getConfigs().get("abortTime")); this.abortIfNotFull = Boolean.parseBoolean(context.getSpecification().getConfigs().get("abortIfNotFull")); this.applicationName = context.getApplicationName(); this.runId = context.getRunId(); }
@Override public JsonElement serialize(EventHandlerSpecification src, Type typeOfSrc, JsonSerializationContext context) { JsonObject json = new JsonObject(); json.addProperty("classname", src.getClassName()); json.add("configs", context.serialize(src.getConfigs(), new TypeToken<Map<String, String>>() { }.getType())); return json; }
private void createContainerFile(String runnableName, int instanceId, String containerId, String childFolder) { File launchedFolder = new File(context.getSpecification().getConfigs().get(PARENT_FOLDER), childFolder); if (!launchedFolder.exists()) { launchedFolder.mkdirs(); launchedFolder.setReadable(true, false); } createFile(launchedFolder.getAbsolutePath(), Joiner.on(":").join(runnableName, instanceId, containerId)); }
@Override public void completed() { createFile(context.getSpecification().getConfigs().get(PARENT_FOLDER), COMPLETED_FILE); }
@Override public void started() { createFile(context.getSpecification().getConfigs().get(PARENT_FOLDER), STARTED_FILE); }
@Override public void aborted() { try { new File(context.getSpecification().getConfigs().get("parentFolderPath"), ABORTED_FILE).createNewFile(); } catch (IOException e) { Throwables.propagate(e); } } }
@Override public void aborted() { createFile(context.getSpecification().getConfigs().get(PARENT_FOLDER), ABORTED_FILE); } }
@Override public void killed() { createFile(context.getSpecification().getConfigs().get(PARENT_FOLDER), KILLED_FILE); }
@Override public void containerLaunched(String runnableName, int instanceId, String containerId) { LOG.info("Container for {} launched", runnableName); if (containerId.contains("_01_")) { final File watchFile = new File(context.getSpecification().getConfigs().get("watchFile")); Thread t = new Thread() { @Override public void run() { // Wait for the watch file to be available, then kill the process while (!watchFile.exists()) { Uninterruptibles.sleepUninterruptibly(1, TimeUnit.SECONDS); } Runtime.getRuntime().halt(-1); } }; t.setDaemon(true); t.start(); } }
this.programRunId = GSON.fromJson(context.getSpecification().getConfigs().get("programRunId"), ProgramRunId.class);
@Override public void initialize(EventHandlerContext context) { super.initialize(context); this.abort = Boolean.parseBoolean(context.getSpecification().getConfigs().get("abort")); }
this.programRunId = GSON.fromJson(context.getSpecification().getConfigs().get("programRunId"), ProgramRunId.class);