Hi Gunter

Last monday I began the conversion of an application from Maestro 2.x to 4.x
and I ran into lots of problems. I've been bombarding Jackie with questions
and I have this table of changes that is not complete but might help you on
the way. In the near future I can put a page on the OSGeo website with code
samples etc. But for now this may be able to help you and others.

I need to say that I am not done and therefor the code cannot compile or run
and none of the findings in this table has been confirmed to be correct. But
most af them should be right.


    

    
v2.x       v4.x
      

                
          IServerConnection con = new HttpServerConnection(host, sessionid,
"en", true);
                
          IServerConnection con = 
          ConnectionProviderRegistry.CreateConnection("Maestro.Http", "Url="
+ host + 
          ";SessionId=" + sessionid +
";Locale=en;AllowUntestedVersion=true");
      
      

                
          RuntimeMap map = con.GetRuntimeMap(mapid);

        
                
          IMappingService mapSvc =
(IMappingService)con.GetService((int)ServiceType.Mapping);

          RuntimeMap map = mapSvc.OpenMap(mapid);
        
      
      

                
          new IMapDefinition()
                
          ObjectFactory.CreateMapDefinition(con, map.Name);
      
      

                
          RuntimeMap map = new RuntimeMap(mdef);
                
          IMapDefinition mapDef =
(IMapDefinition)con.ResourceService.GetResource(mapid);

          IMappingService mapSvc =
(IMappingService)con.GetService((int)ServiceType.Mapping);

          RuntimeMap map = mapSvc.CreateMap(mapDef);
        
      
      

                
          IWebLayout layout = con.GetWebLayout(webLayout);
                
          IWebLayout layout =
(IWebLayout)con.ResourceService.GetResource(webLayout);
      
      

                
          MapDefinition layer = con.GetMapDefinition(mapDefId);
        
                
          IMapDefinition layout =
(IMapDefinition)con.ResourceService.GetResource(mapDefId);
      
      

                
          MapDefinition.BaseMapDefinition
                
          IMapDefinition.
      
      

                
          for (int i = 0; i < mdef.BaseMap.FiniteDisplayScale.Count; i++)
                
          foreach (double d in baseMap.FiniteDisplayScale)
      
      

                
          RuntimeMapLayer.Geometry
                
          RuntimeMapLayer.GeometryPropertyName
      
      

                
          RuntimeMapLayer.Guid
                
          RuntimeMapLayer.LayerDefinitionID
      
      

                
          LayerDefinition ldef = con.GetLayerDefinition(rl.ResourceId);
                
          ILayerDefinition ldef =
(ILayerDefinition)con.ResourceService.GetResource(rl.LayerDefinitionID);
      
      

                
          FeatureSource fs = con.GetFeatureSource(vldef.ResourceId);
                
          IFeatureSource fs = ObjectFactory.CreateFeatureSource(con,
vldef.ResourceId);
      
      

                
          RuntimeMap.LayerGroups
                
          RuntimeMap.Groups
      
      

                
          map.Layers.RemoveAt(0);
                
          Add:

          using System.Linq;
          To make this work.
         
      
      

                
          con.SaveResourceAs(mdef, rtmDef);
                
          con.ResourceService.SaveResourceAs(mdef, rtmDef);
      
      

                
          ldef.Item as VectorLayerDefinitionType
                
          ldef.SubLayer;
      
      

                
          FeatureSetReader rd = layer.Query(filter, new string[] {
layer.Geometry })
        
                
          IReader rd = 
         
map.CurrentConnection.FeatureService.QueryFeatureSource(layer.FeatureSourceID, 
          layer.QualifiedClassName, new string[] {
layer.GeometryPropertyName })
      
      

                
          VectorScaleRangeType.Items
                
          IVectorScaleRange.PointStyle

          IVectorScaleRange.LineStyle

          IVectorScaleRange.AreaStyle
      
      

                
          VectorScaleRange.MinScaleSpecified/MaxScaleSpecified
                
          IVectorScaleRange.MinScale.HasValue/.MaxScale.HasValue
      
      

                
          PointTypeStyleType
                
          IPointVectorStyle
      
      

                
          LineTypeStyleType
                
          ILineVectorStyle
      
      

                
          AreaTypeStyleType
                
          IAreaVectorStyle
      
      

                
          LineRuleType
                
          ILineRule
      
      

                
          PointRuleType.Item
                
          IPointRule.PointSymbolization2D
      
      

                
          LineRuleType.Item
                
          ILineRule.Stroke
      
      

                
          AreaRuleType.Item
                
          IAreaRule.AreaSymbolization2D
      
      

                
          AreaTypeStyleType.AreaRule
                
          IAreaVectorStyle.Rules
      
      

                
          GridLayerDefinitionType
                
          IRasterLayerDefinition
      
      

                
          LayerDefinition.Item
                
          ILayerDefinition
      
      

                
          LineTypeStyle.Items
          
                
         ILineRule.Strokes
         
      
      

                
          ServerConnectionI.GetLegendImage
                
            IMappingServicea.RenderMapLegend
      
      

                
          ServerConnectionI.DescribeFeatureSource
                
            IServerConnection.FeatureService.DescribeFeatureSource
      
      

                
          FeatureSourceReader.Read()
                
            IReader.ReadNext()
      
      

                
          FeatureSourceReader.Row.IsValueNull(column)
                
            IReader.IsNull(column)
      
      

                
          foreach (FeatureSetColumn fsc in fsr.Columns)
                
            for (int i=0; i<fsr.FieldCount; i++)
      
      

                
          FeatureSetReader.Columns.Length
                
            IReader.FieldCount
      
      

                
          FeatureSetReader.Columns[i].Type
                
            IReader.GetFieldType(i)
      
      

                
          FeatureSourceDescription.FeatureSourceSchema
                
            FeatureSchema
      
      

                
          RuntimeMapLayer.NeedRefresh
                
            RuntimeMapLayer.NeedsRefresh (to get)
RuntimeMapLayer.ForceRefresh() (to set)
      
      

                
          RuntimeMapLayer.ResourceID
                
            RuntimeMapLayer.LayerDefinitionID
      
      

                
          RuntimeMap.Extents
                
            RuntimeMap.DataExtent
      
      

                
          ServerConnectionI.HasFolder
                
            con.ResourceService.ResourceExists(folderpath)

            Make sure that folderpath ends with '/' to indicate it's a
folder

      
      

                
          ServerConnectionI.CreateFolder
                
            con.ResourceService.SetResourceXmlData(folderpath, null)
      
      

                
          RuntimeMapLayer.ResourceId
                
            RuntimeMapLayer.LayerDefinitionID
      
      

                
          map.FiniteScales
                
            IMapDefinition mdef = 
           
(IMapDefinition)map.CurrentConnection.ResourceService.GetResource(map.MapDefinition);

            IBaseMapDefinition bm = mdef.BaseMap;

            bm.FiniteDisplayScale.ToArray();
      
    



--
View this message in context: 
http://osgeo-org.1803224.n2.nabble.com/Upgrading-MaestroAPI-tp7019938p7020272.html
Sent from the MapGuide Users mailing list archive at Nabble.com.
_______________________________________________
mapguide-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapguide-users

Reply via email to