JobStatus state = JobStatus.valueOf(job.get("state").asText());
@Override public JobDetails deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException { JsonNode rootNode = jsonParser.readValueAsTree(); JobID jobId = JobID.fromHexString(rootNode.get(FIELD_NAME_JOB_ID).textValue()); String jobName = rootNode.get(FIELD_NAME_JOB_NAME).textValue(); long startTime = rootNode.get(FIELD_NAME_START_TIME).longValue(); long endTime = rootNode.get(FIELD_NAME_END_TIME).longValue(); long duration = rootNode.get(FIELD_NAME_DURATION).longValue(); JobStatus jobStatus = JobStatus.valueOf(rootNode.get(FIELD_NAME_STATUS).textValue()); long lastUpdateTime = rootNode.get(FIELD_NAME_LAST_MODIFICATION).longValue(); JsonNode tasksNode = rootNode.get("tasks"); int numTasks = tasksNode.get(FIELD_NAME_TOTAL_NUMBER_TASKS).intValue(); int[] numVerticesPerExecutionState = new int[ExecutionState.values().length]; for (ExecutionState executionState : ExecutionState.values()) { numVerticesPerExecutionState[executionState.ordinal()] = tasksNode.get(executionState.name().toLowerCase()).intValue(); } return new JobDetails( jobId, jobName, startTime, endTime, duration, jobStatus, lastUpdateTime, numVerticesPerExecutionState, numTasks); } }
@Override public JobDetails deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException { JsonNode rootNode = jsonParser.readValueAsTree(); JobID jobId = JobID.fromHexString(rootNode.get(FIELD_NAME_JOB_ID).textValue()); String jobName = rootNode.get(FIELD_NAME_JOB_NAME).textValue(); long startTime = rootNode.get(FIELD_NAME_START_TIME).longValue(); long endTime = rootNode.get(FIELD_NAME_END_TIME).longValue(); long duration = rootNode.get(FIELD_NAME_DURATION).longValue(); JobStatus jobStatus = JobStatus.valueOf(rootNode.get(FIELD_NAME_STATUS).textValue()); long lastUpdateTime = rootNode.get(FIELD_NAME_LAST_MODIFICATION).longValue(); JsonNode tasksNode = rootNode.get("tasks"); int numTasks = tasksNode.get(FIELD_NAME_TOTAL_NUMBER_TASKS).intValue(); int[] numVerticesPerExecutionState = new int[ExecutionState.values().length]; for (ExecutionState executionState : ExecutionState.values()) { numVerticesPerExecutionState[executionState.ordinal()] = tasksNode.get(executionState.name().toLowerCase()).intValue(); } return new JobDetails( jobId, jobName, startTime, endTime, duration, jobStatus, lastUpdateTime, numVerticesPerExecutionState, numTasks); } }
@Override public JobDetails deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException { JsonNode rootNode = jsonParser.readValueAsTree(); JobID jobId = JobID.fromHexString(rootNode.get(FIELD_NAME_JOB_ID).textValue()); String jobName = rootNode.get(FIELD_NAME_JOB_NAME).textValue(); long startTime = rootNode.get(FIELD_NAME_START_TIME).longValue(); long endTime = rootNode.get(FIELD_NAME_END_TIME).longValue(); long duration = rootNode.get(FIELD_NAME_DURATION).longValue(); JobStatus jobStatus = JobStatus.valueOf(rootNode.get(FIELD_NAME_STATUS).textValue()); long lastUpdateTime = rootNode.get(FIELD_NAME_LAST_MODIFICATION).longValue(); JsonNode tasksNode = rootNode.get("tasks"); int numTasks = tasksNode.get(FIELD_NAME_TOTAL_NUMBER_TASKS).intValue(); int[] numVerticesPerExecutionState = new int[ExecutionState.values().length]; for (ExecutionState executionState : ExecutionState.values()) { numVerticesPerExecutionState[executionState.ordinal()] = tasksNode.get(executionState.name().toLowerCase()).intValue(); } return new JobDetails( jobId, jobName, startTime, endTime, duration, jobStatus, lastUpdateTime, numVerticesPerExecutionState, numTasks); } }
JobStatus state = JobStatus.valueOf(job.get("state").asText());
JobStatus state = JobStatus.valueOf(job.get("state").asText());