Skip to content
Snippets Groups Projects
Commit efffd5de authored by Frank Fischer's avatar Frank Fischer
Browse files

Redirect "SetXYZ" method calls to xyz.setter

parent 5e3f4dce
Branches
No related tags found
No related merge requests found
...@@ -114,7 +114,7 @@ class JDLCreator(object): ...@@ -114,7 +114,7 @@ class JDLCreator(object):
def SetFolder(self, folder): def SetFolder(self, folder):
# type: (str) -> None # type: (str) -> None
"""Defines a folder for JDL file, logs and script""" """Defines a folder for JDL file, logs and script"""
self._job_folder = folder self.job_folder = folder
def SetExecutable(self, exe): def SetExecutable(self, exe):
# type (str) -> None # type (str) -> None
...@@ -136,11 +136,11 @@ class JDLCreator(object): ...@@ -136,11 +136,11 @@ class JDLCreator(object):
def AddExtraLines(self, line): def AddExtraLines(self, line):
# type: (str) -> None # type: (str) -> None
self._extra_lines.append(str(line)) self.extra_lines = line
def ClearExtraLines(self): def ClearExtraLines(self):
# type: (str) -> None # type: (str) -> None
self._extra_lines = [] del self.extra_lines
@property @property
def requirements(self): def requirements(self):
...@@ -180,7 +180,7 @@ class JDLCreator(object): ...@@ -180,7 +180,7 @@ class JDLCreator(object):
def SetWalltime(self, time): def SetWalltime(self, time):
"""Expected maximum job run time (upper limit). Format: seconds""" """Expected maximum job run time (upper limit). Format: seconds"""
# type: (int) -> None # type: (int) -> None
self._wall_time = time self.wall_time = time
@property @property
def memory(self): def memory(self):
...@@ -196,7 +196,7 @@ class JDLCreator(object): ...@@ -196,7 +196,7 @@ class JDLCreator(object):
def SetMemory(self, memory_): def SetMemory(self, memory_):
# type: (int) -> None # type: (int) -> None
"""Expected maximum memory (upper limit) in MB""" """Expected maximum memory (upper limit) in MB"""
self._memory = memory_ self.memory = memory_
@property @property
def arguments(self): def arguments(self):
...@@ -223,13 +223,7 @@ class JDLCreator(object): ...@@ -223,13 +223,7 @@ class JDLCreator(object):
def SetArguments(self, argument): def SetArguments(self, argument):
# type (str, int, float) -> None # type (str, int, float) -> None
"""Set list of arguments for submit""" """Set list of arguments for submit"""
if isinstance(argument, list): self.arguments = argument
for line in argument:
self.arguments = line
elif isinstance(argument, (str, int, float)):
self._arguments.append(str(argument))
else:
raise TypeError('Argument is not a string or a number')
@property @property
def image(self): def image(self):
...@@ -246,12 +240,7 @@ class JDLCreator(object): ...@@ -246,12 +240,7 @@ class JDLCreator(object):
def ChangeImage(self, image_name): def ChangeImage(self, image_name):
# type: (str) -> None # type: (str) -> None
print(self._cloud_site.docker_image) self.image = image_name
print(str(self._cloud_site.universe))
if self._cloud_site.universe == 'docker':
self._cloud_site.docker_image = image_name
else:
raise AttributeError('You are not in a docker universe. :-(')
@property @property
def output_files(self): def output_files(self):
...@@ -308,7 +297,7 @@ class JDLCreator(object): ...@@ -308,7 +297,7 @@ class JDLCreator(object):
def SetRemoteJob(self, value): def SetRemoteJob(self, value):
# type: (boolean) -> None # type: (boolean) -> None
self._remote_job = value self.remote_job = value
def print_stats(self): def print_stats(self):
# type: () -> None # type: () -> None
...@@ -343,7 +332,7 @@ class JDLCreator(object): ...@@ -343,7 +332,7 @@ class JDLCreator(object):
jdl_content.append('universe = %s' % self._cloud_site.universe) jdl_content.append('universe = %s' % self._cloud_site.universe)
if self._cloud_site.universe == 'docker': if self._cloud_site.universe == 'docker':
jdl_content.append('docker_image = %s' % self._cloud_site.docker_image) jdl_content.append('docker_image = %s' % self.image)
# do docker stuff for exe # do docker stuff for exe
jdl_content.append('executable = ./%s' % exe) jdl_content.append('executable = ./%s' % exe)
self.input_files = './%s' % exe self.input_files = './%s' % exe
...@@ -382,7 +371,7 @@ class JDLCreator(object): ...@@ -382,7 +371,7 @@ class JDLCreator(object):
else: else:
print('Warning: You did not set a walltime! Please add ".wall_time = int" in seconds') print('Warning: You did not set a walltime! Please add ".wall_time = int" in seconds')
# add memeory, if set # add memory, if set
if self._memory > 0: if self._memory > 0:
jdl_content.append('RequestMemory = %d' % self._memory) jdl_content.append('RequestMemory = %d' % self._memory)
else: else:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment