summaryrefslogtreecommitdiffstats
path: root/src/software/lmi/software/core/InstMethodCall.py
diff options
context:
space:
mode:
authorMichal Minar <miminar@redhat.com>2013-08-06 16:23:26 +0200
committerMichal Minar <miminar@redhat.com>2013-08-08 12:53:21 +0200
commit8a1119dc7a8581c8b3858132990ebc1ab3b71aee (patch)
tree448ec0e89740ec36b584664d8333b0027584d7c1 /src/software/lmi/software/core/InstMethodCall.py
parent2d69169f616a6ff029914f21fb5420631bf40171 (diff)
downloadopenlmi-providers-8a1119dc7a8581c8b3858132990ebc1ab3b71aee.tar.gz
openlmi-providers-8a1119dc7a8581c8b3858132990ebc1ab3b71aee.tar.xz
openlmi-providers-8a1119dc7a8581c8b3858132990ebc1ab3b71aee.zip
software: async jobs have associated job method results
This is a temporary work around Pegasus not being able to handle instances of unknown classes.
Diffstat (limited to 'src/software/lmi/software/core/InstMethodCall.py')
-rw-r--r--src/software/lmi/software/core/InstMethodCall.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/software/lmi/software/core/InstMethodCall.py b/src/software/lmi/software/core/InstMethodCall.py
index ec9356e..358d342 100644
--- a/src/software/lmi/software/core/InstMethodCall.py
+++ b/src/software/lmi/software/core/InstMethodCall.py
@@ -109,10 +109,17 @@ def job2model(job, pre=True):
type="instance", value=src_instance)
inst['SourceInstanceModelPath'] = \
str(src_instance.path) #pylint: disable=E1103
- inst['MethodName'] = Job.JOB_METHOD_NAMES[
- job.metadata["method"]]
- inst['MethodParameters'] = Job.make_method_params(
- job, '__MethodParameters', True, not pre)
+ method_name = Job.JOB_METHOD_NAMES[job.metadata["method"]]
+ inst['MethodName'] = method_name
+ # TODO: uncomment when Pegasus can correctly handle instances
+ # of unregistered classes
+ #inst['MethodParameters'] = Job.make_method_params(
+ # job, '__MethodParameters', True, not pre)
+ # TODO: until then, use this workaround
+ if not pre:
+ inst["MethodParameters"] = Job.make_method_params(
+ job, '__MethodParameters_' + method_name, False, True)
+
inst['PreCall'] = pre
if not pre: