gr.uoa.di.madgik.workflow.adaptor.utils.grid
Class JobStatusExternalFilter

java.lang.Object
  extended by gr.uoa.di.madgik.workflow.adaptor.utils.grid.JobStatusExternalFilter
All Implemented Interfaces:
gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter

public class JobStatusExternalFilter
extends Object
implements gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter

The Class JobStatusExternalFilter scans through the output of a glite-WMS-job-status command and parses it to retrieve the actual status. The expected input is expected to be of the following form : ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job : https://lxshare0310.cern.ch:9000/C_CBUJKqc6Zqd4clQaCUTQ Current Status: Done (Success) Logged Reason(s): - Job got an error while in the CondorG queue. - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: dl01.di.uoa.gr:2119/jobmanager-lcgpbs-d4science Submitted: Thu Dec 3 18:37:20 2009 EET ************************************************************* The Process(ExecutionHandle) output is one of the values of JobStatusExternalFilter.JobStatus

Author:
gpapanikos

Nested Class Summary
static class JobStatusExternalFilter.JobStatus
          The recognizable status a job can be in
 
Field Summary
 String JobStatusOutputVariableName
          The variable name to store the output at
 String JobStatusVariableName
          The variable name containing the input to process
 boolean StoreOutput
          The output of the filter should be stored or not
 
Constructor Summary
JobStatusExternalFilter()
           
 
Method Summary
 void FromXML(Node XML)
           
 Set<String> GetInputVariableNames()
           
 Set<String> GetStoreOutputVariableName()
           
 Object Process(gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle)
           
 Object ProcessOnLine(Object OnLineFilteredValue, Set<gr.uoa.di.madgik.execution.datatype.NamedDataType> AdditionalValueProviders, gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle)
           
 boolean StoreOutput()
           
 boolean SupportsOnLineFiltering()
           
 String ToXML()
           
 void Validate()
           
 void ValidateForOnlineFiltering()
           
 void ValidatePreExecution(gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle, Set<String> ExcludeAvailableConstraint)
           
 void ValidatePreExecutionForOnlineFiltering(gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle, Set<String> ExcludeAvailableConstraint)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

StoreOutput

public boolean StoreOutput
The output of the filter should be stored or not


JobStatusVariableName

public String JobStatusVariableName
The variable name containing the input to process


JobStatusOutputVariableName

public String JobStatusOutputVariableName
The variable name to store the output at

Constructor Detail

JobStatusExternalFilter

public JobStatusExternalFilter()
Method Detail

GetInputVariableNames

public Set<String> GetInputVariableNames()
Specified by:
GetInputVariableNames in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter

GetStoreOutputVariableName

public Set<String> GetStoreOutputVariableName()
Specified by:
GetStoreOutputVariableName in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter

StoreOutput

public boolean StoreOutput()
Specified by:
StoreOutput in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter

Validate

public void Validate()
              throws gr.uoa.di.madgik.execution.exception.ExecutionValidationException
Specified by:
Validate in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionValidationException

ValidateForOnlineFiltering

public void ValidateForOnlineFiltering()
                                throws gr.uoa.di.madgik.execution.exception.ExecutionValidationException
Specified by:
ValidateForOnlineFiltering in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionValidationException

ValidatePreExecution

public void ValidatePreExecution(gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle,
                                 Set<String> ExcludeAvailableConstraint)
                          throws gr.uoa.di.madgik.execution.exception.ExecutionValidationException
Specified by:
ValidatePreExecution in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionValidationException

ValidatePreExecutionForOnlineFiltering

public void ValidatePreExecutionForOnlineFiltering(gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle,
                                                   Set<String> ExcludeAvailableConstraint)
                                            throws gr.uoa.di.madgik.execution.exception.ExecutionValidationException
Specified by:
ValidatePreExecutionForOnlineFiltering in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionValidationException

SupportsOnLineFiltering

public boolean SupportsOnLineFiltering()
Specified by:
SupportsOnLineFiltering in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter

Process

public Object Process(gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle)
               throws gr.uoa.di.madgik.execution.exception.ExecutionRunTimeException
Specified by:
Process in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionRunTimeException

ProcessOnLine

public Object ProcessOnLine(Object OnLineFilteredValue,
                            Set<gr.uoa.di.madgik.execution.datatype.NamedDataType> AdditionalValueProviders,
                            gr.uoa.di.madgik.execution.engine.ExecutionHandle Handle)
                     throws gr.uoa.di.madgik.execution.exception.ExecutionRunTimeException
Specified by:
ProcessOnLine in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionRunTimeException

ToXML

public String ToXML()
             throws gr.uoa.di.madgik.execution.exception.ExecutionSerializationException
Specified by:
ToXML in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionSerializationException

FromXML

public void FromXML(Node XML)
             throws gr.uoa.di.madgik.execution.exception.ExecutionSerializationException
Specified by:
FromXML in interface gr.uoa.di.madgik.execution.plan.element.filter.IExternalFilter
Throws:
gr.uoa.di.madgik.execution.exception.ExecutionSerializationException


Copyright © 2012. All Rights Reserved.