public void executeTask(int taskId) throws Exception { try { this.taskId = taskId; log.debug("Stating Task ID : {}. Current time : {}", taskId, System.currentTimeMillis()); this.ignite = ClusterManager.getIgnite("ALL"); this.connSrvc = ignite .services() .serviceProxy("DredgeDBconnectionPool", DBconnectionPoolService.class, false); if (TaskManager.checkTaskStatus(taskId, connSrvc).equals("Y")) { log.error( "ERROR: TaskExecutor Cannot run Task because taskId {} is already executing!", taskId); throw new DredgeException( String.format( "ERROR: Cannot run Task because taskId %s is already executing!", taskId)); } else { log.debug("Building Task ID : {}. Current time : {}", taskId, System.currentTimeMillis()); this.taskManager = new TaskManager(taskId, connSrvc); log.debug("Task Name : ", taskManager.task.getTask_name()); log.debug( "Task ID : {}. run_id : {}", taskManager.task.getDredge_task_id(), taskManager.task.getRun_id()); log.debug( "Task ID : {}. is_running : {}", taskManager.task.getDredge_task_id(), taskManager.task.getIs_running()); log.debug( "Task ID : {}. is_in_task_queue : {}", taskManager.task.getDredge_task_id(), taskManager.task.getIs_in_task_queue()); log.debug( "Task ID : {}. is_active : {}", taskManager.task.getDredge_task_id(), taskManager.task.getIs_active()); log.debug( "Task ID : {}. fk_dredge_task_type_id : {}", taskManager.task.getDredge_task_id(), taskManager.task.getFk_dredge_task_type_id()); log.debug( "Task ID : {}. task_type_name : {}", taskManager.task.getDredge_task_id(), taskManager.task.getTask_type_name()); log.debug( "Task ID : {}. priority : {}", taskManager.task.getDredge_task_id(), taskManager.task.getPriority()); log.debug( "Task ID : {}. temp_path : {}", taskManager.task.getDredge_task_id(), taskManager.task.getTemp_path()); log.debug("Task ID : {}. Pipeline Details", taskManager.task.getDredge_task_id()); for (final Dredge_Task_Pipeline taskPipeline : taskManager.task.getTaskPipelineList()) { log.debug( "Task ID : {}. run_id : {}. PipelineID : {}. Prev Pipeline : {}. Pipeline Type : {}. Abstration Mode : {}. Abstraction Type : {}. is_complete : {}. Input Path {}. Output Path {}", taskManager.task.getDredge_task_id(), taskManager.task.getRun_id(), taskPipeline.getTask_pipeline_id(), taskPipeline.getPrev_pipeline_id(), taskPipeline.getComponent_type_name(), taskPipeline.getAbstraction_mode(), taskPipeline.getAbstraction_type_name(), taskPipeline.getIs_complete(), taskPipeline.getInputPathList().toString(), taskPipeline.getPipelineOutputPath()); for (final Dredge_Task_Pipeline_Component taskPipelineComponent : taskPipeline.getTaskPipelineComponentList()) { log.debug( "Task ID : {}. run_id : {}. PipelineID : {}. ComponentID : {}. Name : {}. Location : {}. ", taskManager.task.getDredge_task_id(), taskManager.task.getRun_id(), taskPipeline.getTask_pipeline_id(), taskPipelineComponent.getFk_dredge_component_id(), taskPipelineComponent.getName(), taskPipelineComponent.getLocation()); for (final Dredge_Task_Pipeline_Component_Parameter taskPipelineComponentParameter : taskPipelineComponent.getTaskPipelineComponentParameterList()) { log.debug( "Task ID : {}. run_id : {}. PipelineID : {}. ComponentID : {}. Param Type : {}. Param Name {}. Param Value {}.", taskManager.task.getDredge_task_id(), taskManager.task.getRun_id(), taskPipeline.getTask_pipeline_id(), taskPipelineComponent.getFk_dredge_component_id(), taskPipelineComponentParameter.getParam_type(), taskPipelineComponentParameter.getParam_name(), taskPipelineComponentParameter.getParam_value()); } } } log.debug( "Building Task ID : {} Complete. Current time : {}", taskId, System.currentTimeMillis()); try { taskManager.startTask(taskManager.task.getRun_id()); taskManager.taskCompletedEvent(taskManager.task); } catch (final Exception e) { taskManager.taskErrorEvent(taskManager.task); log.error( "ERROR: 1. Failure when running task ID {}. Message {}.", taskId, e.getMessage()); throw e; } } } catch (final DredgeException de) { log.error("ERROR: 2. Failure when running task ID {}. Message {}.", taskId, de.getMessage()); throw de; } catch (final Exception e) { log.error("ERROR: 3. Failure when running task ID {}. Message {}.", taskId, e.getMessage()); throw e; } finally { if (ignite.configuration().isClientMode()) { ignite.close(); } } }