Version 4-2 Goals and Description

History Key

  • New content
  • Removed content

Recent Versions

Choose two versions to compare, or click the link to view it.

  1. 4. almost 3 years by tlwiechmann
  2. 3. almost 3 years by tlwiechmann
  3. 2. about 3 years by tlwiechmann
  4. 1. about 3 years by tlwiechmann
 

Goals

Goals for Version 4.2 are:

  • Fix and integrate outstanding bugs.
  • Create a new installation kit for the Windows based IDE.
  • Enhance the ESI$IndexedTable class in preparation for the EsiDB project.
  • RewriteCreate new Install and enhance the Setup and UpgradeUninstall scripts for the GT.M platform.
  • Create a Virtual Machine for the EsiObjects/GT.M implementation.
  • Update the www.EsiObjects.org web site.

Description

Bug Fixes

Resolved existing bugs left over from previous version. These will be listed under the Tickets tab.

IDE Client Installation

Currently the Client installation required the user to install a previous version of EsiObjects and then upgrade it to the newest version. The old version is based on an old version of InstallShield.

It is the goal of this task to create a new Installation package based on the Open Source Nullsoft Scriptable Install System (NSIS) product.

Enhance ESI$IndexedTable Class

The ESI$IndexedTable is a Block Transfer Object (BTO) that will be used as the fundamental data storage type in the EsiDB project. The EsiDB project's goal is to produce a modern database product. It will be used internally initially and then release as an Open Source add in product (library).

  1. Existing Details - Make sure the existing details are complete and correct:
    • Documentation - Go through the IndexedTable class and document all objects and code bodies according to the conventions outlined in the EsiObjects Coding Conventions document.
    • Regression Test - Before expanding the functionality of IndexedTable, expand (rewrite) the regression test for the IndexedTable in the RegressionTest library.
    • Base 1 or 0 - Make sure the use of base 0 (internal) and 1 (external) is consistent and well documented.
    • Multiple Methods - There are two sets of methods that are a little confusing: Add* and Set* methods. Also, there are two of each, that is, SetRow and SetRowV for example. Determine whether there needs to be these combination's and if we can simplify them.
    • Indexing - Declaring Indices for columns seems to work. However, I'm not sure it has been implemented in all methods. The different combination of methods outlined in b) complicates things. Make sure indexing is implemented in all methods.
  2. Enhancements - Add these new features.
    • Column Typing - Add typing to a column. Builtin's (page 36 of the EsiObjects Language Guide) and Normal classes should be selectable. All columns should be typable. If a type is not specified, it should default to a string type.
    • Column Type Validation - There should be a generic method that performs validation on a given column. It should act as if the column had a Property Sheet and the $Valid was coded. This should be accomplished in a general way that applies to any column type.
    • Criteria Iteration - Finish up the criteria iteration. Currently, the normal iterator is implemented (have not tested it). First, please test the normal iterator and write regression test for it. Then implement the criteria iterators. Try to reuse the Base$Criteria objects. If that appears problematic, reimplemented them. However, please implement all of the criteria implemented under Base$Criteria.
    • Event Processing - Event Processing should be integrated at the usual event points - storage, deletion, etc.

New GT.M Install and Uninstall Scripts

The previous Setup and Upgrade scripts were specifically designed for Red Had systems. This task will create a new Install and Uninstall that will demonstrate the following features:

* Check for a GT.M installation. If not there it will put out a message and abort.
* Check if xinetd is installed. If not, it will put out a message and abort. Xinetd replaces the EsiObjects redirector.
* Install based on LANANA standards (http://www.lanana.org/). The root directory for installations will be /opt/lsb-esiobjects...
* A version.txt file in the kit will determine where that specific kit will be install. For example, if it contains "V4.2.0.9", the kit will be installed at /opt/lsb-esiobjects/V4.2.0.9/...
* User files will be installed outside the variable kit area at /opt/lsb-esiobjects/user/. Uninstall and an upgrade (reinstall of the current kit) will not touch it.
* All files will be loaded and set to the proper permissions

EsiObjects Virtual Machine

Once the EsiObjects/GT.M installation is complete, it will be released as a Virtual Machine to make it easy for people to simply install and use.

Update the EsiObjects Web Site

The EsiObjects Web Site (www.esiobjects.org) is currently outdated and needs to be updated in the context of Out Of The Slipstream. Additionally, EsiObjects information should be added to the www.outoftheslipstream.com web site.