From 5e2ae86380350d33babde5980efdbbd783a8c1b1 Mon Sep 17 00:00:00 2001 From: torse Date: Wed, 14 Jun 2017 15:56:27 +0200 Subject: [PATCH] Fix parsing of dateTime input and format the parameter for the commandline --- src/wpsremote/computation_job_input.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/wpsremote/computation_job_input.py b/src/wpsremote/computation_job_input.py index 0706677..656aade 100644 --- a/src/wpsremote/computation_job_input.py +++ b/src/wpsremote/computation_job_input.py @@ -42,7 +42,7 @@ def _validate_and_convert(self, value): elif (self._type=='datetime'): if self._formatter: try: - date_value = datetime.datetime.strptime(str(value), self._formatter) + date_value = value.strftime(self._formatter) return date_value except: pass @@ -86,9 +86,9 @@ def set_value(self, value): try: res= self.validate() if not res: - raise TypeError() + raise TypeError("cannot set value " + str(self._value) + " for parameter " + self.get_name() + " with type " + self._type) except: - raise TypeError() + raise TypeError("cannot set value " + str(self._value) + " for parameter " + self.get_name() + " with type " + self._type) @@ -103,7 +103,10 @@ def get_type(self): def get_value_string(self): if type(self._value) is list and len(self._value)==1: - return self._value[0] + if type(self._value[0]) is datetime.datetime: + return self._value[0].strftime(self._formatter) + else: + return self._value[0] else: return self._value