An Overview of EsiObjects
EsiObjects can be viewed from the application runtime or development environment.
EsiObjects Runtime Environment
Figure 1 illustrates the Application Runtime Environment (ARE). Within the M environment there exists the EsiObjects Runtime Module and the TCP/IP Gateway that run within the M server environment. They form the foundation of EsiObjects and provide support for the Class Development Environment (CDE) and ARE.
Figure 1: Application Runtime Environment
The EsiObjects Runtime Module supports the following features:
The TCP/IP Gateway implements an object oriented API into the EsiObjects Runtime Module. It supports all valid message protocols needed to invoke an object’s services. It provides the foundation support needed to implement the more sophisticated forms of connectivity implemented by EsiObjects. It also provides direct, simple connectivity via ActiveX controls. The COM proxy, Java proxy and CORBA ORB communications components enable applications to run in multi-tier Client Server or Internet based onfigurations.
Class Development Environment
Figure 2 illustrates the CDE. The CDE consists of a modern Visual Development Environment (VDE) that communicates with the Runtime Module via a TCP/IP connection.
Figure 2: Class Development Environment
The CDE provides the following main features designed to expedite application development.
- The VDE activity is directed to server side M implementations through the Session Control module. The Session Control module supports connections to multiple M servers running the EsiObjects Runtime Module and TCP/IP Gateway. The programmer can have any number of sessions active at once – locally or remotely. The client and the server tiers run independently of each other. They are loosely bound to permit interoperability between different M environments.
- Rapid creation of libraries and classes that contain the supported object services.
- Variable declaration as well as method, property, event and relationships via editors and wizards.
- Tools needed to wrap existing M globals and routines, exposing them as objects.
- Search and Edit functionality as well as an Interactive Debugger and Object Browser.
- Export and Import facilities for the transfer of class libraries and all of their components as well as access to traditional Global and Routine facilities.
- Hierarchical work folders that can store any component of the class hierarchy providing access to it directly.
- An On-line Help facility that contains all documents needed to use EsiObjects including an on-line Getting Started Tutorial.
Today EsiObjects has evolved into a robust development and runtime environment. It is running in large hospital environments and is the object system of choice for M systems within the DOD. Additionally, if you were worried about the future of M, now you have a full Open Source choice – check out the GT.M-I86 Linux system and EsiObjects combination. The price is right - it's free!