Opened 11 years ago

Closed 11 years ago

#1437 closed enhancement (fixed)

Base1PluginExecuter should store 'value' instead of 'key' for enumerated parameters

Reported by: jari Owned by: Nicklas Nordborg
Priority: major Milestone: BASE 2.15
Component: coreplugins Version: trunk
Keywords: Cc:

Description

When Base1PluginExecuter stores selection list parameter values for a transformation it stores the list integer value not the text value it represents. This causes trouble for users when they examine what parameters was used in a job. We need to change that the text value is stored or at least displayed when looking at job parameters.

Change History (4)

comment:1 Changed 11 years ago by Nicklas Nordborg

Milestone: BASE 2.15

This is how the configuration for the Base1 plug-in was setup. Enum-type parameters are specified as a list of key\tvalue pairs in the configuration file. When configuring the job, the 'value' is displayed to the user, but the 'key' is what is actually saved to the database and sent to the plug-in when executing jobs.

There are two ways to fix this.

  1. Change the configuration so that the 'key' and 'value' are the same, or at least similar enough. This probably also requires that the Base1 plug-in is modified so that is knows about the changed parameter value.
  2. If we assume that all 'value':s are unique, we can store the 'value' in the database instead, and then do a lookup for the 'key' when executing the plug-in. I think this assumption is rather safe, since if there are plug-ins with duplicate values then it would already be problematic to use them because there is no way to tell the options apart in the gui.

I'll go for 2 unless someone objects. 1 doesn't affect the BASE code and can be implemeted by anyone today if needed.

comment:2 Changed 11 years ago by Nicklas Nordborg

Owner: changed from everyone to Nicklas Nordborg
Status: newassigned

comment:3 Changed 11 years ago by Nicklas Nordborg

Summary: Base1PluginExecuter storage of parametersBase1PluginExecuter should store 'value' instead of 'key' for enumerated parameters

comment:4 Changed 11 years ago by Nicklas Nordborg

Resolution: fixed
Status: assignedclosed

(In [5204]) Fixes #1437: Base1PluginExecuter should store 'value' instead of 'key' for enumerated parameters

Note that this fix only affects jobs that have been executed after this fix has been installed. Existing jobs will still store (and display) the 'key' values.

Note: See TracTickets for help on using tickets.