Ticket #227 (closed defect: invalid)

Opened 3 months ago

Last modified 3 months ago

CobiaCollection does not return items by correct interface

Reported by: jasper Owned by: jasper
Priority: major Milestone: Phase III WP1
Component: COBIA core Version: 1.2.0.14
Keywords: Cc:

Description

ICapeCollection in the COBIA IDL is templated and strongly types. This implies that a collection of ICapeUnitPort for example (declated as ICapeCollection<ICapeUnitPort>) will return an ICapeUnitPort interface for an object in the collection.

ICobiaCollection is designed to be 1:1 compatible with ICapeCollection. It therefore too supposedly must return objects by their property interface.

The two ICobiaCollection implementations (type library enumerator, returning ICapeLibraryDetails, and PMC enumerator, returning ICapePMCRegistrationDetails) must also return the appropriate interfaces. Which they do when getting items by index, but the unordered_map that provides elements by name was casting interfaces to the ICapeInterface, therefore losing function pointers to the remaining functions.

Change History

comment:1 Changed 3 months ago by jasper

  • Status changed from new to closed
  • Resolution set to invalid

Incorrect assessment, the interface copying problem was on the client side

Note: See TracTickets for help on using tickets.