Refactoring: rename duplicated Util classes
[jabaws.git] / engine / compbio / engine / cluster / drmaa / JobRunner.java
index e7ec791..516c3eb 100644 (file)
@@ -34,12 +34,12 @@ import compbio.engine.Cleaner;
 import compbio.engine.ClusterJobId;\r
 import compbio.engine.Configurator;\r
 import compbio.engine.SyncExecutor;\r
-import compbio.engine.client.ClusterNativeSpecExecutable;\r
+\r
 import compbio.engine.client.ConfiguredExecutable;\r
 import compbio.engine.client.Executable;\r
 import compbio.engine.client.PathValidator;\r
 import compbio.engine.client.PipedExecutable;\r
-import compbio.engine.client.Util;\r
+import compbio.engine.client.EngineUtil;\r
 import compbio.engine.client.Executable.ExecProvider;\r
 import compbio.metadata.JobExecutionException;\r
 import compbio.metadata.JobStatus;\r
@@ -108,9 +108,8 @@ public class JobRunner implements SyncExecutor {
                         * If executable require special cluster configuration parameters to\r
                         * be set e.g. queue, ram, time etc\r
                         */\r
-                       if (confExec.getExecutable() instanceof ClusterNativeSpecExecutable<?>) {\r
-                               setNativeSpecs(confExec.getExecutable());\r
-                       }\r
+                       setNativeSpecs(confExec.getExecutable());\r
+\r
 \r
                        log.trace("using arguments: " + jobtempl.getArgs());\r
                        this.confExecutable = confExec;\r
@@ -161,9 +160,11 @@ public class JobRunner implements SyncExecutor {
        }\r
 \r
        void setNativeSpecs(Executable<?> executable) throws DrmaaException {\r
-               jobtempl\r
-                               .setNativeSpecification(((ClusterNativeSpecExecutable<?>) executable)\r
-                                               .getNativeSpecs());\r
+               String nativeSpecs = executable.getClusterJobSettings(); \r
+               if(!compbio.util.Util.isEmpty(nativeSpecs)) {\r
+                       log.debug("Using cluster job settings: " + nativeSpecs);\r
+                       jobtempl.setNativeSpecification(nativeSpecs);\r
+               }\r
        }\r
 \r
        void setEmail(String email) {\r
@@ -194,7 +195,7 @@ public class JobRunner implements SyncExecutor {
                        log.trace("Setting job environment to:" + env_variables);\r
                        Map<String, String> sysEnv = jobtempl.getJobEnvironment();\r
                        if (sysEnv != null && !sysEnv.isEmpty()) {\r
-                               Util.mergeEnvVariables(sysEnv, env_variables);\r
+                               EngineUtil.mergeEnvVariables(sysEnv, env_variables);\r
                        } else {\r
                                sysEnv = env_variables;\r
                        }\r
@@ -230,14 +231,11 @@ public class JobRunner implements SyncExecutor {
                        ClusterJobId clusterJobId = ClusterSession.getClusterJobId(jobId);\r
                        switch (clustSession.getJobStatus(clusterJobId)) {\r
                        case Session.DONE:\r
-                               compbio.engine.client.Util.writeStatFile(Configurator.getWorkDirectory(jobId),\r
-                                               JobStatus.FINISHED.toString());\r
-\r
+                               EngineUtil.writeStatFile(Configurator.getWorkDirectory(jobId), JobStatus.FINISHED.toString());\r
                                return compbio.metadata.JobStatus.FINISHED;\r
-                       case Session.FAILED:\r
-                               compbio.engine.client.Util.writeMarker(Configurator.getWorkDirectory(jobId),\r
-                                               JobStatus.FAILED);\r
 \r
+                       case Session.FAILED:\r
+                               EngineUtil.writeMarker(Configurator.getWorkDirectory(jobId), JobStatus.FAILED);\r
                                return compbio.metadata.JobStatus.FAILED;\r
 \r
                        case Session.RUNNING:\r
@@ -284,14 +282,14 @@ public class JobRunner implements SyncExecutor {
                 * cancelled, finished or failed.\r
                 */\r
                String workDir = Configurator.getWorkDirectory(jobId);\r
-               if (Util.isMarked(workDir, JobStatus.FINISHED)\r
-                               || Util.isMarked(workDir, JobStatus.COLLECTED)) {\r
+               if (EngineUtil.isMarked(workDir, JobStatus.FINISHED)\r
+                               || EngineUtil.isMarked(workDir, JobStatus.COLLECTED)) {\r
                        return JobStatus.FINISHED;\r
                }\r
-               if (Util.isMarked(workDir, JobStatus.CANCELLED)) {\r
+               if (EngineUtil.isMarked(workDir, JobStatus.CANCELLED)) {\r
                        return JobStatus.CANCELLED;\r
                }\r
-               if (Util.isMarked(workDir, JobStatus.FAILED)) {\r
+               if (EngineUtil.isMarked(workDir, JobStatus.FAILED)) {\r
                        return JobStatus.FAILED;\r
                }\r
                return JobStatus.UNDEFINED; \r
@@ -314,13 +312,13 @@ public class JobRunner implements SyncExecutor {
        }\r
 \r
        JobInfo waitForJob(String jobId) throws JobExecutionException {\r
-               assert Util.isValidJobId(jobId);\r
-               return ClusterUtil.waitForResult(clustSession, jobId);\r
+               assert EngineUtil.isValidJobId(jobId);\r
+               return ClusterEngineUtil.waitForResult(clustSession, jobId);\r
        }\r
 \r
        boolean cancelJob(String jobId) {\r
-               assert Util.isValidJobId(jobId);\r
-               return compbio.engine.cluster.drmaa.ClusterUtil.cancelJob(jobId,\r
+               assert EngineUtil.isValidJobId(jobId);\r
+               return compbio.engine.cluster.drmaa.ClusterEngineUtil.cancelJob(jobId,\r
                                clustSession);\r
        }\r
 \r