General enhancements
- C++ programmers can use DirectToSOM (DTS) C++ compilers
(available from independent software vendors) as an alternative to the SOMobjects
Toolkit's C++ bindings. (A DTS C++ compiler uses SOM classes to implement
C++ objects.) The support provided by SOMobjects for DTS C++ consists of
various enhancements to the SOM API (useful to SOM programmers in general),
and a new emitter that produces DTS C++ header files corresponding to SOM
IDL. DTS C++ programs include these ".hh" header files, which are emitted
as described under "Generating binding files" in Chapter 4, "SOM IDL and
the SOM Compiler."
- With this release, TCP/IP support is now available
for SOMobjects For Windows. Also, for OS/2 users only, SOMobjects now supports
the 32-bit TCP/IP version 2.0, which offers greater performance over the
16-bit TCP/IP version 1.2.1. These are described in your SOMobjects Installation/Configuration
Guide.
SOMobjects enhancements
- A new default process whereby SOMobjects initializes
and destroys objects more efficiently (using the somDefaultInit and
somDestruct methods). See "Initializing and Uninitializing Objects"
in Chapter 5, "Implementing Classes in SOM."
- A new kind of method, nonstatic, that is similar
to a C++ nonstatic member function. It is normally invoked using offset
resolution but can use any form of SOMobjects method resolution. See "The
four kinds of SOM methods" in Chapter 5, "Implementing Classes in SOM" and
the nonstatic modifier under "Modifier statements" in Chapter 4,
"SOM IDL and the SOM Compiler."
- A new kind of data, staticdata, that is similar
to C++ static data members. A staticdata variable is not stored in
an object; rather, the ClassData structure of the implementing class contains
a pointer to the variable. See the staticdatamodifier under "Modifier
statements" in Chapter 4, "SOM IDL and the SOM Compiler."
- Two new modifiers, somallocate and somdeallocate,
used to indicate that a user-written procedure should be executed to allocate/deallocate
memory for class instances when the somAllocate or somDeallocate
method is invoked. See these modifiers under "Modifier statements" in
Chapter 4, "SOM IDL and the SOM Compiler."
- The ability to "cast" objects. See the methods somCastObj
and somResetObj.
- New support for loading/unloading class libraries.
(This was introduced in SOMobjects For Windows and is now applicable on
OS/2 as well.) See the SOM_ClassLibrary macro in the SOMobjects Base
Toolkit Programmers Reference Manual.
DSOM enhancements
- A new command-line tool, dsom, for managing
DSOM servers (starting, restarting, stopping, querying, and so forth). See
"The dsom server manager utility" in Chapter 6, "Distributed SOM."
In addition, a corresponding programmatic interface is provided by methods
of the new SOMDServerMgr class. See that class and its methods in
the SOMobjects Base Toolkit Programmers Reference Manual.
- A new command-line tool, somdchk, that performs
environment validation. See "Verifying the DSOM environment with somdchk"
in Chapter 6, "Distribute SOM."
- New SOM IDL modifiers for memory management of parameters:
memory_management= corba, caller_owns_parameters, caller_owns_result,
object_owns_parameters, and object_owns_result. The individual
modifiers are described under "Modifier statements" in Chapter 4, "SOM IDL
and the SOM Compiler." See "Memory management" in Chapter 6, "Distributed
SOM," for a complete discussion of the subject. This memory-management support
also includes the new method somdReleaseResources
and the functions somdExceptionFree and SOMD_NoORBfree,
described in the SOMobject Base Toolkit Programmers Reference Manual.
- A graphical user interface to the DSOM `regimpl' utility
on OS/2, called pregimpl. See "Registration steps using `pregimpl'
or `wregimpl', " in Chapter 6, "Distributed SOM."
- Support for the CORBA constant OBJECT_NIL. In addition,
the is_nil method of SOMDObject can now be used for local
objects as well as NULL pointers.
- Support for passing self-referential structs and unions
(those valid in IDL) in remote method calls.
- Support for local/remote transparency in DSOM's object-destruction
methods. See "Destroying remote objects."
- Ability for users to define customized base proxy
classes. See "Customizing the default base proxy class."
- Ability for users to specify an upper limit on the
number of threads that a server can spawn, via the SOMDNUMTHREADS environment
variable. See this variable under "Preparing the environment."
- Improved error handling and performance improvements.
- More sample programs distributed with the SOMobjects
Toolkit.
Metaclass Framework
- SOMMBeforeAfter - a metaclass that enables
the programming of "before/after" metaclasses, whose instances execute a
particular method before and after each method invocation. See Chapter 8,
"The Metaclass Framework," for information about the new Metaclass Framework.
Individual metaclasses, along with related classes and methods, are documented
in the SOMobjects Base Toolkit Programmers Reference Manual.
- SOMMTraced- a utility metaclass to do tracing.
[Back: What's New in SOMobjects Version 2.1]
[Next: New restrictions and deprecated methods]