You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ms...@apache.org on 2014/11/24 16:14:23 UTC

[4/4] airavata git commit: the provider is compilable

the provider is compilable

Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/897d765c
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/897d765c
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/897d765c

Branch: refs/heads/master
Commit: 897d765c8bf702dd66d77f6fb37517b522f826c0
Parents: afc05ea
Author: msmemon <sh...@gmail.com>
Authored: Mon Nov 24 16:17:01 2014 +0100
Committer: msmemon <sh...@gmail.com>
Committed: Mon Nov 24 16:17:01 2014 +0100

----------------------------------------------------------------------
 .../gfac/bes/provider/impl/BESProvider.java     | 209 +------------------
 1 file changed, 1 insertion(+), 208 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/897d765c/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
index b0fa422..7cf2d7c 100644
--- a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
+++ b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
@@ -46,7 +46,6 @@ import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtoco
 import org.apache.airavata.model.appcatalog.computeresource.UnicoreJobSubmission;
 import org.apache.airavata.model.workspace.experiment.JobDetails;
 import org.apache.airavata.model.workspace.experiment.JobState;
-import org.apache.airavata.schemas.gfac.UnicoreHostType;
 import org.apache.xmlbeans.XmlCursor;
 import org.bouncycastle.asn1.x500.style.BCStyle;
 import org.ggf.schemas.bes.x2006.x08.besFactory.ActivityStateEnumeration;
@@ -190,8 +189,7 @@ public class BESProvider extends AbstractProvider implements GFacProvider,
                 JobState applicationJobStatus = getApplicationJobStatus(activityStatus);
                 String jobStatusMessage = "Status of job " + jobId + "is "
                         + applicationJobStatus;
-                GFacUtils.updateJobStatus(jobExecutionContext, jobDetails,
-                        applicationJobStatus);
+                GFacUtils.updateJobStatus(jobExecutionContext, jobDetails, applicationJobStatus);
 
                 jobExecutionContext.getNotifier().publish(
                         new StatusChangeEvent(jobStatusMessage));
@@ -266,211 +264,6 @@ public class BESProvider extends AbstractProvider implements GFacProvider,
 
     }
 
