[mapguide-commits] r6428 - in trunk/Tools/Maestro:
MaestroAPITestRunner MaestroAPITestRunner/MGOS22
MaestroAPITests OSGeo.MapGuide.MaestroAPI.Native
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Fri Jan 13 12:07:19 EST 2012
Author: jng
Date: 2012-01-13 09:07:18 -0800 (Fri, 13 Jan 2012)
New Revision: 6428
Added:
trunk/Tools/Maestro/MaestroAPITestRunner/MGOS22/
trunk/Tools/Maestro/MaestroAPITestRunner/MGOS22/webconfig.ini
Modified:
trunk/Tools/Maestro/MaestroAPITestRunner/ConnectionProviders.xml
trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj
trunk/Tools/Maestro/MaestroAPITestRunner/Program.cs
trunk/Tools/Maestro/MaestroAPITests/LocalNativeFeatureTests.cs
trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj
trunk/Tools/Maestro/MaestroAPITests/RuntimeMapTests.cs
trunk/Tools/Maestro/MaestroAPITests/TestControl.cs
trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/LocalNativeConnection.cs
trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.csproj
Log:
#1914: Fix slow performance for ResourceExists(). The problem is that our lazy loaded SiteVersion property takes 1s to load, which may not be apparent if the connection itself lives for a long time, but is readily apparent in an environment like ASP.net where each call is from a fresh connection instance. Also fix a whole bunch of broken local native unit tests for #1912 after activating them for the purpose of debugging this issue (local native unit tests are disabled by default because their libraries conflict with the mg-desktop libraries. local and local native unit tests are mutually exclusive)
Modified: trunk/Tools/Maestro/MaestroAPITestRunner/ConnectionProviders.xml
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/ConnectionProviders.xml 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/ConnectionProviders.xml 2012-01-13 17:07:18 UTC (rev 6428)
@@ -6,19 +6,11 @@
<Assembly>OSGeo.MapGuide.MaestroAPI.Http.dll</Assembly>
<Type>OSGeo.MapGuide.MaestroAPI.HttpServerConnection</Type>
</ConnectionProvider>
- <!--
- If you want to use the Maestro.LocalNative provider, you need to set up
- assembly binding redirection by editing Maestro.exe.config. See these links
- below for more information:
- http://trac.osgeo.org/mapguide/wiki/maestro/MaestroAPI/MapGuideDotNetApiVersions
-
- http://themapguyde.blogspot.com/2010/10/using-maestro-in-native-mode-with.html
- -->
<ConnectionProvider>
<Name>Maestro.LocalNative</Name>
<Description>Connection using the MapGuide Web API</Description>
- <Assembly>OSGeo.MapGuide.MaestroAPI.Native.dll</Assembly>
+ <Assembly>MGOS22\OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.dll</Assembly>
<Type>OSGeo.MapGuide.MaestroAPI.LocalNativeConnection</Type>
</ConnectionProvider>
Added: trunk/Tools/Maestro/MaestroAPITestRunner/MGOS22/webconfig.ini
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/MGOS22/webconfig.ini (rev 0)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/MGOS22/webconfig.ini 2012-01-13 17:07:18 UTC (rev 6428)
@@ -0,0 +1,188 @@
+# *****************************************************************************
+# MapGuide Web Configuration File
+#
+# WARNING: BE VERY CAREFUL WHEN MODIFYING THIS FILE AS IT COULD
+# ADVERSLY IMPACT SERVER PERFORMANCE
+# *****************************************************************************
+# COMMON VALIDATION INFORMATION
+#
+# (Unless otherwise noted under the property description)
+# -----------------------------------------------------------------------------
+# String Property Range of String Length Reserved Characters
+# -----------------------------------------------------------------------------
+# File Name 0 < Length <= 128 \/:*?"<>|
+# Folder Name 0 < Length <= 128 \/:*?"<>|
+# Log Parameters 0 <= Length <= 1024
+# Password 0 <= Length <= 64 \t\r\n\v\f
+# Path 0 < Length <= 255 *?"<>|
+# -----------------------------------------------------------------------------
+# Numeric Property Range of Numeric Value
+# -----------------------------------------------------------------------------
+# Port Number 0 <= Value <= 65535
+# *****************************************************************************
+
+[GeneralProperties]
+# *****************************************************************************
+# G E N E R A L
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# DefaultMessageLocale ISO 639-1 name for the message locale
+# Length = 2
+# Example: en
+# or
+# Length = 5
+# Example: en-US
+#
+# WARNING: if a 5 character locale is specified
+# the first 2 characters must be lower
+# case and the last 2 characters must
+# be upper case.
+#
+# LogsPath Path where log files are stored
+# ResourcesPath Path where the localization resource files are stored
+# TcpIpMtu The TCP/IP maximum transmission unit
+# 0 < Value <= 65535
+# TempPath Path where the temporary files are stored
+# FailoverRetryTime Time in seconds for when to retry connecting
+# to a MapGuide server that has gone offline.
+# Note: For a single Web Tier and MapGuide server
+# pair use 1. For a load balanced
+# configuration with multiple MapGuide
+# servers use 60. Values other than 1 will
+# cause a delay when re-establishing a
+# connection with the Web Tier after
+# restarting a MapGuide server.
+#
+# *****************************************************************************
+DefaultMessageLocale = en
+LogsPath = Logs/
+ResourcesPath =C:\Program Files\OSGeo\MapGuide\Web\www\mapagent\Resources
+TcpIpMtu = 1460
+TempPath =C:\Program Files\OSGeo\MapGuide\Web\Temp\
+FailoverRetryTime = 1
+
+[AdministrativeConnectionProperties]
+# *****************************************************************************
+# A D M I N I S T R A T I V E C O N N E C T I O N
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# MaxConnections The maximum allowed concurrent connections for this port.
+# Default value of 2 is for a typical load when the web
+# is connected to a quad core server machine.
+#
+# Port The port to use for administration operations
+#
+# WARNING: If you change the port # here you
+# must also change the corresponding
+# port # for the server configuration
+# file.
+#
+# *****************************************************************************
+MaxConnections = 2
+Port =2810
+
+[ClientConnectionProperties]
+# *****************************************************************************
+# C L I E N T C O N N E C T I O N
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# MaxConnections The maximum allowed concurrent connections for this port.
+# Default value of 12 is for a typical load when the web
+# is connected to a quad core server machine.
+#
+# Port The port to use for client operations
+#
+# WARNING: If you change the port # here you
+# must also change the corresponding
+# port # for the server configuration
+# file.
+#
+# *****************************************************************************
+MaxConnections = 12
+Port =2811
+
+[SiteConnectionProperties]
+# *****************************************************************************
+# S I T E C O N N E C T I O N
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# IpAddress The IP address of the site server
+# 0 < Length <= 255
+#
+# MaxConnections The maximum allowed concurrent connections for this port.
+# Default value of 6 is for a typical load when the web
+# is connected to a quad core server machine.
+#
+# Port The port to use for site operations
+#
+# WARNING: If you change the port # here you
+# must also change the corresponding
+# port # for the server configuration
+# file.
+#
+# *****************************************************************************
+IpAddress =127.0.0.1
+MaxConnections = 6
+Port =2812
+
+[AgentProperties]
+# *****************************************************************************
+# M A P A G E N T
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# DebugPause Number of seconds the agent pauses before
+# each request, for debugging purpose
+# 0 <= Value <= 86400
+# DisableAuthoring Disables Authoring HTTP requests
+# 0 = false and 1 = true
+# DisableWfs Disables OGC Wfs HTTP requests
+# 0 = false and 1 = true
+# DisableWms Disables OGC Wms HTTP requests
+# 0 = false and 1 = true
+# ErrorLogEnabled 0 = log disabled, 1 = log enabled
+# ErrorLogFilename Name of the log file
+# RequestLogEnabled 0 = log disabled, 1 = log enabled
+# RequestLogFilename Name of the log file
+# *****************************************************************************
+DebugPause = 0
+DisableAuthoring = 0
+DisableWfs = 0
+DisableWms = 0
+ErrorLogEnabled = 0
+ErrorLogFilename = Error.log
+RequestLogEnabled = 0
+RequestLogFilename = Request.log
+
+[OgcProperties]
+# *****************************************************************************
+# O G C S E T T I N G S
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# WfsPassword Password to be used for credentials in WFS
+# requests
+# WmsPassword Password to be used for credentials in WMS
+# requests
+# *****************************************************************************
+WfsPassword = wfs
+WmsPassword = wms
+
+[WebApplicationProperties]
+# *****************************************************************************
+# W E B A P P L I C A T I O N S E T T I N G S
+#
+# Property Name Description
+# -----------------------------------------------------------------------------
+# TemplateRootFolder The root folder containing the viewer
+# templates
+# WidgetInfoFolder The folder containing widget info files
+# ContainerInfoFolder The folder containing container info files
+# *****************************************************************************
+TemplateRootFolder =C:\Program Files\OSGeo\MapGuide\Web\www\fusion\templates\mapguide
+WidgetInfoFolder =C:\Program Files\OSGeo\MapGuide\Web\www\fusion\widgets\widgetinfo
+ContainerInfoFolder =C:\Program Files\OSGeo\MapGuide\Web\www\fusion\containerinfo
Modified: trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj 2012-01-13 17:07:18 UTC (rev 6428)
@@ -69,11 +69,38 @@
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
+ <None Include="MGOS22\webconfig.ini">
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </None>
<None Include="Platform.ini">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
+ <Content Include="..\SDK\bin\OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.dll">
+ <Link>MGOS22\OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.dll</Link>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </Content>
+ <Content Include="..\Thirdparty\MGOS_2_2_0_x86\OSGeo.MapGuide.Foundation.dll">
+ <Link>MGOS22\OSGeo.MapGuide.Foundation.dll</Link>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </Content>
+ <Content Include="..\Thirdparty\MGOS_2_2_0_x86\OSGeo.MapGuide.Geometry.dll">
+ <Link>MGOS22\OSGeo.MapGuide.Geometry.dll</Link>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </Content>
+ <Content Include="..\Thirdparty\MGOS_2_2_0_x86\OSGeo.MapGuide.MapGuideCommon.dll">
+ <Link>MGOS22\OSGeo.MapGuide.MapGuideCommon.dll</Link>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </Content>
+ <Content Include="..\Thirdparty\MGOS_2_2_0_x86\OSGeo.MapGuide.PlatformBase.dll">
+ <Link>MGOS22\OSGeo.MapGuide.PlatformBase.dll</Link>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </Content>
+ <Content Include="..\Thirdparty\MGOS_2_2_0_x86\OSGeo.MapGuide.Web.dll">
+ <Link>MGOS22\OSGeo.MapGuide.Web.dll</Link>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ </Content>
<Content Include="ConnectionProviders.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
Modified: trunk/Tools/Maestro/MaestroAPITestRunner/Program.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/Program.cs 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/Program.cs 2012-01-13 17:07:18 UTC (rev 6428)
@@ -22,6 +22,8 @@
using System.Linq;
using System.Text;
using System.Diagnostics;
+using System.Reflection;
+using System.Runtime.InteropServices;
namespace MaestroAPITestRunner
{
@@ -33,6 +35,29 @@
{
static void Main(string[] args)
{
+ //NOTE: Maestro.Local and Maestro.LocalNative unit tests cannot be run at the
+ //same time. They are mutually exclusive. You will need to remove the postbuild
+ //and change the TestControl settings if you want to activate the Maestro.LocalNative tests
+ //
+ //For reference, this is the postbuild required for Maestro.Local tests
+
+ /*
+IF EXIST "$(ProjectDir)Setup" XCOPY /Y /I "$(ProjectDir)Setup\*.*" "$(ProjectDir)$(OutDir)"
+IF NOT EXIST "$(OutDir)Dictionaries" XCOPY /S /Y /I "$(SolutionDir)..\Maestro.AddIn.Local\Dictionaries\*.*" "$(ProjectDir)$(OutDir)Dictionaries"
+IF NOT EXIST "$(OutDir)FDO" XCOPY /S /Y /I "$(SolutionDir)..\Maestro.AddIn.Local\FDO\*.*" "$(ProjectDir)$(OutDir)FDO"
+IF NOT EXIST "$(OutDir)Resources" XCOPY /S /Y /I "$(SolutionDir)..\Maestro.AddIn.Local\Resources\*.res" "$(ProjectDir)$(OutDir)Resources"
+COPY /Y "$(SolutionDir)..\Maestro.AddIn.Local\*.dll" "$(ProjectDir)$(OutDir)"
+ */
+ /*
+ Environment.SetEnvironmentVariable("PATH", Environment.GetEnvironmentVariable("PATH") + ";C:\\Program Files\\OSGeo\\MapGuide\\Web\\www\\mapviewernet\\bin");
+ Environment.SetEnvironmentVariable("MENTOR_DICTIONARY_PATH", "C:\\Program Files\\OSGeo\\MapGuide\\CS-Map\\Dictionaries");
+
+ Assembly.LoadFrom("MGOS22\\OSGeo.MapGuide.Foundation.dll");
+ Assembly.LoadFrom("MGOS22\\OSGeo.MapGuide.Geometry.dll");
+ Assembly.LoadFrom("MGOS22\\OSGeo.MapGuide.PlatformBase.dll");
+ Assembly.LoadFrom("MGOS22\\OSGeo.MapGuide.MapGuideCommon.dll");
+ Assembly.LoadFrom("MGOS22\\OSGeo.MapGuide.Web.dll");
+ */
NUnit.ConsoleRunner.Runner.Main(args);
}
}
Modified: trunk/Tools/Maestro/MaestroAPITests/LocalNativeFeatureTests.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/LocalNativeFeatureTests.cs 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITests/LocalNativeFeatureTests.cs 2012-01-13 17:07:18 UTC (rev 6428)
@@ -294,6 +294,45 @@
}
}
+ [TestFixture(Ignore = TestControl.IgnoreLocalNativeFeatureTests)]
+ public class LocalNativeFeatureTests : LocalNativeFeatureTestsBase
+ {
+ protected override IServerConnection CreateTestConnection()
+ {
+ return LocalNativeConnectionUtil.CreateTestConnection();
+ }
+
+ [Test]
+ public override void TestApplySchema()
+ {
+ base.TestApplySchema();
+ }
+
+ [Test]
+ public override void TestCreateDataStore()
+ {
+ base.TestCreateDataStore();
+ }
+
+ [Test]
+ public override void TestDeleteFeatures()
+ {
+ base.TestDeleteFeatures();
+ }
+
+ [Test]
+ public override void TestInsertFeatures()
+ {
+ base.TestInsertFeatures();
+ }
+
+ [Test]
+ public override void TestUpdateFeatures()
+ {
+ base.TestUpdateFeatures();
+ }
+ }
+
[TestFixture(Ignore = TestControl.IgnoreLocalFeatureTests)]
public class LocalFeatureTests : LocalNativeFeatureTestsBase
{
Modified: trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj 2012-01-13 17:07:18 UTC (rev 6428)
@@ -77,6 +77,7 @@
<Compile Include="HttpConnectionTests.cs" />
<Compile Include="HttpSiteTests.cs" />
<Compile Include="LocalNativeFeatureTests.cs" />
+ <Compile Include="LocalNativePerformanceTests.cs" />
<Compile Include="ObjectTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Properties\Resources.Designer.cs">
Modified: trunk/Tools/Maestro/MaestroAPITests/RuntimeMapTests.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/RuntimeMapTests.cs 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITests/RuntimeMapTests.cs 2012-01-13 17:07:18 UTC (rev 6428)
@@ -1148,15 +1148,12 @@
}
}
- [TestFixture(Ignore = TestControl.IgnoreLocalRuntimeMapTests)]
+ [TestFixture(Ignore = TestControl.IgnoreLocalNativeRuntimeMapTests)]
public class LocalRuntimeMapTests : RuntimeMapTests
{
protected override IServerConnection CreateTestConnection()
{
- return ConnectionProviderRegistry.CreateConnection("Maestro.LocalNative",
- "ConfigFile", "webconfig.ini",
- "Username", "Administrator",
- "Password", "admin");
+ return LocalNativeConnectionUtil.CreateTestConnection();
}
[Test]
Modified: trunk/Tools/Maestro/MaestroAPITests/TestControl.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/TestControl.cs 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/MaestroAPITests/TestControl.cs 2012-01-13 17:07:18 UTC (rev 6428)
@@ -37,17 +37,29 @@
public const bool IgnoreObjectTests = false;
public const bool IgnoreResourceTests = false;
public const bool IgnoreHttpRuntimeMapTests = false;
- public const bool IgnoreLocalRuntimeMapTests = true;
+ public const bool IgnoreLocalNativeRuntimeMapTests = true;
+ public const bool IgnoreLocalNativePerformanceTests = true;
+ public const bool IgnoreLocalNativeFeatureTests = true;
public const bool IgnoreLocalFeatureTests = false;
- public const bool IgnoreLocalNativeFeatureTests = false;
public const bool IgnoreSchemaTests = false;
public const bool IgnoreSerializationTests = false;
public const bool IgnoreValidationTests = false;
}
+ public class LocalNativeConnectionUtil
+ {
+ public static IServerConnection CreateTestConnection()
+ {
+ return ConnectionProviderRegistry.CreateConnection("Maestro.LocalNative",
+ "ConfigFile", "MGOS22\\webconfig.ini",
+ "Username", "Administrator",
+ "Password", "admin");
+ }
+ }
+
public class ConnectionUtil
{
- public static string Port { get { return "8008"; } }
+ public static string Port { get { return ""; } }
public static IServerConnection CreateTestHttpConnection()
{
Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/LocalNativeConnection.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/LocalNativeConnection.cs 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/LocalNativeConnection.cs 2012-01-13 17:07:18 UTC (rev 6428)
@@ -406,6 +406,14 @@
{
get
{
+#if MG220
+ return SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS2_2);
+#elif MG210
+ return SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS2_1);
+#elif MG202
+ return SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS2_0_2);
+#else
+
if (m_siteVersion != null)
return m_siteVersion;
@@ -433,21 +441,13 @@
{
}
-
//Default
if (m_siteVersion == null)
{
-#if MG220
- m_siteVersion = SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS2_2);
-#elif MG210
- m_siteVersion = SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS2_2);
-#elif MG200
- m_siteVersion = SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS2_0_2);
-#else
m_siteVersion = SiteVersions.GetVersion(KnownSiteVersions.MapGuideOS1_2);
-#endif
}
return m_siteVersion;
+#endif
}
}
@@ -833,7 +833,8 @@
public override bool ResourceExists(string resourceid)
{
//API is safe to call in MG 2.1 and newer
- if (this.SiteVersion >= new Version(2, 1))
+ var version = this.SiteVersion;
+ if (version >= new Version(2, 1))
{
MgResourceService res = this.Connection.CreateService(MgServiceType.ResourceService) as MgResourceService;
var result = res.ResourceExists(new MgResourceIdentifier(resourceid));
@@ -913,14 +914,16 @@
{
case CommandType.GetResourceContents:
return new LocalGetResourceContents(this);
+ case CommandType.CreateDataStore:
+ return new LocalNativeCreateDataStore(this);
case CommandType.ApplySchema:
return new LocalNativeApplySchema(this);
case CommandType.DeleteFeatures:
return new LocalNativeDelete(this);
case CommandType.InsertFeature:
- return new LocalNativeDelete(this);
+ return new LocalNativeInsert(this);
case CommandType.UpdateFeatures:
- return new LocalNativeDelete(this);
+ return new LocalNativeUpdate(this);
}
return base.CreateCommand(cmdType);
}
Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.csproj
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.csproj 2012-01-13 05:53:32 UTC (rev 6427)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Native/OSGeo.MapGuide.MaestroAPI.Native32-2.2.0.csproj 2012-01-13 17:07:18 UTC (rev 6428)
@@ -21,7 +21,7 @@
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\SDK\bin\</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <DefineConstants>TRACE;DEBUG;MG220</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
More information about the mapguide-commits
mailing list