ODMA: Open Document Management API

Project P050302 ODMref1.0 
 Mitigation Experiment #1
DeRisk01 Dummy DLL

ODMA>active>
ODMref1.0>
mitigate>

P050302c>
0.01 2006-01-20 -15:07 -0800


DeRisk01 is the dummy DLL for Mitigation Experiment #1.  DeRisk01 provides the minimum (no interface) response to all apparently-valid requests.  It is designed to confirm that we can compile a DLL of the proper format for use by ODMA.

1. Operation

1.1 Command-Line

DeRisk01 is a DLL that can be executed by using DeRun01 or a later version in the progression to ODMrun10:

    C:/> DeRun01 --dll DeRisk01.dll
or  C:/> ODMrun10 --dll DeRisk01.dll

causes the basic confirmation test to run with DeRisk01.  The DLL is loaded and the test performed.  There should be a DeRun01 (or ODMrun10) log and one from DeRisk01.dll.

1.2 Output

DeRisk01 Creates a log file in the directory in which it resides.

The output text provides the following information:

  1. An announcement of the DLL being loaded, its version and title.  Anything else we can know, we will include.

  2. Entries to ODMGetODMInterface() and their parameters.

  3. An annotation about the basis for the response.

  4. The response provided to the entry.

  5. Any detection of the DLL being unloaded, and a report about that.

All of the output lines are time-stamped.  Hmm, maybe not, because that makes it impossible to compare the results of different runs.  We'll sort that out later.

1.3 Confirmation

  1. DeRisk01 is first confirmed by being able to load, activate, and unload it using DeRun01.  The two logs should provide consistent information. 

  2. The second confirmation is by being able to register the DLL as an ODMA DMS Integration and have it be invoked from the ODMA 2.0 Connection Manager.  The client behavior and the Connection Manager logs should be available and reconcilable with the DeRisk01 log.

  3. DeRisk01 will be usable for regression confirmation of later versions of DeRisk and versions of ODMrun10 as they are developed.

2. Design Considerations

2.1 General Approach

This is a simple program that will be developed in C Language.  Except for the DLL entry points, which depend on Microsoft-specific elements, the DLL setup and operation is a pretty simple Standard C and mostly-POSIX source program.  In the future, this code will make use of C++ classes and COM interface definitions to deliver an object that is requested by the ODMA Connection Manager. 

The ODMGetODMInterface definition is maintained in a header file, ODMGetODM.h.  This header is included and we manage that appropriately too.

2.2 Potential Resources

  1. A general stdio library along the lines of my Java conio interface(s) would also be very useful.  I can also get examples from my collection of Java goodies.  This is for making the log file and it is also useful to consider the availability of library code for just this sort of thing.

  2. The existing ODMA header files and the ODMA Sample DMS, the Test32 client, and pieces of the classes used in building the ODMA32 2.0 Connection Manager.

  3. Find existing definitions and declarations for the ODMGetODMInterface operation.

2.3 Packaging

[to be defined.  There will be a simple Zip packaging of the completed DeRisk01 experiment and everything needed to run it.]

 


0.01 2005-03-26-19:54 Create Initial Skeleton Work Item
A sketch of the the DeRisk01 approach is created that is the basis for working through the initial construction.

Construction Zone (Hard Hat Area) You are navigating the
ODMA Interoperability Exchange.

created 2005-03-26-18:38 -0800 (pst) by orcmid
$$Author: Orcmid $
$$Date: 10-08-29 20:11 $
$$Revision: 17 $