-		UnicoreHostType host = (UnicoreHostType) jobExecutionContext
-				.getApplicationContext().getHostDescription().getType();
-		
-		String factoryUrl = host.getUnicoreBESEndPointArray()[0];
-
-		EndpointReferenceType eprt = EndpointReferenceType.Factory
-				.newInstance();
-		eprt.addNewAddress().setStringValue(factoryUrl);
-
-		// WSUtilities.addServerIdentity(eprt, serverDN);
-
-		String userDN = getUserName(jobExecutionContext);
-
-		// TODO: to be removed
-		if (userDN == null || userDN.equalsIgnoreCase("admin")) {
-			userDN = "CN=zdv575, O=Ultrascan Gateway, C=DE";
-		}
-
-		StorageClient sc = null;
-
-		try {
-
-			CreateActivityDocument cad = CreateActivityDocument.Factory
-					.newInstance();
-			JobDefinitionDocument jobDefDoc = JobDefinitionDocument.Factory
-					.newInstance();
-
-//			String xlogin = getCNFromUserDN(userDN);
-
-			// create storage
-			StorageCreator storageCreator = new StorageCreator(secProperties,
-					factoryUrl, 5, null);
-
-			try {
-				sc = storageCreator.createStorage();
-			} catch (Exception e2) {
-				log.error("Cannot create storage..");
-				throw new GFacProviderException("Cannot create storage..", e2);
-			}
-
-			JobDefinitionType jobDefinition = jobDefDoc.addNewJobDefinition();
-			try {
-				jobDefinition = JSDLGenerator.buildJSDLInstance(
-						jobExecutionContext, sc.getUrl()).getJobDefinition();
-				cad.addNewCreateActivity().addNewActivityDocument()
-						.setJobDefinition(jobDefinition);
-				log.info("JSDL" + jobDefDoc.toString());
-			} catch (Exception e1) {
-				throw new GFacProviderException(
-						"Cannot generate JSDL instance from the JobExecutionContext.",
-						e1);
-			}
-
-			// upload files if any
-			DataTransferrer dt = new DataTransferrer(jobExecutionContext, sc);
-			dt.uploadLocalFiles();
-
-			FactoryClient factory = null;
-			JobDetails jobDetails = new JobDetails();
-
-			try {
-				factory = new FactoryClient(eprt, secProperties);
-			} catch (Exception e) {
-				throw new GFacProviderException(e.getLocalizedMessage(), e);
-			}
-			CreateActivityResponseDocument response = null;
-			try {
-				log.info(String.format("Activity Submitting to %s ... \n",
-						factoryUrl));
-				jobExecutionContext.getNotifier().publish(new StartExecutionEvent());
-				response = factory.createActivity(cad);
-				log.info(String.format("Activity Submitted to %s \n", factoryUrl));
-			} catch (Exception e) {
-				throw new GFacProviderException("Cannot create activity.", e);
-			}
-			EndpointReferenceType activityEpr = response.getCreateActivityResponse().getActivityIdentifier();
-
-			log.info("Activity : " + activityEpr.getAddress().getStringValue()	+ " Submitted.");
-
-			// factory.waitWhileActivityIsDone(activityEpr, 1000);
-			jobId = WSUtilities.extractResourceID(activityEpr);
-			if (jobId == null) {
-				jobId = new Long(Calendar.getInstance().getTimeInMillis())
-						.toString();
-			}
-			log.info("JobID: " + jobId);
-			jobDetails.setJobID(jobId);
-			jobDetails.setJobDescription(jobId);
-
-			jobExecutionContext.setJobDetails(jobDetails);
-			try {
-			log.info(formatStatusMessage(activityEpr.getAddress()
-					.getStringValue(), factory.getActivityStatus(activityEpr)
-					.toString()));
-			
-			jobExecutionContext.getNotifier().publish(new UnicoreJobIDEvent(jobId));
-//			GFacUtils.saveJobStatus(jobExecutionContext, details,JobState.SUBMITTED);
-
-			factory.getActivityStatus(activityEpr);
-			log.info(formatStatusMessage(activityEpr.getAddress()
-					.getStringValue(), factory.getActivityStatus(activityEpr)
-					.toString()));
-
-			// TODO publish the status messages to the message bus
-			while ((factory.getActivityStatus(activityEpr) != ActivityStateEnumeration.FINISHED)
-					&& (factory.getActivityStatus(activityEpr) != ActivityStateEnumeration.FAILED)
-					&& (factory.getActivityStatus(activityEpr) != ActivityStateEnumeration.CANCELLED)) {
-
-				ActivityStatusType activityStatus = null;
-				try {
-					activityStatus = getStatus(factory, activityEpr);
-					JobState applicationJobStatus = getApplicationJobStatus(activityStatus);
-					String jobStatusMessage = "Status of job " + jobId + "is "
-							+ applicationJobStatus;
-					//TODO: properly use GFacUtils..
-//					GFacUtils.updateJobStatus(jobExecutionContext, jobDetails,	applicationJobStatus);
-
-					jobExecutionContext.getNotifier().publish(
-							new StatusChangeEvent(jobStatusMessage));
-
-					// GFacUtils.updateApplicationJobStatus(jobExecutionContext,jobId,
-					// applicationJobStatus);
-				} catch (UnknownActivityIdentifierFault e) {
-					throw new GFacProviderException(e.getMessage(),
-							e.getCause());
-				}
-
-				try {
-					Thread.sleep(5000);
-				} catch (InterruptedException e) {
-				}
-				continue;
-			}
-			}catch(Exception e) {
-				throw new GFacProviderException(e.getMessage(),
-						e.getCause());
-				
-			}
-			
-			ActivityStatusType activityStatus = null;
-			try {
-				activityStatus = getStatus(factory, activityEpr);
-				log.info(formatStatusMessage(activityEpr.getAddress().getStringValue(), activityStatus.getState().toString()));
-				ActivityClient activityClient;
-				activityClient = new ActivityClient(activityEpr,secProperties);
-				dt.setStorageClient(activityClient.getUspaceClient());
-			} catch (Exception e1) {
-				throw new GFacProviderException(e1.getMessage(),
-						e1.getCause());
-			}
-
-			
-
-			if ((activityStatus.getState() == ActivityStateEnumeration.FAILED)) {
-				String error = activityStatus.getFault().getFaultcode()
-						.getLocalPart()
-						+ "\n"
-						+ activityStatus.getFault().getFaultstring()
-						+ "\n EXITCODE: " + activityStatus.getExitCode();
-				log.info(error);
-				try {
-					Thread.sleep(5000);
-				} catch (InterruptedException e) {
-				}
-				dt.downloadStdOuts();
-			} else if (activityStatus.getState() == ActivityStateEnumeration.CANCELLED) {
-				JobState applicationJobStatus = JobState.CANCELED;
-				String jobStatusMessage = "Status of job " + jobId + "is "
-						+ applicationJobStatus;
-				jobExecutionContext.getNotifier().publish(
-						new StatusChangeEvent(jobStatusMessage));
-				//TODO: properly use GFacUtils..
-//				GFacUtils.updateJobStatus(jobExecutionContext, jobDetails, applicationJobStatus);
-				throw new GFacProviderException(
-						jobExecutionContext.getExperimentID() + "Job Canceled");
-			}
-
-			else if (activityStatus.getState() == ActivityStateEnumeration.FINISHED) {
-				try {
-					Thread.sleep(5000);
-				} catch (InterruptedException e) {
-				}
-				if (activityStatus.getExitCode() == 0) {
-					dt.downloadRemoteFiles();
-				} else {
-					dt.downloadStdOuts();
-				}
-			}
-
-		} finally {
-			// destroy sms instance
-			try {
-				if (sc != null) {
-					sc.destroy();
-				}
-			} catch (Exception e) {
-				log.warn(
-						"Cannot destroy temporary SMS instance:" + sc.getUrl(),
-						e);
-			}
-		}
-
-	}
-
-
 	private JobState getApplicationJobStatus(ActivityStatusType activityStatus) {
 		if (activityStatus == null) {
 			return JobState.UNKNOWN;