edu.isi.pegasus.planner.classes

## Class TransferJob

- java.lang.Object
- - edu.isi.pegasus.planner.classes.Data
  - - edu.isi.pegasus.planner.classes.Job
    - - edu.isi.pegasus.planner.classes.TransferJob

All Implemented Interfaces:
  GraphNodeContent, java.lang.Cloneable

    public class TransferJob
    extends Job

This is a data class that stores the contents of the transfer job that transfers the data. Later on stdin etc, would be stored in it.

Version:
  $Revision$
Author:
  Karan Vahi vahi@isi.edu, Gaurang Mehta gmehta@isi.edu

### Field Summary

Fields
`private java.lang.String` `mNonTPTSite` The site at which the transfer jobs would have run, had it been running in a peer 2 peer transfer mode (non third party mode).

### Fields inherited from class edu.isi.pegasus.planner.classes.Job

`CHMOD_JOB, CLEANUP_JOB, COMPUTE_JOB, condorUniverse, condorVariables, CREATE_DIR_JOB, DAG_JOB, dagmanVariables, DAX_JOB, dvName, dvNamespace, dvVersion, envVariables, executable, executionPool, globusRSL, globusScheduler, hints, inputFiles, INTER_POOL_JOB, jobClass, jobID, jobName, level, logicalId, logicalName, namespace, outputFiles, REPLICA_REG_JOB, STAGE_IN_JOB, STAGE_IN_WORKER_PACKAGE_JOB, STAGE_OUT_JOB, stdErr, stdIn, stdOut, strargs, UNASSIGNED_JOB, vdsNS, version`

### Fields inherited from class edu.isi.pegasus.planner.classes.Data

`mLogger, mLogMsg`

### Constructor Summary

Constructors
Constructor and Description
`TransferJob()` The default constructor.
`TransferJob(Job job)` The overloaded construct that constructs a GRMS job by wrapping around the `Job` job.

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.Object` `clone()` Returns a new copy of the Object.
`java.lang.String` `getNonThirdPartySite()` Returns the site at which the job would have run if the transfer job was being run in non third party mode.
`void` `setNonThirdPartySite(java.lang.String site)` Sets the non third party site for the transfer job.
`java.lang.String` `toString()` Returns a textual description of the Transfer Job.

### Methods inherited from class edu.isi.pegasus.planner.classes.Job

`addCredentialType, addCredentialType, addInputFile, addNotification, addNotifications, addNotifications, addOutputFile, addProfile, computeRuntime, equals, getArguments, getCompleteDVName, getCompleteTCName, getCredentialTypes, getDAXID, getDirectory, getDOTColor, getDVName, getDVNamespace, getDVVersion, getGridGatewayJobType, getID, getInputFiles, getJobManager, getJobType, getJobTypeDescription, getJobTypeDescription, getLevel, getLogicalID, getName, getNotifications, getNotifications, getOutputFiles, getPreScriptArguments, getPreScriptPath, getRemoteExecutable, getRuntime, getSiteHandle, getStagedExecutableBaseName, getStagedExecutableBaseName, getStagingSiteHandle, getStdErr, getStdIn, getStdOut, getSubmissionCredential, getTXName, getTXNamespace, getTXVersion, getUniverse, getVDSSuperNode, isMPIJob, mergeProfiles, requiresCredentials, resetCredentialTypes, resetNotifications, resetProfiles, runInWorkDirectory, setArguments, setDerivation, setDirectory, setDVName, setDVNamespace, setDVVersion, setExecutableStagingForJob, setInputFiles, setJobManager, setJobType, setLevel, setLogicalID, setName, setOutputFiles, setPreScript, setPreScript, setRemoteExecutable, setRuntime, setRuntime, setSiteHandle, setStagingSiteHandle, setStdErr, setStdIn, setStdOut, setSubmissionCredential, setTransformation, setTXName, setTXNamespace, setTXVersion, setTypeRecursive, setUniverse, setVDSSuperNode, toDOT, toDOT, typeInRange, typeRecursive, updateProfiles, updateProfiles, updateProfiles, updateProfiles, userExecutablesStagedForJob`

### Methods inherited from class edu.isi.pegasus.planner.classes.Data

`setToString, vectorToString`

### Methods inherited from class java.lang.Object

`finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### mNonTPTSite

    private java.lang.String mNonTPTSite

The site at which the transfer jobs would have run, had it been running in a peer 2 peer transfer mode (non third party mode).

### Constructor Detail

#### TransferJob

    public TransferJob()

The default constructor.

#### TransferJob

    public TransferJob(Job job)

The overloaded construct that constructs a GRMS job by wrapping around the `Job` job.

Parameters:
  `job` - the original job description.

### Method Detail

#### getNonThirdPartySite

    public java.lang.String getNonThirdPartySite()

Returns the site at which the job would have run if the transfer job was being run in non third party mode. If the job is run in a non third party mode, the result should be the same as the site where the transfer job has been scheduled.

Returns:
  the site at which the job would have run in a non third party mode, null if not set.

#### setNonThirdPartySite

    public void setNonThirdPartySite(java.lang.String site)

Sets the non third party site for the transfer job. This is the site at which the job would have run if the transfer job was being run in non third party mode.

Parameters:
  `site` - the name of the site

#### toString

    public java.lang.String toString()

Returns a textual description of the Transfer Job.

Overrides:
  `toString` in class `Job`
Returns:
  the textual description.

#### clone

    public java.lang.Object clone()

Returns a new copy of the Object. The implementation is faulty. There is a shallow copy for the profiles. That is the clone retains references to the original object.

Overrides:
  `clone` in class `Job`
Returns:
  Object