CORBA 2.3 MAILINGLIST Avatar
  1. OMG Issue

CORBA23 — OBV TypeCode problems

  • Key: CORBA23-243
  • Legacy Issue Number: 1685
  • Status: closed  
  • Source: Anonymous
  • Summary:

    Summary: For valuetypes that inherit from concrete valuetypes, the
    ORB::create_value_tc operation is insufficient. In particular, it does not
    allow the TypeCode for the base valuetype to be supplied. This means that
    if a valuetype with a concrete base valuetype is passed in an Any to a
    process that has no compile-time information concerning that valuetype, the
    receiving process will be unable to marshal it. Having the RepositoryId of
    the concrete base in the TypeCode does not solve the problem because the
    two processes might not have an Interface Repository (IFR) in common, or
    the concrete base RepositoryId may not be in the IFR known to the receiving
    process. Also, never in CORBA should unmarshaling require lookups in the
    IFR (this in fact should be an absolute ORB Core rule).

    Proposal: change create_value_tc to

    TypeCode create_value_tc(
    in RepositoryId id,
    in Identifier name,
    in boolean is_custom,
    in TypeCode concrete_base,
    in ValueMembersSeq members
    );

    If the valuetype has no concrete valuetype base, the concrete_base argument
    shall be a nil TypeCode reference.

  • Reported: CORBA 2.2 — Wed, 15 Jul 1998 04:00 GMT
  • Disposition: Resolved — CORBA 2.3
  • Disposition Summary:

    :create_value_tc operation is insufficient. In particular, it does not

  • Updated: Sun, 8 Mar 2015 21:52 GMT