MapGuide RFC 2 - Unmanaged Data APIs

This page contains an change request (RFC) for MapGuide Open Source. More MapGuide RFCs can be found on the MapGuide RFCs page.

Status

 * Submission Date: 21:26, 1 November 2006 (CET)
 * Last Modified Date: 21:26, 1 November 2006 (CET)
 * Author: Tony Fang Tonyfang
 * RFC Status: draft
 * Implementation Status: pending
 * Voting History:
 * Assigned PSC guide(s):

Overview
Managed data is data contained inside the server's data repository. Unmanaged data is any data outside of the server's data repository.

We want to add server/web functionality and APIs which will allow Studio to create feature sources from unmanaged data. To accomplish this, we want to specify certain directories on the server machine to be unmanaged data directories. And then add APIs which will enumerate the available unmanaged data files.

WebStudio can also make use of these APIs to create unmanaged feature sources.

Motivation
When you use Studio to create a feature source (e.g. using Load Procedure), the data files (e.g. sdf, shp, raster, dwf, odbc) are uploaded to the server's repository (managed data). This is not an issue when the data files are small. If Studio and Server are on the same machine, this uploading is an unnecessary duplication of the data file. If the data file is really large, the copying is slow and consuming unnecessary hard-drive space.

Currently, you can create a feature source which references unmanaged data. But it must be done manually. You need to know where the data resides on the server machine. Then you must manually edit your Feature Source XML and upload it to the server via the web tier. This is a cumbersome process.

We want to automate this workaround in Studio. To do this, we need to add additional APIs and functionality to the server/web. We need to specify certain directories on the server machine to be unmanaged data directories. We will then add APIs which will enumerate the available unmanaged data files. Thus you would no longer require direct access to the server machine's file system.

The APIs will only enumerate data files contained in the directories allowed by the server. We will not allow the APIs to enumerate any location on the server. For windows, specified directories can be physical drives or network paths. For linux, it can be any accessible path.

Funding/Resources
Tony Fang will be the resource to implement the changes outlined in this RFC.

Proposed Changes
The proposed changes are open for discussion.

The server's unmanaged data directories will be specified using the serverconfig.ini. We will add a new property to General Properties called UnmanagedDataPaths. We will also update GetServerInfo to return this information.

We will add an API to enumerate the unmanaged data files available on the server. It will return the fully qualified path to the file on the server machine.

Technical
TBD

Implications
TBD

Test Plan
TBD