= MaestroAPI 3.x API comparison = Maestro 3.x has fundamental API changes from 2.x. This table outlines the main classes and interfaces in 2.x and their equivalents in 3.x ||Maestro 2.x||Maestro 3.x|| ||OSGeo.MapGuide.MaestroAPI.ServerConnectionI||OSGeo.MapGuide.MaestroAPI.IServerConnection|| ||OSGeo.MapGuide.MaestroAPI.HttpServerConnection||OSGeo.MapGuide.MaestroAPI.IServerConnection (created using the Maestro.Http provider name)|| ||OSGeo.MapGuide.MaestroAPI.LocalNativeConnection||OSGeo.MapGuide.MaestroAPI.IServerConnection (created using the Maestro.LocalNative provider name)|| ||OSGeo.MapGuide.MaestroAPI.ApplicationDefinition.ApplicationDefinitionType||OSGeo.MapGuide.ObjectModels.ApplicationDefinition.IApplicationDefinition|| ||OSGeo.MapGuide.MaestroAPI.DrawingSource||OSGeo.MapGuide.ObjectModels.DrawingSource.IDrawingSource|| ||OSGeo.MapGuide.MaestroAPI.FeatureSource||OSGeo.MapGuide.ObjectModels.FeatureSource.IFeatureSource|| ||OSGeo.MapGuide.MaestroAPI.LoadProcedure||OSGeo.MapGuide.ObjectModels.LoadProcedure.ILoadProcedure|| ||OSGeo.MapGuide.MaestroAPI.LayerDefinition||OSGeo.MapGuide.ObjectModels.LayerDefinition.ILayerDefinition|| ||OSGeo.MapGuide.MaestroAPI.MapDefinition||OSGeo.MapGuide.ObjectModels.MapDefinition.IMapDefinition|| ||OSGeo.MapGuide.MaestroAPI.WebLayout||OSGeo.MapGuide.ObjectModels.MapDefinition.IWebLayout|| ||OSGeo.MapGuide.MaestroAPI.FeatureSourceDescription||OSGeo.MapGuide.MaestroAPI.Schema.FeatureSourceDescription|| ||OSGeo.MapGuide.MaestroAPI.RuntimeClasses.RuntimeMap||OSGeo.MapGuide.MaestroAPI.Mapping.RuntimeMap|| == ServerConnectionI == In Maestro 3.x, the ServerConnectionI (now called IServerConnection) has been broken up to service-specific interfaces: * IResourceService * IFeatureService * IFusionService * IMappingService * ISiteService * ITileService These services can be accessed via GetService() method of IServerConnection. The IResourceService and IFeatureService can be accessed directly via the ResourceService and FeatureService properties of IServerConnection == Resource Classes == In Maestro 3.x, resource types are modeled on interfaces. Although there are still underlying generated classes implementing these interfaces, these classes are not intended to be used directly. Creation of these resource objects is done via the new ObjectFactory class. IResourceService automatically handles serialization/deserialization.