public static void loadSchedulerInfo(AppResult result, HadoopApplicationData data, Scheduler scheduler) {
    String appId = data.getAppId();

    result.scheduler = Utils.truncateField(scheduler.getSchedulerName(), AppResult.SCHEDULER_LIMIT, appId);
    result.workflowDepth = scheduler.getWorkflowDepth();

    result.jobName = scheduler.getJobName() != null ? Utils
      .truncateField(scheduler.getJobName(), AppResult.JOB_NAME_LIMIT, appId) : "";

    result.jobDefId = Utils.truncateField(scheduler.getJobDefId(), AppResult.URL_LEN_LIMIT, appId);
    result.jobDefUrl = scheduler.getJobDefUrl() != null ? Utils
      .truncateField(scheduler.getJobDefUrl(), AppResult.URL_LEN_LIMIT, appId) : "";

    result.jobExecId = Utils.truncateField(scheduler.getJobExecId(), AppResult.URL_LEN_LIMIT, appId);
    result.jobExecUrl = scheduler.getJobExecUrl() != null ? Utils
      .truncateField(scheduler.getJobExecUrl(), AppResult.URL_LEN_LIMIT, appId) : "";

    result.flowDefId = Utils.truncateField(scheduler.getFlowDefId(), AppResult.URL_LEN_LIMIT, appId);
    result.flowDefUrl = scheduler.getFlowDefUrl() != null ? Utils
      .truncateField(scheduler.getFlowDefUrl(), AppResult.URL_LEN_LIMIT, appId) : "";

    result.flowExecId = Utils.truncateField(scheduler.getFlowExecId(), AppResult.FLOW_EXEC_ID_LIMIT, appId);
    result.flowExecUrl = scheduler.getFlowExecUrl() != null ? Utils
      .truncateField(scheduler.getFlowExecUrl(), AppResult.URL_LEN_LIMIT, appId) : "";
  }
Populates the given app result with the info from the given application data and scheduler.

@param result the AppResult to populate
@param data the HadoopApplicationData to use when populating the result
@param scheduler the Scheduler to use when populating the result
app/com/linkedin/drelephant/util/InfoExtractor.java