Changes between Initial Version and Version 1 of MapGuideRfc122


Ignore:
Timestamp:
Sep 30, 2011, 1:52:01 AM (13 years ago)
Author:
jng
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MapGuideRfc122

    v1 v1  
     1
     2= !MapGuide RFC 122 - Configurable Coordinate System Dictionary paths =
     3
     4This page contains a change request (RFC) for the !MapGuide Open Source project.
     5More !MapGuide RFCs can be found on the [wiki:MapGuideRfcs RFCs] page.
     6
     7
     8== Status ==
     9
     10||RFC Template Version||(1.0)||
     11||Submission Date||30 September 2011||
     12||Last Modified||30 September 2011||
     13||Author||Jackie Ng||
     14||RFC Status||ready for review||
     15||Implementation Status||pending||
     16||Proposed Milestone||2.4||
     17||Assigned PSC guide(s)||(when determined)||
     18||'''Voting History'''||(vote date)||
     19||+1||||
     20||+0||||
     21||-0||||
     22||-1||||
     23||no vote|| ||
     24
     25== Overview ==
     26
     27This RFC proposes to make the coordinate system dictionary path configurable via serverconfig.ini and webconfig.ini
     28
     29== Motivation ==
     30
     31The current path where coordinate system dictionary files are stored is currently defined by the MENTOR_DICTIONARY_PATH environment variable. This approach is bad for many reasons, including:
     32
     33 * Environment variables are global, making for side-by-side installations of MapGuide (of different versions) very difficult. A newer MapGuide installation will overwrite this variable, possibly rendering an existing installation's Coordinate System APIs un-usable.
     34 * For older versions of Windows (XP/2003), environment variable changes from the installer do not take effect until an OS restart is performed. This restart is completely unnecessary, and only exists in the installer to address this issue.
     35
     36== Proposed Solution ==
     37
     38MapGuide should not use MENTOR_DICTIONARY_PATH to look for the coordinate system dictionary files. It should look for this path in a value defined by serverconfig.ini and webconfig.ini respectively.
     39
     40The server and web tier startup logic will be modified as such:
     41
     42 1. Read in the dictionary path from serverconfig.ini and webconfig.ini
     43 2. Obtain a pointer to the MgCoordinateSystemCatalog and change the dictionary path using the SetDictionaryDir() API, passing the read in value
     44 3. Check the library status of the catalog. Throw an exception if the library status is not initialized
     45
     46== Implications ==
     47
     48Nothing is affected. Because the reading and setting of the dictionary path is done on server startup and web tier startup (via MgInitializeWebTier) before users and MapGuide Applications can start working with the Coordinate System APIs
     49
     50== Test Plan ==
     51
     52Test using a custom coordinate system dictionary path specified in serverconfig.ini and webconfig.ini. Verify that MgCoordinateSystem APIs still correctly function from the server and web tier under this alternate path.
     53
     54== Funding / Resources ==
     55
     56Community