Interface compatibility, Database, Runtime component updates – Echelon LNS User Manual

Page 33

Advertising
background image

LNS Programmer's Guide

19

Interface Compatibility

LNS follows the Microsoft COM interface guidelines for maintaining interface

compatibility. Methods and properties can be added to the LNS OCX interface, but
existing interfaces cannot be modified. Automated comparison tools are run on the LNS

interface at each release to verify that the COM interface rules are followed.

Because COM methods and properties may not be modified or removed from an interface,

an established interface can become cluttered with obsolete and duplicate methods and

properties. As a result, Echelon has introduced the concept of a deprecated interface to
provide better guidance for optimal use of LNS Turbo Edition. Deprecated properties,

methods and objects are marked as such in the LNS Object Server Reference help file.
This help file also lists which version each property, method and object was introduced

in, to assist the development of applications that work with multiple versions of LNS.

Note that in the LNS Object Server Reference help file, Turbo Edition is referred to as
Release 3.20, and all properties, methods and objects marked as added to LNS in Release

3.20 are new in Turbo Edition.

For a list of deprecated interfaces in Turbo Edition, see Appendix A, Deprecated API and

Obsolete Files. Remember that deprecated interfaces are generally deprecated because
they do not provide the complete functionality that alternative interfaces provide.

However, most of these interfaces are still included in the LNS Object Server for

backward compatibility reasons. Deprecated features that are no longer implemented or
supported are marked as such in Appendix A.

Database

LNS uses the FastObjects database engine to store its objects. When new features are

added, the database schema must change to support them. The result is that LNS
databases are not usually backward compatible. An LNS Turbo Edition database will not

be accessible by any application using LNS 3.0, or versions of LNS prior to that.

However, LNS databases are always forward compatible. When an application using

LNS Turbo Edition opens an LNS 3.0 database, the database will be automatically

converted to LNS Turbo Edition format in a potentially time-consuming process. Since
database conversion is a one-way process, Echelon recommends that backup databases

be kept as long as there is any question about rolling back to a previous LNS Server
runtime. Note that you cannot use the new Backup() method to do so, as this will

upgrade the database to Turbo Edition format.

LNS Service Pack releases, starting with LNS 3.04, have not modified the database

schema, and Echelon will continue to follow this discipline in future Service Packs. If a

Service Pack must modify the schema in order to fix a serious problem, the Service Pack
read-me file will note that fact prominently.

Runtime Component Updates

In general, LNS Service Packs may not be uninstalled. Patching technology, including

Windows Installer patches, does not generally support uninstallation of patch updates.
Since LNS databases are usually not backward compatible, the updated LNS Turbo

Edition installation will update the LNS global database and individual network

databases as they are opened, further complicating any attempt to return to a previous
version of LNS.

Advertising