CORBA 2.3.3 Programmer's Reference (NonStop CORBA 2.3.7+)
Insertion into Any (1.16.2)
The left-shift-assignment operator (<<=) and right-shift-assignment operator (=>>) for insertion into
any are not generated for structured types: struct, union, sequences, and wchar strings.
Mapping for Exception Types (1.19)
NonStop CORBA adds the operation char * CORBA::Exception::format (void) that
returns a descriptive string describing the exception. Its usage might follow the pattern:
try {
...
} catch (const CORBA::Exception &exc) {
printf (ī%sī, exc.format ());
&
}
The left-shift operator can be used to print to an ostream:
try {
...
} catch (const CORBA::Exception &exc) {
cout << exc << endl;
&
}
The SystemException *_downcast() operation on exception classes is not available.
Any Insertion and Extraction for Exceptions (1.19.3)
The Any insertion and extraction operators (<<= and >>=) for exceptions are not available.
Servant Reference Counting
The OMG specification for CORBA 2.3 defines two options for servant reference counting:
Reference counting using the RefCountServantBase mix-in classā
No reference countingā
The NonStop CORBA 2.3 product supports both these options and adds a third: reference counting
within the CORBA::Object associated with the servant. This option provides backward compatibility
with earlier versions of the NonStop CORBA product (then called NonStop DOM). The ORB can detect
whether or not the servant is derived from RefCountServantBase. If so, then the application is
using OMG standard reference counting. If not, then the application is using CORBA::Object
reference counting (the default). Therefore, a properly working NonStop DOM 2.0 servant will work as