use of org.apache.airavata.cloud.aurora.client.bean.ResponseBean in project airavata by apache.
the class AuroraThriftClient method killTasks.
/**
* Kill tasks.
*
* @param jobKeyBean the job key bean
* @param instances the instances
* @return the response bean
* @throws Exception the exception
*/
public ResponseBean killTasks(JobKeyBean jobKeyBean, Set<Integer> instances) throws Exception {
ResponseBean response = null;
// try till we get response or scheduler connection not found
while (response == null) {
try {
if (jobKeyBean != null) {
JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
Response killTaskResponse = this.auroraSchedulerManagerClient.killTasks(jobKey, instances);
response = AuroraThriftClientUtil.getResponseBean(killTaskResponse, ResponseResultType.KILL_TASKS);
}
} catch (Exception ex) {
if (ex instanceof TTransportException) {
// if re-connection success, retry command
if (this.reconnectWithAuroraScheduler()) {
continue;
}
}
logger.error(ex.getMessage(), ex);
throw ex;
}
}
return response;
}
use of org.apache.airavata.cloud.aurora.client.bean.ResponseBean in project airavata by apache.
the class AuroraThriftClient method createJob.
/**
* Creates the job.
*
* @param jobConfigBean the job config bean
* @return the response bean
* @throws Exception the exception
*/
public ResponseBean createJob(JobConfigBean jobConfigBean) throws Exception {
ResponseBean response = null;
// try till we get response or scheduler connection not found
while (response == null) {
try {
if (jobConfigBean != null) {
JobConfiguration jobConfig = AuroraThriftClientUtil.getAuroraJobConfig(jobConfigBean);
Response createJobResponse = this.auroraSchedulerManagerClient.createJob(jobConfig);
response = AuroraThriftClientUtil.getResponseBean(createJobResponse, ResponseResultType.CREATE_JOB);
}
} catch (Exception ex) {
if (ex instanceof TTransportException) {
// if re-connection success, retry command
if (this.reconnectWithAuroraScheduler()) {
continue;
}
}
logger.error(ex.getMessage(), ex);
throw ex;
}
}
return response;
}
use of org.apache.airavata.cloud.aurora.client.bean.ResponseBean in project airavata by apache.
the class AuroraThriftClientUtil method getJobResponse.
/**
* Gets the job response.
*
* @param response the response
* @return the job response
*/
private static ResponseBean getJobResponse(Response response) {
ResponseBean responseBean = null;
if (response != null) {
responseBean = new ResponseBean();
responseBean.setResponseCode(ResponseCodeEnum.findByValue(response.getResponseCode().getValue()));
ServerInfoBean serverInfo = new ServerInfoBean(response.getServerInfo().getClusterName(), response.getServerInfo().getStatsUrlPrefix());
responseBean.setServerInfo(serverInfo);
}
return responseBean;
}
Aggregations