= !MapGuide RFC 70 - Apply Schema = This page contains an change request (RFC) for the !MapGuide Open Source project. More !MapGuide RFCs can be found on the [wiki:MapGuideRfcs RFCs] page. == Status == ||RFC Template Version||(1.0)|| ||Submission Date||June 23, 2009|| ||Last Modified||Leaf Li [[Timestamp]]|| ||Author||Leaf Li|| ||RFC Status||draft|| ||Implementation Status||under development|| ||Proposed Milestone||2.2|| ||Assigned PSC guide(s)||Tom Fukushima|| ||'''Voting History'''||(vote date)|| ||+1|||| ||+0|||| ||-0|||| ||-1|| ||no vote|| || == Overview == This proposal is to refactor MapGuide Web .NET API to some common dlls. == Motivation == Currently all MapGuide Web .NET API is in one single dll !MapGuieDotNetApi.dll, which includes Foundation, Geometry, !PlatformBase, !MapGuideCommon, !WebApp and !HttpHandler components. It isn’t good for users to reuse functionality provided by MapGuide Web .NET API. For example, users have to include a reference to all components even if they just want to use Geometry related API. == Proposed Solution == MapGuide Web .NET API will be divided into five separated dlls. SWIG is used to create MapGuide .NET API as before. * OSGeo.!MapGuide.Foundation.dll: contains API in Foundation component. * OSGeo.!MapGuide.Geometry.dll: contains API in Geometry compoent. * OSGeo.!MapGuide.!PlatformBase.dll: contains API in !PlatformBase component. * OSGeo.!MapGuide.!MapGuideCommon.dll: contains API in !MapGuideCommon compoent. * OSGeo.!MapGuide.Web.dll: contains API in !WebApp and !HttpHandler components. == Implications == Currently, there is no enough resources and funding to refator PHP and Java API. They may be implemented if resources and funding can be obtained in the future. == Test Plan == Run the existing unit tests. No need to add new unit tests. == Funding/Resources == Supplied by Autodesk.