class DRMAA::JobTemplate

DRMAA job template as required by drmaa_run_job() and drmaa_run_bulk_jobs()

Attributes

ptr[R]

Public Class Methods

new() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 851
def initialize
    @ptr = DRMAA.allocate_job_template
    ObjectSpace.define_finalizer(self, self.method(:finalize).to_proc)
end

Public Instance Methods

arg() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 988
def arg() 
    return vget("drmaa_v_argv") 
end
arg=(argv) click to toggle source

job arguments

# File lib/ood_core/job/adapters/drmaa.rb, line 985
def arg=(argv) 
    vset("drmaa_v_argv", argv) 
end
block_mail=(block) click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 960
def block_mail=(block)
    if block
        set("drmaa_block_email", "1") 
    else
        set("drmaa_block_email", "0") 
    end
end
category() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 884
def category()
    return set("drmaa_job_category") 
end
category=(cat) click to toggle source

DRMAA job category

# File lib/ood_core/job/adapters/drmaa.rb, line 881
def category=(cat)
    set("drmaa_job_category", cat) 
end
command() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 876
def command()
    return get("drmaa_remote_command") 
end
command=(cmd) click to toggle source

path of the command to be started as a job

# File lib/ood_core/job/adapters/drmaa.rb, line 873
def command=(cmd)
    set("drmaa_remote_command", cmd) 
end
env=(env) click to toggle source

job environment

# File lib/ood_core/job/adapters/drmaa.rb, line 993
def env=(env) 
    vset("drmaa_v_env", env) 
end
finalize(id) click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 855
def finalize(id)
    # STDERR.puts "... releasing job template"
    DRMAA.delete_job_template(@ptr)
end
get(name) click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 862
def get(name)
    DRMAA.get_attribute(@ptr, name)
end
hold=(hold) click to toggle source

jobs can be submitted in hold state and released later-on

# File lib/ood_core/job/adapters/drmaa.rb, line 948
def hold=(hold)
    if hold
        set("drmaa_js_state", "drmaa_hold") 
    else
        set("drmaa_js_state", "drmaa_active") 
    end
end
hold?() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 955
def hold?
    if get("drmaa_js_state") == "drmaa_hold" 
        true else false end
end
join=(join) click to toggle source

join jobs stdout/stderr

# File lib/ood_core/job/adapters/drmaa.rb, line 969
def join=(join) 
    if join
        set("drmaa_join_files", "y") 
    else
        set("drmaa_join_files", "n") 
    end
end
join?() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 976
def join?() 
    if  get("drmaa_join_files") == "y" 
        return true
    else
        return false
    end
end
mail=(mail) click to toggle source

mail receipants

# File lib/ood_core/job/adapters/drmaa.rb, line 998
def mail=(mail) 
    vset("drmaa_v_email", mail) 
end
name() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 930
def name
    return get("drmaa_job_name") 
end
name=(name) click to toggle source

job name

# File lib/ood_core/job/adapters/drmaa.rb, line 927
def name=(name)
    set("drmaa_job_name", name) 
end
native() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 893
def native()
    return get("drmaa_native_specification") 
end
native=(nat) click to toggle source

an opaque string that is interpreted by the DRM refer to DRM documentation for what can be specified here

# File lib/ood_core/job/adapters/drmaa.rb, line 890
def native=(nat)
    set("drmaa_native_specification", nat) 
end
set(name, value) click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 859
def set(name, value)
    DRMAA.set_attribute(@ptr, name, value)
end
start_time=(time) click to toggle source

set jobs start time (format “”[[[[CC]YY/]MM/]DD] hh:mm [{-|+}UU:uu])“)

# File lib/ood_core/job/adapters/drmaa.rb, line 943
def start_time=(time)
    set("drmaa_start_time", time) 
end
stderr() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 917
def stderr()
    return get("drmaa_error_path") 
end
stderr=(host_path) click to toggle source

jobs stderr path (format “[<hostname>]:<file_path>”)

# File lib/ood_core/job/adapters/drmaa.rb, line 914
def stderr=(host_path)
    set("drmaa_error_path", host_path) 
end
stdin() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 901
def stdin()
    get("drmaa_input_path") 
end
stdin=(host_path) click to toggle source

jobs stdin path (format “[<hostname>]:<file_path>”)

# File lib/ood_core/job/adapters/drmaa.rb, line 898
def stdin=(host_path)
    set("drmaa_input_path", host_path) 
end
stdout() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 909
def stdout()
    return get("drmaa_output_path") 
end
stdout=(host_path) click to toggle source

jobs stdout path (format “[<hostname>]:<file_path>”)

# File lib/ood_core/job/adapters/drmaa.rb, line 906
def stdout=(host_path)
    set("drmaa_output_path", host_path) 
end
transfer=(transfer) click to toggle source

specifies which files need to be transfered

# File lib/ood_core/job/adapters/drmaa.rb, line 922
def transfer=(transfer)
    set("drmaa_transfer_files", transfer) 
end
vget(name) click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 868
def vget(name)
    DRMAA.get_vector_attribute(@ptr, name)
end
vset(name, values) click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 865
def vset(name, values)
    DRMAA.set_vector_attribute(@ptr, name, values)
end
wd() click to toggle source
# File lib/ood_core/job/adapters/drmaa.rb, line 938
def wd
    return get("drmaa_wd") 
end
wd=(path) click to toggle source

jobs working directory

# File lib/ood_core/job/adapters/drmaa.rb, line 935
def wd=(path)
    set("drmaa_wd", path) 
end