Opened 6 years ago

Closed 5 years ago

#1689 closed enhancement (done)

ApplicationManager should not try to create instances of a generic type

Reported by: mkommend Owned by: mkommend
Priority: high Milestone: HeuristicLab 3.3.6
Component: PluginInfrastructure Version: 3.3.6
Keywords: Cc:

Description

Currently the ApplicationManager tries to create instances of generic types. Although the resulting exception is caught, a check if the type is a generic type definition would be the better solution.

Change History (11)

comment:1 Changed 6 years ago by mkommend

  • Status changed from new to accepted

comment:2 Changed 6 years ago by mkommend

I just noticed that the problem is not connected to the instance creation. Rather the ApplicationManager discovers generic type definition, although the onlyInstantiable flag is set.

comment:3 Changed 6 years ago by mkommend

r7066: Filtered generic type definitions if only instantiable types should be discovered.

comment:4 Changed 6 years ago by mkommend

  • Owner changed from mkommend to gkronber
  • Status changed from accepted to reviewing

comment:5 Changed 6 years ago by mkommend

  • Owner changed from gkronber to mkommend
  • Status changed from reviewing to assigned

The changes in r7066 are not working correctly. Generic type definitions must be discovered, because these are afterwards transferred into a normal generic type and I missed that point.

comment:6 Changed 6 years ago by mkommend

r7069: Corrected type discovery and adapted MainFormManager to work correctly.

comment:7 Changed 6 years ago by mkommend

  • Owner changed from mkommend to gkronber
  • Status changed from assigned to reviewing

comment:8 Changed 5 years ago by abeham

  • Owner changed from gkronber to mkommend
  • Priority changed from low to high
  • Status changed from reviewing to assigned

There's a remaining problem with these changes: When I created a new parameter for a UserDefinedAlgorithm, I only got to choose the OperatorParameter and the ScopeParameter to add. All generic parameters were missing which led me to this ticket. I reverted r7066 and r7069 in my working copy and got back the other parameters.

comment:9 Changed 5 years ago by mkommend

  • Owner changed from mkommend to abeham
  • Status changed from assigned to reviewing

r7111: Corrected ApplicationManagers by introducing a new parameter in the GetTypes method.

comment:10 Changed 5 years ago by abeham

  • Owner changed from abeham to mkommend
  • Status changed from reviewing to readytorelease

r7123: removed an unnecessary line

changes look good, did some more testing in various dialogs

comment:11 Changed 5 years ago by swagner

  • Resolution set to done
  • Status changed from readytorelease to closed
  • Version changed from 3.3.5 to 3.3.6
Note: See TracTickets for help on using tickets.