use of com.thinkbiganalytics.spark.rest.model.ServerStatusResponse in project kylo by Teradata.
the class SparkShellProxyController method getServerStatus.
@GET
@Path(SERVER_STATUS)
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@ApiOperation("Fetches the status of a transformation.")
@ApiResponses({ @ApiResponse(code = 200, message = "Returns the status of the spark server and session for current user if applicable.", response = ServerStatusResponse.class), @ApiResponse(code = 500, message = "There was a problem checking the spark server.", response = RestResponseStatus.class) })
@Nonnull
public Response getServerStatus() {
try {
final SparkShellProcess process = getSparkShellProcess();
final ServerStatusResponse serverStatusResponse = restClient.serverStatus(process);
return Response.ok(serverStatusResponse).build();
} catch (Exception e) {
throw new WebApplicationException("Unhandled exception attempting to get server status", e);
}
}
use of com.thinkbiganalytics.spark.rest.model.ServerStatusResponse in project kylo by Teradata.
the class LivyRestModelTransformer method toServerStatusResponse.
public static ServerStatusResponse toServerStatusResponse(LivyServer livyServer, Integer sessionId) {
LivyServerStatus livyServerStatus = livyServer.getLivyServerStatus();
LivySessionStatus livySessionStatus = null;
SessionState sessionState = livyServer.getLivySessionState(sessionId);
if (sessionState == null) {
// don't know about session, could compare id to high water to see if dropped
if (sessionId <= livyServer.getSessionIdHighWaterMark()) {
livySessionStatus = LivySessionStatus.completed;
} else {
throw new WebApplicationException("No session with that id was created on the server", 404);
}
} else if (SessionState.FINAL_STATES.contains(sessionState)) {
livySessionStatus = LivySessionStatus.completed;
} else if (SessionState.READY_STATES.contains(sessionState)) {
livySessionStatus = LivySessionStatus.ready;
} else if (livyServerStatus == LivyServerStatus.http_error) {
livySessionStatus = LivySessionStatus.http_error;
}
ServerStatusResponse.ServerStatus serverStatus = ServerStatusResponse.ServerStatus.valueOf(livyServerStatus.toString());
ServerStatusResponse.SessionStatus sessionStatus = ServerStatusResponse.SessionStatus.valueOf(livySessionStatus.toString());
return ServerStatusResponse.newInstance(serverStatus, sessionId.toString(), sessionStatus);
}
Aggregations