Class AbstractJob

  • Direct Known Subclasses:
    DAG, DAX, Job

    public class AbstractJob
    extends java.lang.Object
    Version:
    $Revision$
    Author:
    gmehta
    • Field Detail

      • mArguments

        protected java.util.List mArguments
      • mProfiles

        protected java.util.List<Profile> mProfiles
      • mStdin

        protected File mStdin
      • mStdout

        protected File mStdout
      • mStderr

        protected File mStderr
      • mUses

        protected java.util.Set<File> mUses
      • mInvokes

        protected java.util.List<Invoke> mInvokes
      • mName

        protected java.lang.String mName
      • mId

        protected java.lang.String mId
      • mNamespace

        protected java.lang.String mNamespace
      • mVersion

        protected java.lang.String mVersion
      • mNodeLabel

        protected java.lang.String mNodeLabel
    • Constructor Detail

      • AbstractJob

        protected AbstractJob()
      • AbstractJob

        protected AbstractJob​(AbstractJob a)
        Copy constructor
        Parameters:
        a -
    • Method Detail

      • checkID

        protected static void checkID​(java.lang.String id)
        Copy Constructor
        Parameters:
        a -
      • getArguments

        public java.util.List getArguments()
        Return the argument List. The List contains both String as well as File objects
        Returns:
        List
      • addArgument

        public AbstractJob addArgument​(java.lang.String argument)
        Add a string argument to the argument List. Each call to argument adds a space in between entries
        Parameters:
        argument -
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(File file)
        Add a file object to the argument List. Each call to argument adds a space between entries.
        Parameters:
        file -
        Returns:
        AbstractJob
        See Also:
        File
      • addArgument

        public AbstractJob addArgument​(File[] files)
        Add a Array of File objects to the argument list. The files will be separated by space when rendered on the command line
        Parameters:
        files - File[]
        Returns:
        AbstractJob
        See Also:
        File
      • addArgument

        public AbstractJob addArgument​(java.util.List<File> files)
        Add a List of File objects to the argument list. The files will be separated by space when rendered on the command line
        Parameters:
        files - List
        Returns:
        AbstractJob
        See Also:
        File
      • addArgument

        public AbstractJob addArgument​(File[] files,
                                       java.lang.String filedelimiter)
        Add a Array of File objects to the argument list. The files will be separated by the filedelimiter(default is space) when rendered on the command line.
        Parameters:
        files - File[] Array of file objects
        filedelimiter - String delimiter for the files. Default is space
        Returns:
        AbstractJob
        See Also:
        File
      • addArgument

        public AbstractJob addArgument​(java.util.List<File> files,
                                       java.lang.String filedelimiter)
        Add a List of File objects to the argument list. The files will be separated by the filedelimiter(default is space) when rendered on the command line.
        Parameters:
        files - List Array of file objects
        filedelimiter - String delimiter for the files. Default is space
        Returns:
        AbstractJob
        See Also:
        File
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       java.lang.String argvalue)
        Add a argument key and value to the argument List. The argkey and argvalue are seperated by space. Example addArgument("-p","0") will result in the argument being added as -p 0
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - String
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       java.lang.String argvalue,
                                       java.lang.String argdelimiter)
        Add a argument key and value to the argument List.
        The argkey and argvalue are seperated by argdelimiter.
        Example addArgument("-p","0","=") will result in the argument being added as -p=0
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String Key
        argvalue - String Value
        argdelimiter - String argdelimiter
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       File argvalue)
        Add a argument key and File value to the argument List.
        The argkey and argvalue are seperated by space.
        Example addArgument("-i",new File("f.a")) will result in the argument being added as -i <file name="f.a">
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - File
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       File argvalue,
                                       java.lang.String argdelimiter)
        Add a argument key and File value to the argument List.
        The argkey and argvalue are separated by the argdelimiter.
        Example addArgument("-i",new File("f.a"),"=") will result in the argument being added as -i=<file name="f.a">
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - File
        argdelimiter -
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       File[] argvalue)
        Add a argument key and an array of Files to the argument List.
        The argkey and argvalue are separated space.
        The files are separated by a space
        Example:
        File[] files = {new File("f.a1"), new File("f.a2")};
        job.addArgument("-i",files)

        will result in the argument being added as -i <file name="f.a1"> <file name="f.a2">
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - File[]
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       java.util.List<File> argvalue)
        Add a argument key and a List of Files to the argument List.
        The argkey and argvalue are separated space.
        The files are separated by a space
        Example:
        List files = new LinkedList();
        files.add(new File("f.a1"));
        files.add(new File("f.a2"));
        job.addArgument("-i",files)

        will result in the argument being added as -i <file name="f.a1"> <file name="f.a2">
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - List
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       File[] argvalue,
                                       java.lang.String argdelimiter,
                                       java.lang.String filedelimiter)
        Add a argument key and an array of Files to the argument List.
        The argkey and argvalue are separated by the argdelimiter.
        The files are separated by a filedelimiter
        Example:
        File[] files = {new File("f.a1"), new File("f.a2")};
        job.addArgument("-i",files,"=",",")

        will result in the argument being added as -i=<file name="f.a1">,<file name="f.a2">
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - File[]
        argdelimiter - String
        filedelimiter - String
        Returns:
        AbstractJob
      • addArgument

        public AbstractJob addArgument​(java.lang.String argkey,
                                       java.util.List<File> argvalue,
                                       java.lang.String argdelimiter,
                                       java.lang.String filedelimiter)
        Add a argument key and a List of Files to the argument List.
        The argkey and argvalue are separated by the argdelimiter.
        The files are separated by a filedelimter
        Example:
        List files = new LinkedList();
        files.add(new File("f.a1"));
        files.add(new File("f.a2"));
        job.addArgument("-i",files,"=",",")

        will result in the argument being added as -i=<file name="f.a1">,<file name="f.a2">
        Multiple calls to addArgument results in the arguments being separated by space.
        Parameters:
        argkey - String
        argvalue - List<File> List of File objects
        argdelimiter - String
        filedelimiter - String
        Returns:
        AbstractJob
      • addProfile

        public AbstractJob addProfile​(java.lang.String namespace,
                                      java.lang.String key,
                                      java.lang.String value)
        Add a profile to the job
        Parameters:
        namespace - String
        key - String
        value - String
        Returns:
        AbstractJob
      • addProfile

        public AbstractJob addProfile​(Profile.NAMESPACE namespace,
                                      java.lang.String key,
                                      java.lang.String value)
        Add a profile to the job
        Parameters:
        namespace - Profile.NAMESPACE
        key - String
        value - String
        Returns:
        AbstractJob
      • addProfile

        public AbstractJob addProfile​(Profile profile)
        Add a Profile object
        Parameters:
        profile -
        Returns:
        AbstractJob
        See Also:
        Profile
      • addProfiles

        public AbstractJob addProfiles​(java.util.List<Profile> profiles)
        Add a list of Profile objects
        Parameters:
        profiles - List<Profile>
        Returns:
      • getProfiles

        public java.util.List getProfiles()
        Return the profile List. The List contains both Profile objects
        Returns:
        List
      • getStdin

        public File getStdin()
        Get the STDIN file object
        Returns:
        File
      • setStdin

        public AbstractJob setStdin​(File stdin)
        Parameters:
        stdin -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(File stdin,
                                    boolean register)
        Parameters:
        stdin -
        register -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(File stdin,
                                    File.TRANSFER transfer,
                                    boolean register)
        Parameters:
        stdin -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(File stdin,
                                    File.TRANSFER transfer,
                                    boolean register,
                                    boolean optional)
        Parameters:
        stdin -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(java.lang.String stdin)
        Parameters:
        stdin -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(java.lang.String stdin,
                                    File.TRANSFER transfer)
        Parameters:
        stdin -
        transfer -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(java.lang.String stdin,
                                    boolean register)
        Parameters:
        stdin -
        register -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(java.lang.String stdin,
                                    File.TRANSFER transfer,
                                    boolean register)
        Parameters:
        stdin -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStdin

        public AbstractJob setStdin​(java.lang.String stdin,
                                    File.TRANSFER transfer,
                                    boolean register,
                                    boolean optional)
        Parameters:
        stdin -
        transfer -
        register -
        optional -
        Returns:
        AbstractJob
      • getStdout

        public File getStdout()
        Returns:
        File
      • setStdout

        public AbstractJob setStdout​(File stdout)
        Parameters:
        stdout -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(File stdout,
                                     boolean register)
        Parameters:
        stdout -
        register -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(File stdout,
                                     File.TRANSFER transfer,
                                     boolean register)
        Parameters:
        stdout -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(File stdout,
                                     File.TRANSFER transfer,
                                     boolean register,
                                     boolean optional)
        Parameters:
        stdout -
        transfer -
        register -
        optional -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(java.lang.String stdout)
        Parameters:
        stdout -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(java.lang.String stdout,
                                     File.TRANSFER transfer)
        Parameters:
        stdout -
        transfer -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(java.lang.String stdout,
                                     boolean register)
        Parameters:
        stdout -
        register -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(java.lang.String stdout,
                                     File.TRANSFER transfer,
                                     boolean register)
        Parameters:
        stdout -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStdout

        public AbstractJob setStdout​(java.lang.String stdout,
                                     File.TRANSFER transfer,
                                     boolean register,
                                     boolean optional)
        Parameters:
        stdout -
        transfer -
        register -
        optional -
        Returns:
        AbstractJob
      • getStderr

        public File getStderr()
        Returns:
        File
      • setStderr

        public AbstractJob setStderr​(File stderr)
        Parameters:
        stderr -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(File stderr,
                                     boolean register)
        Parameters:
        stderr -
        register -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(File stderr,
                                     File.TRANSFER transfer,
                                     boolean register)
        Parameters:
        stderr -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(File stderr,
                                     File.TRANSFER transfer,
                                     boolean register,
                                     boolean optional)
        Parameters:
        stderr -
        transfer -
        register -
        optional -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(java.lang.String stderr)
        Parameters:
        stderr -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(java.lang.String stderr,
                                     File.TRANSFER transfer)
        Parameters:
        stderr -
        transfer -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(java.lang.String stderr,
                                     boolean register)
        Parameters:
        stderr -
        register -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(java.lang.String stderr,
                                     File.TRANSFER transfer,
                                     boolean register)
        Parameters:
        stderr -
        transfer -
        register -
        Returns:
        AbstractJob
      • setStderr

        public AbstractJob setStderr​(java.lang.String stderr,
                                     File.TRANSFER transfer,
                                     boolean register,
                                     boolean optional)
        Parameters:
        stderr -
        transfer -
        register -
        optional -
        Returns:
        AbstractJob
      • getUses

        public java.util.Set<File> getUses()
        Returns:
        Set
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link)
        Parameters:
        file -
        link -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                boolean register)
        Parameters:
        file -
        link -
        register -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                boolean register,
                                java.lang.String size)
        Parameters:
        file -
        link -
        register -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                java.lang.String size)
        Parameters:
        file -
        link -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                java.lang.String size)
        Parameters:
        file -
        link -
        transfer -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register)
        Parameters:
        file -
        link -
        transfer -
        register -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register,
                                java.lang.String size)
        Parameters:
        file -
        link -
        transfer -
        register -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register,
                                boolean optional,
                                boolean executable)
        Parameters:
        file -
        link -
        transfer -
        register -
        optional -
        executable -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.lang.String file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register,
                                boolean optional,
                                boolean executable,
                                java.lang.String size)
        Parameters:
        file -
        link -
        transfer -
        register -
        optional -
        executable -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(File file,
                                File.LINK link,
                                boolean register)
        Parameters:
        file -
        link -
        register -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(File file,
                                File.LINK link,
                                boolean register,
                                java.lang.String size)
        Parameters:
        file -
        link -
        register -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(File file,
                                File.LINK link,
                                java.lang.String size)
        Parameters:
        file -
        link -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(File file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register,
                                java.lang.String size)
        Parameters:
        file -
        link -
        transfer -
        register -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(File file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register,
                                boolean optional,
                                boolean executable)
        Parameters:
        file -
        link -
        transfer -
        register -
        optional -
        executable -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(File file,
                                File.LINK link,
                                File.TRANSFER transfer,
                                boolean register,
                                boolean optional,
                                boolean executable,
                                java.lang.String size)
        Parameters:
        file -
        link -
        transfer -
        register -
        optional -
        executable -
        size -
        Returns:
        AbstractJob
      • uses

        public AbstractJob uses​(java.util.List<File> files,
                                File.LINK link)
        Parameters:
        files -
        link -
        Returns:
        AbstractJob
      • getInvoke

        public java.util.List<Invoke> getInvoke()
        Returns list of Invoke objects
        Returns:
        List
      • getNotification

        public java.util.List<Invoke> getNotification()
        Same as getInvoke(). Returns list of Invoke objects
        Returns:
        List
      • addInvoke

        public AbstractJob addInvoke​(Invoke.WHEN when,
                                     java.lang.String what)
        Add Notification to the job
        Parameters:
        when -
        what -
        Returns:
        AbstractJob
      • addNotification

        public AbstractJob addNotification​(Invoke.WHEN when,
                                           java.lang.String what)
        Add Notification to the job
        Parameters:
        when -
        what -
        Returns:
        AbstractJob
      • addInvoke

        public AbstractJob addInvoke​(Invoke invoke)
        Add notification to the job
        Parameters:
        invoke -
        Returns:
        AbstractJob
      • addNotification

        public AbstractJob addNotification​(Invoke invoke)
        Add notification to the job
        Parameters:
        invoke -
        Returns:
        AbstractJob
      • addInvokes

        public AbstractJob addInvokes​(java.util.List<Invoke> invokes)
        Add Notifications to the job
        Parameters:
        invokes -
        Returns:
        AbstractJob
      • addNotifications

        public AbstractJob addNotifications​(java.util.List<Invoke> invokes)
        Add Notifications to the job
        Parameters:
        invokes -
        Returns:
        AbstractJob
      • isJob

        public boolean isJob()
        Is this Object a Job
        Returns:
      • isDAX

        public boolean isDAX()
        Is this Object a DAX
        Returns:
      • isDAG

        public boolean isDAG()
        Is this Object a DAG
        Returns:
      • getName

        public java.lang.String getName()
        Returns:
        String
      • getId

        public java.lang.String getId()
        Returns:
        String
      • getNodeLabel

        public java.lang.String getNodeLabel()
        Returns:
        String
      • setNodeLabel

        public void setNodeLabel​(java.lang.String label)
        Parameters:
        label -
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toXML

        public void toXML​(XMLWriter writer)
        Parameters:
        writer -
      • toXML

        public void toXML​(XMLWriter writer,
                          int indent)
        Parameters:
        writer -
        indent -