blob: 785962402a655dee7fb354d84d6f1c73a3e70b9b [file] [log] [blame]
package edu.iu.helix.play;
import org.apache.helix.task.Task;
import org.apache.helix.task.TaskCallbackContext;
import org.apache.helix.task.TaskResult;
import org.apache.helix.task.UserContentStore;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
/**
* Created by goshenoy on 6/19/17.
*/
public class HelixTaskA extends UserContentStore implements Task {
private static Logger logger = LogManager.getLogger(HelixTaskA.class);
public static final String TASK_COMMAND = "HelixTask-A";
HelixTaskA(TaskCallbackContext callbackContext) {
logger.info("edu.iu.helix.play.HelixTaskA | callbackContext: " + callbackContext);
}
@Override
public TaskResult run() {
logger.info("edu.iu.helix.play.HelixTaskA | Inside run(), sleeping for 5 secs");
addToUserStore();
sleep(5000);
logger.info("edu.iu.helix.play.HelixTaskA | Returning status : COMPLETED.");
return new TaskResult(TaskResult.Status.COMPLETED, "HelixTask completed!");
}
@Override
public void cancel() {
logger.info("edu.iu.helix.play.HelixTaskA | Inside cancel()");
}
private void addToUserStore() {
logger.info("edu.iu.helix.play.HelixTaskA | Inside addToUserStore()");
putUserContent("fullName", "Gourav Shenoy", Scope.WORKFLOW);
}
private static void sleep(long d) {
try {
Thread.sleep(d);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}