Ticket #110 (closed: fixed)
Alter the Algorithm factory to serve out algorithms based on name and version (not class name)
Reported by: | Nick Draper | Owned by: | Dickon Champion |
---|---|---|---|
Priority: | major | Milestone: | Iteration 7 |
Component: | Keywords: | ||
Cc: | Blocked By: | ||
Blocking: | Tester: |
Description
The current algorithm factory serves out algorithms based on the class name, This needs to be changed to work on the internal name method and the version method of the algorithm.
Steps:
- Change the Version method on algorithms to return an integer, not a string. You need to check that this does not break the algorithmHistory work.
- Alter the registration of the algorithm within the factory to use the name and version as the key (this could be done simply by some string concatenation with a seperator).
- Add a new map to the factory of (string alg_name, string full_key) to hold the key to the most recent algorithm
- Extend the methods for creating an algorithm with overloads to accept either just a name, or a name and a version.
- Create(name) should use the new map to look up the most recent version of an lagorithm and use that.
- Create(name,version) should return the requested version, but should also use the new map to see if a newer version is available and output that as an Information/warning? log message.
Change History
comment:10 Changed 12 years ago by Nick Draper
comment:11 Changed 12 years ago by Nick Draper
comment:12 Changed 12 years ago by Dickon Champion
- Status changed from new to closed
- Resolution set to fixed
comment:13 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 958
Note: See
TracTickets for help on using
tickets.