Package edu.isi.pegasus.planner.dax
Class Executable
java.lang.Object
edu.isi.pegasus.planner.dax.CatalogType
edu.isi.pegasus.planner.dax.Executable
The Transformation Catalog object the represent the entries in the DAX transformation section.
- Version:
- $Revision$
- Author:
- gmehta
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
ARCH Typesstatic enum
OS Types -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Executable.ARCH
Architecture the executable is compiled forprotected String
Glibc the executable is compiled forprotected boolean
Flag to mark if the executable is installed or can be staged.List of Notification objectsprotected String
Name of the executableprotected String
Namespace of the executableprotected Executable.OS
Os the executable is compiled forprotected String
Os release the executable is compiled forprotected String
OS version the executable is compiled forprotected Set<Executable>
Other executables this executable requiresprotected String
Version of the executableFields inherited from class edu.isi.pegasus.planner.dax.CatalogType
mLogger, mMetadata, mPFNs, mProfiles
-
Constructor Summary
ConstructorsConstructorDescriptionCopy ConstructorExecutable
(String name) Create a new executableExecutable
(String namespace, String name, String version) Create a new Executable -
Method Summary
Modifier and TypeMethodDescriptionAdd a Notification for this Executable Same as add NotificationaddInvoke
(Invoke.WHEN when, String what) Add a Notification for this Executable same as addNotificationaddInvokes
(List<Invoke> invokes) Add a List of Notifications for this Executable Same as addNotificationsaddNotification
(Invoke invoke) Add a Notification for this Executable Same as addInvokeaddNotification
(Invoke.WHEN when, String what) Add a Notification for this Executable same as addInvokeaddNotifications
(List<Invoke> invokes) Add a List of Notifications for this Executable.Add another executable as a requirement to this executableboolean
Compares whether an object is equal to this instance of Executable or notGet the architecture the Executable is compiled forgetGlibc()
Get the Glibc version if any set for this file.boolean
Check if the executable is of type installed.Return the list of Notification objectsgetName()
Get the name of the executableGet the namespace of the executableReturn the list of Notification objects (same as getInvoke)getOS()
Get the OS the Executable is compiled forGet the OS release set for this executable.Get the OS version set for this executable.Get the set of executables that this executable requiresGet the version of the executableint
hashCode()
boolean
Return boolean indicating whether executable or notSet the architecture the executable is compiled forSet the glibc this executable is compiled forset the installed flag on the executable.setInstalled
(boolean installed) Set the installed flag on the executable.Default is installedsetOS
(Executable.OS os) Set the OS the executable is compiled forsetOSRelease
(String osrelease) Set the osrelease the executable is compiled forsetOSVersion
(String osversion) Set the osversion the executable is compiled fortoString()
List<edu.isi.pegasus.planner.catalog.transformation.TransformationCatalogEntry>
Converts the executable into transformation catalog entriesvoid
toXML
(edu.isi.pegasus.common.util.XMLWriter writer) Write the XML representation of this objectvoid
toXML
(edu.isi.pegasus.common.util.XMLWriter writer, int indent) Write the XML representation of this objectUnset the installed flag on the executable.Methods inherited from class edu.isi.pegasus.planner.dax.CatalogType
addMetaData, addMetaData, addMetaData, addPhysicalFile, addPhysicalFile, addPhysicalFile, addPhysicalFiles, addProfile, addProfile, addProfiles, addProfiles, getMetaData, getPhysicalFiles, getProfiles, isFile
-
Field Details
-
mNamespace
Namespace of the executable -
mName
Name of the executable -
mVersion
Version of the executable -
mArch
Architecture the executable is compiled for -
mOs
Os the executable is compiled for -
mOsRelease
Os release the executable is compiled for -
mOsVersion
OS version the executable is compiled for -
mGlibc
Glibc the executable is compiled for -
mInstalled
protected boolean mInstalledFlag to mark if the executable is installed or can be staged. -
mInvokes
List of Notification objects -
mRequires
Other executables this executable requires
-
-
Constructor Details
-
Executable
Create a new executable- Parameters:
name
- name
-
Executable
Copy Constructor- Parameters:
e
- executable to copy from
-
Executable
Create a new Executable- Parameters:
namespace
- the namespacename
- the nameversion
- the version
-
-
Method Details
-
getName
Get the name of the executable- Returns:
- String
-
getNamespace
Get the namespace of the executable- Returns:
- namespace
-
getVersion
Get the version of the executable- Returns:
- version
-
getInvoke
Return the list of Notification objects- Returns:
- List of Invoke objects
-
getNotification
Return the list of Notification objects (same as getInvoke)- Returns:
- List of Invoke objects
-
addInvoke
Add a Notification for this Executable same as addNotification- Parameters:
when
- when to invokewhat
- what executable to invoke including the arguments- Returns:
- Executable
-
addNotification
Add a Notification for this Executable same as addInvoke- Parameters:
when
- when to invokewhat
- what executable to invoke including the arguments- Returns:
- Executable
-
addInvoke
Add a Notification for this Executable Same as add Notification- Parameters:
invoke
- the invoke object containing the notification- Returns:
- Executable
-
addNotification
Add a Notification for this Executable Same as addInvoke- Parameters:
invoke
- the invoke object containing the notification- Returns:
- Executable
-
addInvokes
Add a List of Notifications for this Executable Same as addNotifications- Parameters:
invokes
- list of notification objects- Returns:
- Executable
-
addNotifications
Add a List of Notifications for this Executable. Same as addInvokes- Parameters:
invokes
- list of notification objects- Returns:
- Executable
-
setArchitecture
Set the architecture the executable is compiled for- Parameters:
arch
- the architecture- Returns:
- the Executable object that was modified
-
setOS
Set the OS the executable is compiled for- Parameters:
os
- the OS- Returns:
- the Executable object that was modified
-
setOSRelease
Set the osrelease the executable is compiled for- Parameters:
osrelease
- the os release- Returns:
- the Executable object that was modified
-
setOSVersion
Set the osversion the executable is compiled for- Parameters:
osversion
- os version- Returns:
- the Executable object that was modified
-
setGlibc
Set the glibc this executable is compiled for- Parameters:
glibc
- glibc version- Returns:
- the Executable object that was modified
-
setInstalled
set the installed flag on the executable. Default is installed- Returns:
- the Executable object that was modified
-
unsetInstalled
Unset the installed flag on the executable. Default is installed.- Returns:
- the Executable object that was modified
-
setInstalled
Set the installed flag on the executable.Default is installed- Parameters:
installed
- the installed flag- Returns:
- the Executable object that was modified
-
getInstalled
public boolean getInstalled()Check if the executable is of type installed.- Returns:
- Boolean
-
getArchitecture
Get the architecture the Executable is compiled for- Returns:
- Architecture
-
getOS
Get the OS the Executable is compiled for- Returns:
- the OS
-
getOsRelease
Get the OS release set for this executable. Returns empty string if not set- Returns:
- String
-
getOsVersion
Get the OS version set for this executable.- Returns:
- String
-
getGlibc
Get the Glibc version if any set for this file. Returns empty string if not set- Returns:
- String
-
isExecutable
public boolean isExecutable()Return boolean indicating whether executable or not- Overrides:
isExecutable
in classCatalogType
- Returns:
- boolean
-
getRequirements
Get the set of executables that this executable requires- Returns:
- Set of Executable this main executable requires
-
addRequirement
Add another executable as a requirement to this executable- Parameters:
e
- dependent executable- Returns:
- instance to the Executable that was modified
-
equals
Compares whether an object is equal to this instance of Executable or not -
hashCode
public int hashCode() -
toString
-
toXML
public void toXML(edu.isi.pegasus.common.util.XMLWriter writer) Description copied from class:CatalogType
Write the XML representation of this object- Overrides:
toXML
in classCatalogType
- Parameters:
writer
- the xml writer- See Also:
-
XMLWriter
-
toXML
public void toXML(edu.isi.pegasus.common.util.XMLWriter writer, int indent) Description copied from class:CatalogType
Write the XML representation of this object- Overrides:
toXML
in classCatalogType
- Parameters:
writer
- the xml writerindent
- the number of indent spaces- See Also:
-
XMLWriter
-
toTransformationCatalogEntries
public List<edu.isi.pegasus.planner.catalog.transformation.TransformationCatalogEntry> toTransformationCatalogEntries()Converts the executable into transformation catalog entries- Returns:
- transformation catalog entries
-