Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog19
-rw-r--r--README5
-rw-r--r--configure.in2
-rw-r--r--data/net_1_1/machine.config1
-rw-r--r--data/net_2_0/machine.config73
-rw-r--r--libgc/ChangeLog4
-rw-r--r--libgc/include/private/gcconfig.h4
-rw-r--r--man/mkbundle.113
-rw-r--r--mcs/build/ChangeLog11
-rw-r--r--mcs/build/executable.make3
-rw-r--r--mcs/build/library.make21
-rw-r--r--mcs/class/ChangeLog5
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/ChangeLog45
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpObjects.cs10
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpPatterns.cs576
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/Util.cs16
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/ChangeLog51
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/Misc.cs41
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDatatype.cs5
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDefaultDatatypes.cs57
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngValidatingReader.cs226
-rw-r--r--mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/XsdDatatypeProvider.cs12
-rw-r--r--mcs/class/I18N/CJK/CP51932.cs145
-rw-r--r--mcs/class/I18N/CJK/CP932.cs37
-rw-r--r--mcs/class/I18N/CJK/CP936.cs55
-rw-r--r--mcs/class/I18N/CJK/CP949.cs15
-rw-r--r--mcs/class/I18N/CJK/CP950.cs14
-rw-r--r--mcs/class/I18N/CJK/ChangeLog27
-rw-r--r--mcs/class/I18N/CJK/DbcsEncoding.cs9
-rw-r--r--mcs/class/I18N/CJK/GB18030Encoding.cs3
-rw-r--r--mcs/class/I18N/CJK/ISO2022JP.cs5
-rwxr-xr-xmcs/class/I18N/CJK/Test/ChangeLog8
-rwxr-xr-xmcs/class/I18N/CJK/Test/I18N.CJK.Test.cs46
-rw-r--r--mcs/class/I18N/Common/ByteEncoding.cs1
-rw-r--r--mcs/class/I18N/Common/ChangeLog5
-rw-r--r--mcs/class/I18N/Common/MonoEncoding.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP1254.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP1255.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP1256.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP28596.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP28598.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP28599.cs2
-rw-r--r--mcs/class/I18N/MidEast/CP38598.cs2
-rw-r--r--mcs/class/I18N/MidEast/ChangeLog6
-rw-r--r--mcs/class/I18N/Other/CP1251.cs2
-rw-r--r--mcs/class/I18N/Other/CP1257.cs2
-rw-r--r--mcs/class/I18N/Other/CP1258.cs2
-rw-r--r--mcs/class/I18N/Other/CP20866.cs2
-rw-r--r--mcs/class/I18N/Other/CP21866.cs2
-rw-r--r--mcs/class/I18N/Other/CP28594.cs2
-rw-r--r--mcs/class/I18N/Other/CP28595.cs2
-rw-r--r--mcs/class/I18N/Other/CP57002.cs21
-rw-r--r--mcs/class/I18N/Other/CP874.cs2
-rw-r--r--mcs/class/I18N/Other/ChangeLog6
-rw-r--r--mcs/class/I18N/Rare/CP1026.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1047.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1140.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1141.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1142.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1143.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1144.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1145.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1146.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1147.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1148.cs2
-rw-r--r--mcs/class/I18N/Rare/CP1149.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20273.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20277.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20278.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20280.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20284.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20285.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20290.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20297.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20420.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20424.cs2
-rw-r--r--mcs/class/I18N/Rare/CP20871.cs2
-rw-r--r--mcs/class/I18N/Rare/CP21025.cs2
-rw-r--r--mcs/class/I18N/Rare/CP37.cs2
-rw-r--r--mcs/class/I18N/Rare/CP500.cs2
-rw-r--r--mcs/class/I18N/Rare/CP708.cs2
-rw-r--r--mcs/class/I18N/Rare/CP852.cs2
-rw-r--r--mcs/class/I18N/Rare/CP855.cs2
-rw-r--r--mcs/class/I18N/Rare/CP857.cs2
-rw-r--r--mcs/class/I18N/Rare/CP858.cs2
-rw-r--r--mcs/class/I18N/Rare/CP862.cs2
-rw-r--r--mcs/class/I18N/Rare/CP864.cs2
-rw-r--r--mcs/class/I18N/Rare/CP866.cs2
-rw-r--r--mcs/class/I18N/Rare/CP869.cs2
-rw-r--r--mcs/class/I18N/Rare/CP870.cs2
-rw-r--r--mcs/class/I18N/Rare/CP875.cs2
-rw-r--r--mcs/class/I18N/Rare/ChangeLog11
-rw-r--r--mcs/class/I18N/West/CP10000.cs2
-rw-r--r--mcs/class/I18N/West/CP10079.cs2
-rw-r--r--mcs/class/I18N/West/CP1250.cs2
-rw-r--r--mcs/class/I18N/West/CP1252.cs2
-rw-r--r--mcs/class/I18N/West/CP1253.cs2
-rw-r--r--mcs/class/I18N/West/CP28592.cs2
-rw-r--r--mcs/class/I18N/West/CP28593.cs2
-rw-r--r--mcs/class/I18N/West/CP28597.cs2
-rw-r--r--mcs/class/I18N/West/CP28605.cs2
-rw-r--r--mcs/class/I18N/West/CP437.cs2
-rw-r--r--mcs/class/I18N/West/CP850.cs2
-rw-r--r--mcs/class/I18N/West/CP860.cs2
-rw-r--r--mcs/class/I18N/West/CP861.cs2
-rw-r--r--mcs/class/I18N/West/CP863.cs2
-rw-r--r--mcs/class/I18N/West/CP865.cs2
-rw-r--r--mcs/class/I18N/West/ChangeLog7
-rw-r--r--mcs/class/Makefile1
-rw-r--r--mcs/class/Microsoft.JScript/ChangeLog5
-rw-r--r--mcs/class/Microsoft.JScript/Makefile9
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/ChangeLog4
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/VsaEngine.cs8
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog48
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/Empty.cs20
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/ForIn.cs81
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/GlobalObject.cs4
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/Import.cs2
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/Namespace.cs48
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs11
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/SemanticAnalizer.cs9
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs17
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/ast.cs5
-rw-r--r--mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs19
-rw-r--r--mcs/class/Microsoft.JScript/Test/Mozilla/ChangeLog13
-rw-r--r--mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.fail4
-rw-r--r--mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.tests43
-rw-r--r--mcs/class/Mono.Cairo/ChangeLog4
-rwxr-xr-xmcs/class/Mono.Cairo/Samples/x11/compile.sh22
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix.Native/ChangeLog4
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix/Catalog.cs6
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix/ChangeLog25
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix/UnixGroupInfo.cs16
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix/UnixMarshal.cs2
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix/UnixPath.cs38
-rw-r--r--mcs/class/Mono.Posix/Mono.Unix/UnixUserInfo.cs19
-rw-r--r--mcs/class/System.Configuration/System.Configuration.Internal/ChangeLog5
-rw-r--r--mcs/class/System.Configuration/System.Configuration.Internal/DelegatingConfigHost.cs20
-rw-r--r--mcs/class/System.Configuration/System.Configuration/AppSettingsSection.cs25
-rw-r--r--mcs/class/System.Configuration/System.Configuration/ChangeLog28
-rw-r--r--mcs/class/System.Configuration/System.Configuration/ConfigurationManager.cs10
-rw-r--r--mcs/class/System.Configuration/System.Configuration/ElementInformation.cs4
-rw-r--r--mcs/class/System.Configuration/System.Configuration/ProtectedProviderSettings.cs3
-rw-r--r--mcs/class/System.Configuration/System.Configuration_test.dll.sources1
-rw-r--r--mcs/class/System.Configuration/Test/System.Configuration/ConfigurationElementTest.cs52
-rw-r--r--mcs/class/System.Data/Mono.Data.SqlExpressions/Aggregation.cs2
-rw-r--r--mcs/class/System.Data/Mono.Data.SqlExpressions/ChangeLog4
-rw-r--r--mcs/class/System.Data/Mono.Data.SqlExpressions/ColumnReference.cs132
-rw-r--r--mcs/class/System.Data/System.Data.Common/ChangeLog3
-rw-r--r--mcs/class/System.Data/System.Data.Common/Index.cs1
-rw-r--r--mcs/class/System.Data/System.Data/ChangeLog21
-rw-r--r--mcs/class/System.Data/System.Data/CustomDataClassGenerator.cs3
-rw-r--r--mcs/class/System.Data/System.Data/DataColumn.cs8
-rw-r--r--mcs/class/System.Data/System.Data/DataTable.cs12
-rw-r--r--mcs/class/System.Data/System.Data/RelatedDataView.cs6
-rw-r--r--mcs/class/System.Data/Test/System.Data/ChangeLog15
-rw-r--r--mcs/class/System.Data/Test/System.Data/DataColumnCollectionTest2.cs35
-rw-r--r--mcs/class/System.Data/Test/System.Data/TypedDataSetGeneratorTest.cs20
-rw-r--r--mcs/class/System.Data/Test/System.Data/schemas/ChangeLog4
-rw-r--r--mcs/class/System.Data/Test/System.Data/schemas/bug77248.xsd30
-rw-r--r--mcs/class/System.ServiceProcess/System.ServiceProcess/ChangeLog4
-rw-r--r--mcs/class/System.ServiceProcess/System.ServiceProcess/ServiceInstaller.cs14
-rw-r--r--mcs/class/System.Web.Services/ChangeLog5
-rw-r--r--mcs/class/System.Web.Services/Makefile2
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Configuration/ChangeLog12
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Configuration/ProtocolElement.cs3
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.cs4
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapExtensionTypeElement.cs7
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Configuration/WebServicesSection.cs41
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Configuration/WsiProfilesElement.cs5
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog4
-rw-r--r--mcs/class/System.Web.Services/System.Web.Services.Protocols/WebClientProtocol.cs7
-rw-r--r--mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/ChangeLog5
-rw-r--r--mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs17
-rw-r--r--mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs10
-rw-r--r--mcs/class/System.Web/ChangeLog19
-rw-r--r--mcs/class/System.Web/Makefile36
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/AppSettingsExpressionBuilder.cs85
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs94
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildDependencySet.cs61
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildManager.cs103
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventArgs.cs55
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventHandler.cs37
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildProvider.cs135
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesTo.cs46
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesToAttribute.cs52
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/BuildProviderResultFlags.cs3
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ClientBuildManager.cs222
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerCallback.cs64
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerParameter.cs79
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/CompilerType.cs75
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ConnectionStringsExpressionBuilder.cs91
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/DesignTimeResourceProviderFactoryAttribute.cs67
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/Directive.cs6
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ExpressionBuilder.cs17
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ExpressionBuilderContext.cs2
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ExpressionEditorAttribute.cs69
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ExpressionPrefixAttribute.cs51
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/IAssemblyPostProcessor.cs41
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/IImplicitResourceProvider.cs2
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/IResourceReader.cs (renamed from mcs/class/System.Web/System.Web.Compilation/IResourceProvider.cs)2
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ImplicitResourceKey.cs30
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/LinePragmaCodeInfo.cs80
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/PrecompilationFlags.cs51
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ResourceExpressionBuilder.cs85
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ResourceExpressionFields.cs59
-rw-r--r--mcs/class/System.Web/System.Web.Compilation/ResourceProviderFactory.cs45
-rw-r--r--mcs/class/System.Web/System.Web.Configuration/ChangeLog5
-rw-r--r--mcs/class/System.Web/System.Web.Configuration/HttpCapabilitiesBase.cs4
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/ChangeLog52
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/CompilationSection.cs2
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/ExpressionBuilderCollection.cs4
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/MachineKeySection.cs18
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/PagesSection.cs14
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/RoleManagerSection.cs3
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/RuleSettings.cs4
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/SecurityPolicySection.cs3
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/SessionStateSection.cs11
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/SqlCacheDependencySection.cs3
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/SystemWebSectionGroup.cs8
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/TraceSection.cs4
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/UrlMappingsSection.cs3
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationHost.cs14
-rw-r--r--mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs127
-rw-r--r--mcs/class/System.Web/System.Web.Hosting/ChangeLog4
-rw-r--r--mcs/class/System.Web/System.Web.Hosting/ServletWorkerRequest.jvm.cs532
-rw-r--r--mcs/class/System.Web/System.Web.J2EE/BaseHttpServlet.cs21
-rw-r--r--mcs/class/System.Web/System.Web.J2EE/ChangeLog11
-rw-r--r--mcs/class/System.Web/System.Web.J2EE/J2EEUtils.cs6
-rwxr-xr-xmcs/class/System.Web/System.Web.J2EE/ObjectInputStream.cs107
-rwxr-xr-xmcs/class/System.Web/System.Web.J2EE/ObjectOutputStream.cs104
-rw-r--r--mcs/class/System.Web/System.Web.J2EE/PageMapper.cs114
-rw-r--r--mcs/class/System.Web/System.Web.Mail/ChangeLog6
-rw-r--r--mcs/class/System.Web/System.Web.Mail/MailAttachment.cs6
-rw-r--r--mcs/class/System.Web/System.Web.Mail/MailMessage.cs6
-rw-r--r--mcs/class/System.Web/System.Web.Mail/MailMessageWrapper.cs8
-rw-r--r--mcs/class/System.Web/System.Web.Mail/SmtpClient.cs6
-rw-r--r--mcs/class/System.Web/System.Web.Mail/SmtpMail.cs6
-rw-r--r--mcs/class/System.Web/System.Web.SessionState/ChangeLog8
-rw-r--r--mcs/class/System.Web/System.Web.SessionState/HttpSessionState.jvm.cs21
-rw-r--r--mcs/class/System.Web/System.Web.UI.WebControls/BaseValidator.cs10
-rw-r--r--mcs/class/System.Web/System.Web.UI.WebControls/Button.cs5
-rw-r--r--mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog13
-rw-r--r--mcs/class/System.Web/System.Web.UI.WebControls/DataGrid.cs27
-rw-r--r--mcs/class/System.Web/System.Web.UI.WebControls/PagedDataSource.cs72
-rw-r--r--mcs/class/System.Web/System.Web.UI/ChangeLog38
-rw-r--r--mcs/class/System.Web/System.Web.UI/ClientScriptManager.cs3
-rw-r--r--mcs/class/System.Web/System.Web.UI/HtmlTextWriter.cs10
-rw-r--r--mcs/class/System.Web/System.Web.UI/ObjectStateFormatter.cs16
-rw-r--r--mcs/class/System.Web/System.Web.UI/Page.cs81
-rw-r--r--mcs/class/System.Web/System.Web.Util/AltSerialization.cs8
-rw-r--r--mcs/class/System.Web/System.Web.Util/ChangeLog4
-rw-r--r--mcs/class/System.Web/System.Web.dll.sources25
-rw-r--r--mcs/class/System.Web/System.Web.vmwcsproj61
-rw-r--r--mcs/class/System.Web/System.Web/BrowserCapabilities.cs11
-rw-r--r--mcs/class/System.Web/System.Web/CapabilitiesLoader.cs12
-rw-r--r--mcs/class/System.Web/System.Web/ChangeLog43
-rw-r--r--mcs/class/System.Web/System.Web/HttpApplication.jvm.cs295
-rw-r--r--mcs/class/System.Web/System.Web/HttpApplicationFactory.cs4
-rw-r--r--mcs/class/System.Web/System.Web/HttpBrowserCapabilities.cs9
-rw-r--r--mcs/class/System.Web/System.Web/HttpException.cs42
-rw-r--r--mcs/class/System.Web/System.Web/HttpRequest.cs4
-rw-r--r--mcs/class/System.Web/System.Web/HttpResponse.cs6
-rw-r--r--mcs/class/System.Web/System.Web/HttpResponseStream.cs142
-rw-r--r--mcs/class/System.Web/System.Web/HttpRuntime.cs4
-rw-r--r--mcs/class/System.Web/System.Web/StaticFileHandler.cs16
-rw-r--r--mcs/class/System.Web/Test/System.Web.UI/ChangeLog5
-rw-r--r--mcs/class/System.Web/Test/System.Web.UI/HtmlTextWriterTest.cs29
-rw-r--r--mcs/class/System.Web/Test/standalone/configuration/dumper.cs (renamed from mcs/class/System.Configuration/Test/dumper/dumper.cs)56
-rw-r--r--mcs/class/System.Web/Test/standalone/configuration/dumper.out.microsoft486
-rw-r--r--mcs/class/System.Web/jar.resources5
-rw-r--r--mcs/class/System.XML/System.Xml.Serialization/ChangeLog9
-rw-r--r--mcs/class/System.XML/System.Xml.Serialization/TypeTranslator.cs48
-rw-r--r--mcs/class/System.XML/System.Xml.Serialization/XmlSchemaImporter.cs93
-rw-r--r--mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs142
-rw-r--r--mcs/class/System.XML/System.Xml.XPath/ChangeLog11
-rw-r--r--mcs/class/System.XML/System.Xml.XPath/Iterator.cs11
-rw-r--r--mcs/class/System.XML/System.Xml/ChangeLog4
-rw-r--r--mcs/class/System.XML/System.Xml/XmlConvert.cs19
-rw-r--r--mcs/class/System.XML/System.Xml_test.dll.sources3
-rw-r--r--mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog9
-rw-r--r--mcs/class/System.XML/Test/System.Xml.Serialization/SoapReflectionImporterTests.cs1494
-rw-r--r--mcs/class/System.XML/Test/System.Xml.Serialization/SoapSchemaExporterTests.cs480
-rw-r--r--mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs1595
-rw-r--r--mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaExporterTests.cs89
-rw-r--r--mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaImporterTests.cs455
-rw-r--r--mcs/class/System.XML/Test/System.Xml/ChangeLog4
-rw-r--r--mcs/class/System.XML/Test/System.Xml/XmlConvertTests.cs16
-rw-r--r--mcs/class/System.XML/Test/XmlFiles/xsd/ChangeLog4
-rw-r--r--mcs/class/System/ChangeLog9
-rw-r--r--mcs/class/System/Makefile2
-rw-r--r--mcs/class/System/System.Configuration/ChangeLog8
-rw-r--r--mcs/class/System/System.Configuration/ConfigurationSettings.cs21
-rw-r--r--mcs/class/System/System.Diagnostics/ChangeLog4
-rw-r--r--mcs/class/System/System.Diagnostics/ConsoleTraceListener.cs39
-rw-r--r--mcs/class/System/System.Net.Mail/ChangeLog16
-rw-r--r--mcs/class/System/System.Net.Mail/MailMessage.cs36
-rw-r--r--mcs/class/System/System.Net.Mail/SmtpClient.cs32
-rw-r--r--mcs/class/System/System.Net.Mime/ChangeLog5
-rw-r--r--mcs/class/System/System.Net.Mime/ContentDisposition.cs3
-rw-r--r--mcs/class/System/System.Net/ListenerPrefix.cs1
-rw-r--r--mcs/class/System/System.dll.sources393
-rw-r--r--mcs/class/System/System_test.dll.sources1
-rw-r--r--mcs/class/System/Test/ChangeLog4
-rw-r--r--mcs/class/System/Test/System.Net.Mail/MailMessageTest.cs54
-rw-r--r--mcs/class/System/Test/System.Net.Mail/SmtpClientTest.cs64
-rw-r--r--mcs/class/corlib/ChangeLog25
-rw-r--r--mcs/class/corlib/Makefile91
-rw-r--r--mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog6
-rw-r--r--mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeFileHandle.cs10
-rw-r--r--mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs8
-rw-r--r--mcs/class/corlib/System.Collections.Generic/ChangeLog19
-rw-r--r--mcs/class/corlib/System.Collections.Generic/Dictionary.cs94
-rw-r--r--mcs/class/corlib/System.IO/ChangeLog20
-rw-r--r--mcs/class/corlib/System.IO/DirectoryInfo.cs2
-rw-r--r--mcs/class/corlib/System.IO/File.cs25
-rw-r--r--mcs/class/corlib/System.IO/Path.cs2
-rw-r--r--mcs/class/corlib/System.IO/StreamReader.cs4
-rw-r--r--mcs/class/corlib/System.Runtime.InteropServices/ChangeLog4
-rw-r--r--mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs23
-rw-r--r--mcs/class/corlib/System/ChangeLog9
-rw-r--r--mcs/class/corlib/System/ModuleHandle.cs2
-rw-r--r--mcs/class/corlib/System/TimeSpan.cs13
-rw-r--r--mcs/class/corlib/Test/System.Collections.Generic/ChangeLog13
-rw-r--r--mcs/class/corlib/Test/System.Collections.Generic/DictionaryTest.cs46
-rw-r--r--mcs/class/corlib/Test/System.IO/ChangeLog11
-rw-r--r--mcs/class/corlib/Test/System.IO/DirectoryInfoTest.cs6
-rw-r--r--mcs/class/corlib/Test/System.IO/FileTest.cs36
-rw-r--r--mcs/class/corlib/Test/System.Reflection/ChangeLog4
-rw-r--r--mcs/class/corlib/Test/System.Reflection/ModuleTest.cs2
-rw-r--r--mcs/class/corlib/Test/System.Resources/ChangeLog5
-rw-r--r--mcs/class/corlib/Test/System.Resources/ResourceManagerTest.cs68
-rw-r--r--mcs/class/corlib/Test/System.Text/ChangeLog16
-rw-r--r--mcs/class/corlib/Test/System.Text/DecoderReplacementFallbackBufferTest.cs11
-rw-r--r--mcs/class/corlib/Test/System.Text/EncoderReplacementFallbackBufferTest.cs11
-rw-r--r--mcs/class/corlib/Test/System.Text/UTF7EncodingTest.cs7
-rw-r--r--mcs/class/corlib/Test/System.Text/UTF8EncodingTest.cs76
-rw-r--r--mcs/class/corlib/Test/System.Text/UnicodeEncodingTest.cs17
-rw-r--r--mcs/class/corlib/Test/System.Threading/ChangeLog10
-rw-r--r--mcs/class/corlib/Test/System.Threading/MutexTest.cs1
-rw-r--r--mcs/class/corlib/Test/System.Threading/ThreadTest.cs2
-rw-r--r--mcs/class/corlib/Test/System/ChangeLog8
-rw-r--r--mcs/class/corlib/Test/System/ModuleHandleTest.cs2
-rw-r--r--mcs/class/corlib/Test/System/StringTest.cs16
-rw-r--r--mcs/class/corlib/Test/resources/MyResources.de.resourcesbin479 -> 0 bytes
-rw-r--r--mcs/class/corlib/corlib_plattest.dll.excludes (renamed from mcs/class/System.Web/Test/System.Web.Compilation/ChangeLog)0
-rw-r--r--mcs/class/corlib/corlib_res.dll.excludes22
-rw-r--r--mcs/class/corlib/corlib_test.dll.sources1
-rw-r--r--mcs/errors/ChangeLog16
-rw-r--r--mcs/errors/cs0023-3.cs14
-rwxr-xr-x[-rw-r--r--]mcs/errors/cs0165-11.cs0
-rwxr-xr-x[-rw-r--r--]mcs/errors/cs0165-8.cs0
-rw-r--r--mcs/errors/cs0201-2.cs9
-rw-r--r--mcs/errors/cs0201-3.cs11
-rw-r--r--mcs/errors/cs1026-2.cs12
-rw-r--r--mcs/errors/cs1654-2.cs24
-rw-r--r--mcs/errors/cs1654.cs20
-rw-r--r--mcs/errors/cs1656-4.cs16
-rwxr-xr-x[-rw-r--r--]mcs/errors/gcs0021.cs0
-rwxr-xr-xmcs/errors/gcs0121.cs25
-rw-r--r--mcs/errors/known-issues-gmcs2
-rw-r--r--mcs/errors/known-issues-mcs3
-rw-r--r--mcs/gmcs/ChangeLog65
-rw-r--r--mcs/gmcs/assign.cs15
-rw-r--r--mcs/gmcs/cs-parser.jay58
-rw-r--r--mcs/gmcs/doc.cs31
-rw-r--r--mcs/gmcs/ecore.cs112
-rw-r--r--mcs/gmcs/expression.cs12
-rw-r--r--mcs/gmcs/typemanager.cs7
-rw-r--r--mcs/mcs/ChangeLog71
-rw-r--r--mcs/mcs/assign.cs15
-rw-r--r--mcs/mcs/codegen.cs7
-rw-r--r--mcs/mcs/cs-parser.jay58
-rw-r--r--mcs/mcs/doc.cs29
-rw-r--r--mcs/mcs/ecore.cs112
-rw-r--r--mcs/mcs/expression.cs29
-rw-r--r--mcs/mcs/iterators.cs2
-rw-r--r--mcs/mcs/typemanager.cs7
-rwxr-xr-xmcs/nunit20/ChangeLog1
-rw-r--r--mcs/nunit20/nunit-console/ChangeLog23
-rw-r--r--mcs/nunit20/nunit-console/Makefile2
-rwxr-xr-x[-rw-r--r--]mcs/nunit20/nunit-console/nunit-console.exe.config0
-rw-r--r--mcs/nunit20/nunit-console/nunit-console.exe.config.net_2_086
-rw-r--r--mcs/tests/ChangeLog30
-rw-r--r--mcs/tests/Makefile4
-rw-r--r--mcs/tests/gtest-233-exe.cs (renamed from mcs/tests/gtest-233.cs)1
-rwxr-xr-xmcs/tests/gtest-235-exe.cs (renamed from mcs/tests/gtest-235.cs)1
-rw-r--r--mcs/tests/gtest-xml-1-ref.xml14
-rw-r--r--mcs/tests/gtest-xml-1.cs19
-rw-r--r--mcs/tests/known-issues-gmcs2
-rw-r--r--mcs/tests/test-483-lib.il24
-rw-r--r--mcs/tests/test-483.cs11
-rw-r--r--mcs/tests/test-484.cs29
-rw-r--r--mcs/tests/test-485.cs16
-rw-r--r--mcs/tests/test-486.cs16
-rw-r--r--mcs/tests/test-487.cs25
-rw-r--r--mcs/tests/test-488.cs25
-rw-r--r--mcs/tests/test-xml-050.cs2
-rw-r--r--mcs/tools/mjs/ChangeLog8
-rw-r--r--mcs/tools/mjs/mjs.cs106
-rw-r--r--mcs/tools/mkbundle/ChangeLog4
-rw-r--r--mcs/tools/mkbundle/TODO22
-rw-r--r--mcs/tools/mkbundle/mkbundle.cs81
-rw-r--r--mcs/tools/mkbundle/template.c2
-rw-r--r--mcs/tools/mkbundle/template_z.c2
-rw-r--r--mono/metadata/ChangeLog23
-rw-r--r--mono/metadata/appdomain.h12
-rw-r--r--mono/metadata/boehm-gc.c1
-rw-r--r--mono/metadata/domain.c18
-rw-r--r--mono/metadata/gc.c3
-rw-r--r--mono/metadata/null-gc.c1
-rw-r--r--mono/metadata/profiler-private.h2
-rw-r--r--mono/metadata/profiler.c17
-rw-r--r--mono/metadata/profiler.h2
-rw-r--r--mono/mini/ChangeLog25
-rw-r--r--mono/mini/generics.2.cs20
-rw-r--r--mono/mini/inssel-x86.brg6
-rw-r--r--mono/mini/liveness.c32
-rw-r--r--mono/mini/mini.c4
-rw-r--r--mono/mini/mini.h6
-rw-r--r--mono/utils/ChangeLog9
-rw-r--r--mono/utils/monobitset.c51
-rw-r--r--mono/utils/monobitset.h7
-rw-r--r--scripts/Makefile.am1
424 files changed, 2781 insertions, 12202 deletions
diff --git a/ChangeLog b/ChangeLog
index 0d6652e7977..09368584c04 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,22 +1,3 @@
-2006-01-13 Raja R Harinath <rharinath@novell.com>
-
- * data/net_2_0/machine.config: Fix a couple of typos in type names.
-
-2006-01-10 Raja R Harinath <rharinath@novell.com>
-
- * scripts/Makefile.am (scripts_2_0): Add nunit-console2.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * data/net_2_0/machine.config: switch over to the 2.0
- configuration sections for System.Web and System.Web.Services.
- Also, add the configProtectedData stuff so we can encrypt config
- sections.
-
-2006-01-08 Robert Jordan <robertj@gmx.net>
-
- * man/mkbundle.1: Documented environment variables and Windows issues.
-
2006-01-06 Jonathan Pryor <jonpryor@vt.edu>
* data/config.in: s/libintl/intl/g. Mono.Unix.Catalog DllImports "intl"
diff --git a/README b/README
index 775f78b27f0..098b033916e 100644
--- a/README
+++ b/README
@@ -25,11 +25,6 @@ This is Mono.
http://www.hpl.hp.com/research/linux/libunwind/download.php4
- On Solaris, make sure that you used GNU tar to unpack this package, as
- Solaris tar will not unpack this correctly, and you will get strange errors.
-
- On Solaris, make sure that you use the GNU toolchain to build the software.
-
Optional dependencies:
* libgdiplus
diff --git a/configure.in b/configure.in
index 403063d9655..a1bf690eb4f 100644
--- a/configure.in
+++ b/configure.in
@@ -6,7 +6,7 @@ AC_CANONICAL_SYSTEM
m4_ifdef([_A][M_PROG_TAR],[_A][M_SET_OPTION([tar-ustar])])
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(mono,1.1.13)
+AM_INIT_AUTOMAKE(mono,1.1.13.2)
AM_MAINTAINER_MODE
AC_PROG_LN_S
diff --git a/data/net_1_1/machine.config b/data/net_1_1/machine.config
index 10066f9666e..3540f71215a 100644
--- a/data/net_1_1/machine.config
+++ b/data/net_1_1/machine.config
@@ -87,7 +87,6 @@
<add verb="*" path="*.asax" type="System.Web.HttpForbiddenHandler, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.ascx" type="System.Web.HttpForbiddenHandler, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.config" type="System.Web.HttpForbiddenHandler, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <add verb="*" path="*.Config" type="System.Web.HttpForbiddenHandler, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.cs" type="System.Web.HttpForbiddenHandler, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.rem" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Culture=neutral, PublicKeyToken=b77a5c561934e089" validate="false" />
<add verb="*" path="*.soap" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Culture=neutral, PublicKeyToken=b77a5c561934e089" validate="false" />
diff --git a/data/net_2_0/machine.config b/data/net_2_0/machine.config
index 498755cddd4..dfadb2fc838 100644
--- a/data/net_2_0/machine.config
+++ b/data/net_2_0/machine.config
@@ -3,35 +3,41 @@
<configuration>
<configSections>
- <section name="configProtectedData" type="System.Configuration.ProtectedConfigurationSection, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="appSettings" type="System.Configuration.AppSettingsSection, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="connectionStrings" type="System.Configuration.ConnectionStringsSection, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="system.diagnostics" type="System.Diagnostics.DiagnosticsConfigurationHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="system.runtime.remoting" type="System.Configuration.IgnoreSectionHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false"/>
<section name="strongNames" type="System.Configuration.IgnoreSectionHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false"/>
- <sectionGroup name="system.web" type="System.Web.Configuration.SystemWebSectionGroup, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <section name="authentication" type="System.Web.Configuration.AuthenticationSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="authorization" type="System.Web.Configuration.AuthorizationSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="clientTarget" type="System.Web.Configuration.ClientTargetSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="compilation" type="System.Web.Configuration.CompilationSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="customErrors" type="System.Web.Configuration.CustomErrorsSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="globalization" type="System.Web.Configuration.GlobalizationSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="httpHandlers" type="System.Web.Configuration.HttpHandlersSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="httpModules" type="System.Web.Configuration.HttpModulesSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="httpRuntime" type="System.Web.Configuration.HttpRuntimeSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="machineKey" type="System.Web.Configuration.MachineKeySection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="pages" type="System.Web.Configuration.PagesSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="profile" type="System.Web.Configuration.ProfileSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="sessionState" type="System.Web.Configuration.SessionStateSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="trace" type="System.Web.Configuration.TraceSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="webControls" type="System.Web.Configuration.WebControlsSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="webServices" type="System.Web.Services.Configuration.WebServicesSection, System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <sectionGroup name="caching" type="System.Web.Configuration.SystemWebCachingSectionGroup, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <section name="cache" type="System.Web.Configuration.CacheSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="outputCache" type="System.Web.Configuration.OutputCacheSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="outputCacheSettings" type="System.Web.Configuration.OutputCacheSettingsSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <section name="sqlCacheDependency" type="System.Web.Configuration.OutputCacheSettingsSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </sectionGroup>
+ <sectionGroup name="system.web">
+ <section name="httpHandlers"
+ type="System.Web.Configuration.HttpHandlersSectionHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="httpModules"
+ type="System.Web.Configuration.HttpModulesConfigurationHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="machineKey"
+ type="System.Web.Configuration.MachineKeyConfigHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="authentication"
+ type="System.Web.Configuration.AuthenticationConfigHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="authorization"
+ type="System.Web.Configuration.AuthorizationConfigHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="globalization"
+ type="System.Web.Configuration.GlobalizationConfigurationHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="sessionState"
+ type="System.Web.SessionState.SessionStateSectionHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="trace"
+ type="System.Web.Configuration.TraceConfigurationHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="webServices"
+ type="System.Web.Services.Configuration.WebServicesConfigurationSectionHandler, System.Web.Services, Version=2.0.0.0 Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="webControls"
+ type="System.Web.Configuration.WebControlsSectionHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="compilation"
+ type="System.Web.Configuration.CompilationConfigurationHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="httpRuntime"
+ type="System.Web.Configuration.HttpRuntimeConfigurationHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="customErrors"
+ type="System.Web.Configuration.CustomErrorsConfigHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <section name="pages"
+ type="System.Web.Configuration.PagesConfigurationHandler, System.Web, Version=2.0.0.0, Culture=neutral" />
+ <section name="clientTarget"
+ type="System.Web.Configuration.ClientTargetSectionHandler, System.Web, Version=2.0.0.0, Culture=neutral" />
</sectionGroup>
<sectionGroup name="system.net">
<section name="settings"
@@ -47,16 +53,6 @@
</sectionGroup>
<section name="system.drawing" type="System.Configuration.NameValueSectionHandler, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
-
- <configProtectedData defaultProvider="RsaProtectedConfigurationProvider">
- <providers>
- <add name="RsaProtectedConfigurationProvider" type="System.Configuration.RsaProtectedConfigurationProvider, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
- description="" keyContainerName="MonoFrameworkConfigurationKey" cspProviderName="" useMachineContainer="true" useOAEP="false" />
- <add name="DataProtectionConfigurationProvider" type="System.Configuration.DpapiProtectedConfigurationProvider, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
- description="" useMachineProtection="true" keyEntropy="" />
- </providers>
- </configProtectedData>
-
<system.net>
<connectionManagement>
<add address="*" maxconnection="2" />
@@ -92,7 +88,6 @@
<add verb="*" path="*.asax" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.ascx" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.config" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <add verb="*" path="*.Config" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.cs" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="*" path="*.rem" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Culture=neutral, PublicKeyToken=b77a5c561934e089" validate="false" />
<add verb="*" path="*.soap" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Culture=neutral, PublicKeyToken=b77a5c561934e089" validate="false" />
@@ -156,6 +151,10 @@
minFreeThreads="8"
minLocalRequestFreeThreads="4"
appRequestQueueLimit="100" />
+ <pages buffer="true"
+ enableSessionState="true"
+ autoEventWireup="true"
+ validateRequest="true" />
<clientTarget>
<add alias="ie5" userAgent="Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)" />
<add alias="ie4" userAgent="Mozilla/4.0 (compatible; MSIE 4.0; Windows NT 4.0)" />
diff --git a/libgc/ChangeLog b/libgc/ChangeLog
index 169cc8d6986..c26cb699653 100644
--- a/libgc/ChangeLog
+++ b/libgc/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-11 Zoltan Varga <vargaz@gmail.com>
-
- * include/private/gcconfig.h: Undef _FILE_OFFSET_BITS on sparc.
-
2006-01-03 Geoff Norton <gnorton@customerdna.com>
* darwin_stop_world.c: Merge a patch from Bruce Mitchener that fixes a small
diff --git a/libgc/include/private/gcconfig.h b/libgc/include/private/gcconfig.h
index 2bbd38c4151..c5ecb7e5ffb 100644
--- a/libgc/include/private/gcconfig.h
+++ b/libgc/include/private/gcconfig.h
@@ -834,10 +834,6 @@
# define CPP_WORDSZ 32
# endif
# define ALIGN_DOUBLE
-# ifdef _FILE_OFFSET_BITS
-# undef _FILE_OFFSET_BITS /* libelf.h & procfs.h doesn't compile with large file support */
-# define _FILE_OFFSET_BITS 32
-# endif
# ifdef SUNOS5
# define OS_TYPE "SUNOS5"
extern int _etext[];
diff --git a/man/mkbundle.1 b/man/mkbundle.1
index 465854fad8b..dec60d9111f 100644
--- a/man/mkbundle.1
+++ b/man/mkbundle.1
@@ -87,22 +87,9 @@ When passed, DIR will be set for the MONO_CFG_DIR environment variable
Compresses the assemblies before embedding. This results in smaller
executable files, but increases startup time and requires zlib to be
installed on the target system.
-.SH ENVIRONMENT VARIABLES
-.TP
-.I "AS"
-Assembler command. The default is "as".
-.TP
-.I "CC"
-C compiler command. The default is "cc" under Linux and "gcc -mno-cygwin"
-under Windows.
.SH FILES
This program will load referenced assemblies from the Mono assembly
cache.
-.SH BUGS
-The options "--static" and "-z" are not supported under Windows.
-Moreover, a full cygwin environment containing at least "gcc" and "as"
-is required for the build process. The generated executable does not
-depend on cygwin.
.SH MAILING LISTS
Visit http://lists.ximian.com/mailman/listinfo/mono-devel-list for details.
.SH WEB SITE
diff --git a/mcs/build/ChangeLog b/mcs/build/ChangeLog
index 4cbf05c7e5d..9bc90bae32d 100644
--- a/mcs/build/ChangeLog
+++ b/mcs/build/ChangeLog
@@ -1,14 +1,3 @@
-2006-01-19 Raja R Harinath <rharinath@novell.com>
-
- * library.make (test_lib): Don't allow to be overridden.
- (test_against, test_dep): Remove.
-
-2006-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * executable.make: allow installing a different .config file for
- executables such as nunit-console.exe that should use a different one
- depending on the profile.
-
2006-01-05 Raja R Harinath <rharinath@novell.com>
* library.make (run-test-lib, run-test-ondotnet-lib): Workaround a
diff --git a/mcs/build/executable.make b/mcs/build/executable.make
index 726ac000f86..7ad29cd9eeb 100644
--- a/mcs/build/executable.make
+++ b/mcs/build/executable.make
@@ -4,10 +4,7 @@
base_prog = $(shell basename $(PROGRAM))
sourcefile = $(base_prog).sources
-base_prog_config := $(wildcard $(base_prog).config.$(PROFILE))
-ifndef base_prog_config
base_prog_config := $(wildcard $(base_prog).config)
-endif
ifdef base_prog_config
PROGRAM_config := $(PROGRAM).config
endif
diff --git a/mcs/build/library.make b/mcs/build/library.make
index 30e8804cb4c..e195149c7f5 100644
--- a/mcs/build/library.make
+++ b/mcs/build/library.make
@@ -63,20 +63,33 @@ test_nunit_dep = $(test_nunit_lib:%=$(topdir)/class/lib/$(PROFILE)/%)
test_nunit_ref = $(test_nunit_dep:%=-r:%)
library_CLEAN_FILES += TestResult*.xml
+ifndef test_against
+test_against = $(the_lib)
+test_dep = $(the_lib)
+endif
+
+ifndef test_lib
test_lib = $(LIBRARY:.dll=_test_$(PROFILE).dll)
test_sourcefile = $(LIBRARY:.dll=_test.dll.sources)
+else
+test_sourcefile = $(test_lib).sources
+endif
test_pdb = $(test_lib:.dll=.pdb)
test_response = $(depsdir)/$(test_lib).response
test_makefrag = $(depsdir)/$(test_lib).makefrag
-test_flags = -r:$(the_lib) $(test_nunit_ref) $(TEST_MCS_FLAGS)
+test_flags = -r:$(test_against) $(test_nunit_ref) $(TEST_MCS_FLAGS)
library_CLEAN_FILES += $(LIBRARY:.dll=_test*.dll) $(LIBRARY:.dll=_test*.pdb) $(test_response) $(test_makefrag)
+ifndef btest_lib
btest_lib = $(LIBRARY:.dll=_btest_$(PROFILE).dll)
btest_sourcefile = $(LIBRARY:.dll=_btest.dll.sources)
+else
+btest_sourcefile = $(btest_lib).sources
+endif
btest_pdb = $(btest_lib:.dll=.pdb)
btest_response = $(depsdir)/$(btest_lib).response
btest_makefrag = $(depsdir)/$(btest_lib).makefrag
-btest_flags = -r:$(the_lib) $(test_nunit_ref) $(TEST_MBAS_FLAGS)
+btest_flags = -r:$(test_against) $(test_nunit_ref) $(TEST_MBAS_FLAGS)
library_CLEAN_FILES += $(LIBRARY:.dll=_btest*.dll) $(LIBRARY:.dll=_btest*.pdb) $(btest_response) $(btest_makefrag)
ifndef HAVE_CS_TESTS
@@ -306,7 +319,7 @@ endif
ifdef HAVE_CS_TESTS
-$(test_lib): $(the_lib) $(test_response) $(test_nunit_dep)
+$(test_lib): $(test_dep) $(test_response) $(test_nunit_dep)
$(TEST_COMPILE) -target:library -out:$@ $(test_flags) @$(test_response)
$(test_response): $(test_sourcefile)
@@ -323,7 +336,7 @@ endif
ifdef HAVE_VB_TESTS
-$(btest_lib): $(the_lib) $(btest_response) $(test_nunit_dep)
+$(btest_lib): $(test_dep) $(btest_response) $(test_nunit_dep)
$(BTEST_COMPILE) -target:library -out:$@ $(btest_flags) @$(btest_response)
$(btest_response): $(btest_sourcefile)
diff --git a/mcs/class/ChangeLog b/mcs/class/ChangeLog
index 6967e5a33fa..0aa92d0ecf6 100644
--- a/mcs/class/ChangeLog
+++ b/mcs/class/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-18 Chris Toshok <toshok@ximian.com>
-
- * Makefile (common_dirs): add System.Web again after
- System.Web.Services.
-
2006-01-05 Raja R Harinath <rharinath@novell.com>
* Makefile: Build FirebirdSql.Data.Firebird only in the "default"
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/ChangeLog b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/ChangeLog
index 8337c84ebaf..0151392b16a 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/ChangeLog
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/ChangeLog
@@ -1,43 +1,6 @@
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * RdpObjects.cs : fixed warnings.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * RdpPatterns.cs : RdpOneOrMore.EmptyTextDeriv() should be "override".
- RdpList.EmptyTextDeriv() (which was also virtual incorrectly) was
- removed since the code was in wrong assumption.
- * Util.cs : debug string now contains data and dataExcept info.
-
-2006-01-15 Atsushi Enomoto <atsushi@ximian.com>
-
- * RdpPatterns.cs : lazy evaluate Group branches. If left hand is
- notAllowed, the returned value is always NotAllowed, no need to
- compute another branch.
-
-2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
-
- * RdpObjects.cs, RdpPatterns.cs : introduced "IsContextDependent"
- optimization; when a pattern is (namespace) context independent
- (almost all cases except for QName validation), new TextDeriv()
- overload that takes MemoizationStore memoizes TextDeriv results.
-
-2006-01-12 Atsushi Enomoto <atsushi@ximian.com>
+2005-01-05 Atsushi Enomoto <atsushi@ximian.com>
* RdpPattern.cs :
- Introduced EmptyTextDeriv() so that the results could be memoized.
-
-2006-01-10 Atsushi Enomoto <atsushi@ximian.com>
-
- * RdpPatterns.cs :
- - Added StartAttDeriv(), EndAttDeriv() and IsTextValueDependent.
- (See corresponding changes in RelaxngValidatingReader.cs).
- - Added a bunch of derivative method overloads to receive
- MemoizationStore and memoize results efficiently.
-
-2006-01-05 Atsushi Enomoto <atsushi@ximian.com>
-
- * RdpPatterns.cs :
- Fixed RdpPattern.TextDeriv() and MixedTextDeriv() to not allow
whitespaces incorrectly.
- Fixed MixedTextDeriv() to not require string argument.
@@ -52,7 +15,7 @@
derivative algorithm (it incorrectly extended to return false
for RELAX NG predefined datatypes).
-2006-01-04 Atsushi Enomoto <atsushi@ximian.com>
+2005-01-04 Atsushi Enomoto <atsushi@ximian.com>
* RdpPattern.cs :
- Implemented textOnlyDeriv and mixedTextDeriv of "memoization".
@@ -65,12 +28,12 @@
- Avoid extra pattern creation with related to empty and notAllowed
as one hand of binary branches.
-2006-01-03 Atsushi Enomoto <atsushi@ximian.com>
+2005-01-03 Atsushi Enomoto <atsushi@ximian.com>
* RdpPattern.cs : reduced RdpFlip instantiation. Share patternPool
only when it does not exist.
-2006-01-03 Atsushi Enomoto <atsushi@ximian.com>
+2005-01-03 Atsushi Enomoto <atsushi@ximian.com>
* Util.cs, RdpPatterns.cs : optimization. Removed extraneous
delegate instantiation. Avoid using enum for HashTable keys.
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpObjects.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpObjects.cs
index 27727056a82..794b383c210 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpObjects.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpObjects.cs
@@ -69,7 +69,7 @@ namespace Commons.Xml.Relaxng.Derivative
public class RdpDatatype
{
- //RelaxngDatatypeProvider provider;
+ RelaxngDatatypeProvider provider;
string localName;
string ns;
RelaxngDatatype datatype;
@@ -78,7 +78,7 @@ namespace Commons.Xml.Relaxng.Derivative
{
this.ns = ns;
this.localName = localName;
- //this.provider = provider;
+ this.provider = provider;
if (provider == null)
provider = RelaxngMergedProvider.DefaultProvider;
datatype = provider.GetDatatype (localName, ns, parameters);
@@ -95,15 +95,13 @@ namespace Commons.Xml.Relaxng.Derivative
get { return localName; }
}
- public bool IsContextDependent {
- get { return datatype.IsContextDependent; }
- }
-
public virtual bool IsAllowed (string value, XmlReader reader)
{
return datatype.IsValid (value, reader);
}
+ static char [] wsChars = new char [] {' ', '\n', '\r', '\t'};
+
public virtual bool IsTypeEqual (string s1, string s2, XmlReader reader)
{
return datatype.CompareString (s1, s2, reader);
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpPatterns.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpPatterns.cs
index 8dc7befd760..afd3fbc8e8d 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpPatterns.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/RdpPatterns.cs
@@ -290,14 +290,6 @@ namespace Commons.Xml.Relaxng.Derivative
public abstract bool Nullable { get; }
- internal virtual bool IsTextValueDependent {
- get { return false; }
- }
-
- internal virtual bool IsContextDependent {
- get { return false; }
- }
-
// fills QName collection
public void GetLabels (LabelList elements, LabelList attributes)
{
@@ -330,36 +322,16 @@ namespace Commons.Xml.Relaxng.Derivative
return RdpNotAllowed.Instance;
}
- internal virtual RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
- {
- return TextDeriv (s, reader);
- }
-
- internal virtual RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- return TextDeriv (String.Empty, null, memo);
- }
-
internal virtual RdpPattern TextOnlyDeriv ()
{
return this;
}
- internal virtual RdpPattern TextOnlyDeriv (MemoizationStore store)
- {
- return this;
- }
-
internal virtual RdpPattern MixedTextDeriv ()
{
return RdpNotAllowed.Instance;
}
- internal virtual RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- return RdpNotAllowed.Instance;
- }
-
public RdpPattern ListDeriv (string [] list, int index, XmlReader reader)
{
return listDerivInternal (list, 0, reader);
@@ -435,11 +407,6 @@ namespace Commons.Xml.Relaxng.Derivative
return RdpNotAllowed.Instance;
}
- internal virtual RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- return StartTagOpenDeriv (name, ns);
- }
-
// attDeriv(ctx, this, att)
// attDeriv _ _ _ = NotAllowed
public virtual RdpPattern AttDeriv (string name, string ns, string value, XmlReader reader)
@@ -447,26 +414,6 @@ namespace Commons.Xml.Relaxng.Derivative
return RdpNotAllowed.Instance;
}
- public virtual RdpPattern StartAttDeriv (string name, string ns)
- {
- return RdpNotAllowed.Instance;
- }
-
- internal virtual RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- return StartAttDeriv (name, ns);
- }
-
- public virtual RdpPattern EndAttDeriv ()
- {
- return RdpNotAllowed.Instance;
- }
-
- internal virtual RdpPattern EndAttDeriv (MemoizationStore memo)
- {
- return EndAttDeriv ();
- }
-
public bool ValueMatch (string s, XmlReader reader)
{
return Nullable && Util.IsWhitespace (s) ||
@@ -478,11 +425,6 @@ namespace Commons.Xml.Relaxng.Derivative
return this;
}
- internal virtual RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- return StartTagCloseDeriv ();
- }
-
public RdpPattern OneOrMore ()
{
if (PatternType == RelaxngPatternType.NotAllowed)
@@ -495,11 +437,6 @@ namespace Commons.Xml.Relaxng.Derivative
{
return RdpNotAllowed.Instance;
}
-
- internal virtual RdpPattern EndTagDeriv (MemoizationStore memo)
- {
- return EndTagDeriv ();
- }
#endregion
}
@@ -516,14 +453,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return true; }
}
- internal override bool IsTextValueDependent {
- get { return false; }
- }
-
- internal override bool IsContextDependent {
- get { return false; }
- }
-
static RdpEmpty instance;
public static RdpEmpty Instance {
get { return instance; }
@@ -577,14 +506,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return false; }
- }
-
- internal override bool IsContextDependent {
- get { return false; }
- }
-
public override RdpPattern ApplyAfter (RdpApplyAfterHandler h)
{
return RdpNotAllowed.Instance;
@@ -637,14 +558,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return true; }
}
- internal override bool IsTextValueDependent {
- get { return false; }
- }
-
- internal override bool IsContextDependent {
- get { return false; }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Text; }
}
@@ -658,21 +571,11 @@ namespace Commons.Xml.Relaxng.Derivative
return this;
}
- internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- return this;
- }
-
internal override RdpPattern MixedTextDeriv ()
{
return this;
}
- internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- return this;
- }
-
internal override void MarkReachableDefs ()
{
// do nothing
@@ -809,32 +712,6 @@ namespace Commons.Xml.Relaxng.Derivative
}
}
- bool isTextValueDependentComputed;
- bool isTextValueDependent;
-
- internal override bool IsTextValueDependent {
- get {
- if (!isTextValueDependentComputed) {
- isTextValueDependent = LValue.IsTextValueDependent || RValue.IsTextValueDependent;
- isTextValueDependentComputed = true;
- }
- return isTextValueDependent;
- }
- }
-
- bool isContextDependentComputed;
- bool isContextDependent;
-
- internal override bool IsContextDependent {
- get {
- if (!isContextDependentComputed) {
- isContextDependent = LValue.IsContextDependent || RValue.IsContextDependent;
- isContextDependentComputed = true;
- }
- return isContextDependent;
- }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Choice; }
}
@@ -897,41 +774,18 @@ namespace Commons.Xml.Relaxng.Derivative
return LValue.TextDeriv (s, reader).Choice (RValue.TextDeriv (s, reader));
}
- internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
- {
- return memo.TextDeriv (LValue, s, reader).Choice (memo.TextDeriv (RValue, s, reader));
- }
-
- internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- return memo.EmptyTextDeriv (LValue)
- .Choice (memo.EmptyTextDeriv (RValue));
- }
-
internal override RdpPattern TextOnlyDeriv ()
{
return LValue.TextOnlyDeriv ().Choice (
RValue.TextOnlyDeriv ());
}
- internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
- {
- return memo.TextOnlyDeriv (LValue).Choice (
- memo.TextOnlyDeriv (RValue));
- }
-
internal override RdpPattern MixedTextDeriv ()
{
return LValue.MixedTextDeriv ().Choice (
RValue.MixedTextDeriv ());
}
- internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- return memo.MixedTextDeriv (LValue).Choice (
- memo.MixedTextDeriv (RValue));
- }
-
public override RdpPattern ApplyAfter (RdpApplyAfterHandler handler)
{
// return handler (LValue).Choice (handler (RValue));
@@ -950,12 +804,6 @@ namespace Commons.Xml.Relaxng.Derivative
#endif
}
- internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern lDeriv = memo.StartTagOpenDeriv (LValue, name, ns);
- return lDeriv.Choice (memo.StartTagOpenDeriv (RValue, name, ns));
- }
-
// attDeriv cx (Choice p1 p2) att =
// choice (attDeriv cx p1 att) (attDeriv cx p2 att)
public override RdpPattern AttDeriv (string name, string ns, string value, XmlReader reader)
@@ -964,28 +812,6 @@ namespace Commons.Xml.Relaxng.Derivative
.Choice (RValue.AttDeriv (name, ns, value, reader));
}
- public override RdpPattern StartAttDeriv (string name, string ns)
- {
- RdpPattern lDeriv = LValue.StartAttDeriv (name, ns);
- return lDeriv.Choice (RValue.StartAttDeriv (name, ns));
- }
-
- internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- return memo.StartAttDeriv (LValue, name, ns)
- .Choice (memo.StartAttDeriv (RValue, name, ns));
- }
-
- public override RdpPattern EndAttDeriv ()
- {
- return LValue.EndAttDeriv ().Choice (RValue.EndAttDeriv ());
- }
-
- internal override RdpPattern EndAttDeriv (MemoizationStore memo)
- {
- return memo.EndAttDeriv (LValue).Choice (memo.EndAttDeriv (RValue));
- }
-
// startTagCloseDeriv (Choice p1 p2) =
// choice (startTagCloseDeriv p1) (startTagCloseDeriv p2)
public override RdpPattern StartTagCloseDeriv ()
@@ -994,22 +820,11 @@ namespace Commons.Xml.Relaxng.Derivative
.Choice (RValue.StartTagCloseDeriv ());
}
- internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- return memo.StartTagCloseDeriv (LValue)
- .Choice (memo.StartTagCloseDeriv (RValue));
- }
-
public override RdpPattern EndTagDeriv ()
{
return LValue.EndTagDeriv ().Choice (RValue.EndTagDeriv ());
}
- internal override RdpPattern EndTagDeriv (MemoizationStore memo)
- {
- return memo.EndTagDeriv (LValue).Choice (memo.EndTagDeriv (RValue));
- }
-
internal override void CheckConstraints (bool attribute, bool oneOrMore, bool oneOrMoreGroup, bool oneOrMoreInterleave, bool list, bool dataExcept)
{
LValue.CheckConstraints (attribute, oneOrMore, oneOrMoreGroup, oneOrMoreInterleave, list, dataExcept);
@@ -1035,14 +850,6 @@ namespace Commons.Xml.Relaxng.Derivative
}
}
- internal override bool IsTextValueDependent {
- get { return LValue.IsTextValueDependent || RValue.IsTextValueDependent; }
- }
-
- internal override bool IsContextDependent {
- get { return LValue.IsContextDependent || RValue.IsContextDependent; }
- }
-
public override void GetLabels (LabelList elements, LabelList attributes, bool collectNameClass)
{
LValue.GetLabels (elements, attributes, collectNameClass);
@@ -1072,40 +879,16 @@ namespace Commons.Xml.Relaxng.Derivative
.Choice (LValue.Interleave (RValue.TextDeriv (s, reader)));
}
- internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
- {
- return memo.TextDeriv (LValue, s, reader).Interleave (RValue)
- .Choice (LValue.Interleave (memo.TextDeriv (RValue, s, reader)));
- }
-
- internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- return memo.EmptyTextDeriv (LValue).Interleave (RValue)
- .Choice (LValue.Interleave (memo.EmptyTextDeriv (RValue)));
- }
-
internal override RdpPattern TextOnlyDeriv ()
{
return LValue.TextOnlyDeriv ().Interleave (
RValue.TextOnlyDeriv ());
}
- internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
- {
- return memo.TextOnlyDeriv (LValue).Interleave (
- memo.TextOnlyDeriv (RValue));
- }
-
internal override RdpPattern MixedTextDeriv ()
{
- return LValue.MixedTextDeriv ().Interleave (RValue).Choice (
- LValue.Interleave (RValue.MixedTextDeriv ()));
- }
-
- internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- return memo.MixedTextDeriv (LValue).Interleave (RValue).Choice (
- LValue.Interleave (memo.MixedTextDeriv (RValue)));
+ return MakeInterleave (LValue.MixedTextDeriv (), RValue).Choice (
+ MakeInterleave (LValue, RValue.MixedTextDeriv ()));
}
// => choice (applyAfter (flip interleave p2) (startTagOpenDeriv p1 qn)) (applyAfter (interleave p1) (startTagOpenDeriv p2 qn)
@@ -1120,16 +903,6 @@ namespace Commons.Xml.Relaxng.Derivative
return choiceL.Choice (choiceR);
}
- internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern handledL = memo.StartTagOpenDeriv (LValue, name, ns);
- RdpPattern handledR = memo.StartTagOpenDeriv (RValue, name, ns);
- RdpFlip flipL = MakeFlip (RdpUtil.InterleaveFunction, RValue);
- RdpPattern choiceL = handledL.ApplyAfter (new RdpApplyAfterHandler (flipL.Apply));
- RdpPattern choiceR = handledR.ApplyAfter (new RdpApplyAfterHandler (LValue.Interleave));
- return choiceL.Choice (choiceR);
- }
-
// attDeriv cx (Interleave p1 p2) att =
// choice (interleave (attDeriv cx p1 att) p2)
// (interleave p1 (attDeriv cx p2 att))
@@ -1141,26 +914,6 @@ namespace Commons.Xml.Relaxng.Derivative
RValue.AttDeriv (name, ns, value, reader)));
}
- public override RdpPattern StartAttDeriv (string name, string ns)
- {
- RdpPattern handledL = LValue.StartAttDeriv (name, ns);
- RdpPattern handledR = RValue.StartAttDeriv (name, ns);
- RdpFlip flipL = MakeFlip (RdpUtil.InterleaveFunction, RValue);
- RdpPattern choiceL = handledL.ApplyAfter (new RdpApplyAfterHandler (flipL.Apply));
- RdpPattern choiceR = handledR.ApplyAfter (new RdpApplyAfterHandler (LValue.Interleave));
- return choiceL.Choice (choiceR);
- }
-
- internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern handledL = memo.StartAttDeriv (LValue, name, ns);
- RdpPattern handledR = memo.StartAttDeriv (RValue, name, ns);
- RdpFlip flipL = MakeFlip (RdpUtil.InterleaveFunction, RValue);
- RdpPattern choiceL = handledL.ApplyAfter (new RdpApplyAfterHandler (flipL.Apply));
- RdpPattern choiceR = handledR.ApplyAfter (new RdpApplyAfterHandler (LValue.Interleave));
- return choiceL.Choice (choiceR);
- }
-
// startTagCloseDeriv (Interleave p1 p2) =
// interleave (startTagCloseDeriv p1) (startTagCloseDeriv p2)
public override RdpPattern StartTagCloseDeriv ()
@@ -1169,12 +922,6 @@ namespace Commons.Xml.Relaxng.Derivative
.Interleave (RValue.StartTagCloseDeriv ());
}
- internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- return memo.StartTagCloseDeriv (LValue)
- .Interleave (memo.StartTagCloseDeriv (RValue));
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Interleave; }
}
@@ -1217,14 +964,6 @@ namespace Commons.Xml.Relaxng.Derivative
}
}
- internal override bool IsTextValueDependent {
- get { return LValue.IsTextValueDependent || (LValue.Nullable ? RValue.IsTextValueDependent : false); }
- }
-
- internal override bool IsContextDependent {
- get { return LValue.IsContextDependent || (LValue.Nullable ? RValue.IsContextDependent : false); }
- }
-
public override void GetLabels (LabelList elements, LabelList attributes, bool collectNameClass)
{
LValue.GetLabels (elements, attributes, collectNameClass);
@@ -1236,43 +975,15 @@ namespace Commons.Xml.Relaxng.Derivative
public override RdpPattern TextDeriv (string s, XmlReader reader)
{
- RdpPattern p = LValue.TextDeriv (s, reader);
- p = (p.PatternType == RelaxngPatternType.NotAllowed) ?
- p : p.Group (RValue);
+ RdpPattern p = LValue.TextDeriv (s, reader).Group (RValue);
return LValue.Nullable ?
p.Choice (RValue.TextDeriv (s, reader)) : p;
}
- internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
- {
- RdpPattern p = memo.TextDeriv (LValue, s, reader);
- p = (p.PatternType == RelaxngPatternType.NotAllowed) ?
- p : p.Group (RValue);
- return LValue.Nullable ?
- p.Choice (memo.TextDeriv (RValue, s, reader)) : p;
- }
-
- internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- RdpPattern p = memo.EmptyTextDeriv (LValue);
- p = p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (RValue);
- return LValue.Nullable ?
- p.Choice (memo.EmptyTextDeriv (RValue)) : p;
- }
-
internal override RdpPattern TextOnlyDeriv ()
{
- RdpPattern p = LValue.TextOnlyDeriv ();
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (RValue.TextOnlyDeriv ());
- }
-
- internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
- {
- RdpPattern p = memo.TextOnlyDeriv (LValue);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (memo.TextOnlyDeriv (RValue));
+ return LValue.TextOnlyDeriv ().Group (
+ RValue.TextOnlyDeriv ());
}
internal override RdpPattern MixedTextDeriv ()
@@ -1282,13 +993,6 @@ namespace Commons.Xml.Relaxng.Derivative
p.Choice (RValue.MixedTextDeriv ()) : p;
}
- internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- RdpPattern p = memo.MixedTextDeriv (LValue).Group (RValue);
- return LValue.Nullable ?
- p.Choice (memo.MixedTextDeriv (RValue)) : p;
- }
-
// startTagOpenDeriv (Group p1 p2) qn =
// let x = applyAfter (flip group p2) (startTagOpenDeriv p1 qn)
// in if nullable p1 then
@@ -1306,17 +1010,6 @@ namespace Commons.Xml.Relaxng.Derivative
return x;
}
- internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern handled = memo.StartTagOpenDeriv (LValue, name, ns);
- RdpFlip f = MakeFlip (RdpUtil.GroupFunction, RValue);
- RdpPattern x = handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
- if (LValue.Nullable)
- return x.Choice (memo.StartTagOpenDeriv (RValue, name, ns));
- else
- return x;
- }
-
// attDeriv cx (Group p1 p2) att =
// choice (group (attDeriv cx p1 att) p2)
// (group p1 (attDeriv cx p2 att))
@@ -1327,41 +1020,12 @@ namespace Commons.Xml.Relaxng.Derivative
RValue.AttDeriv (name, ns, value, reader)));
}
- // startAttDeriv (group p1 p2) == startAttDeriv (interleave p1 p2)
- public override RdpPattern StartAttDeriv (string name, string ns)
- {
- RdpPattern handledL = LValue.StartAttDeriv (name, ns);
- RdpPattern handledR = RValue.StartAttDeriv (name, ns);
- RdpFlip flipL = MakeFlip (RdpUtil.GroupFunction, RValue);
- RdpPattern choiceL = handledL.ApplyAfter (new RdpApplyAfterHandler (flipL.Apply));
- RdpPattern choiceR = handledR.ApplyAfter (new RdpApplyAfterHandler (LValue.Group));
- return choiceL.Choice (choiceR);
- }
-
- internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern handledL = memo.StartAttDeriv (LValue, name, ns);
- RdpPattern handledR = memo.StartAttDeriv (RValue, name, ns);
- RdpFlip flipL = MakeFlip (RdpUtil.GroupFunction, RValue);
- RdpPattern choiceL = handledL.ApplyAfter (new RdpApplyAfterHandler (flipL.Apply));
- RdpPattern choiceR = handledR.ApplyAfter (new RdpApplyAfterHandler (LValue.Group));
- return choiceL.Choice (choiceR);
- }
-
// startTagCloseDeriv (Group p1 p2) =
// group (startTagCloseDeriv p1) (startTagCloseDeriv p2)
public override RdpPattern StartTagCloseDeriv ()
{
- RdpPattern p = LValue.StartTagCloseDeriv ();
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (RValue.StartTagCloseDeriv ());
- }
-
- internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- RdpPattern p = memo.StartTagCloseDeriv (LValue);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (memo.StartTagCloseDeriv (RValue));
+ return LValue.StartTagCloseDeriv ()
+ .Group (RValue.StartTagCloseDeriv ());
}
public override RelaxngPatternType PatternType {
@@ -1437,14 +1101,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return Child.Nullable; }
}
- internal override bool IsTextValueDependent {
- get { return Child.IsTextValueDependent; }
- }
-
- internal override bool IsContextDependent {
- get { return Child.IsContextDependent; }
- }
-
public override void GetLabels (LabelList elements, LabelList attributes, bool collectNameClass)
{
Child.GetLabels (elements, attributes, collectNameClass);
@@ -1469,23 +1125,7 @@ namespace Commons.Xml.Relaxng.Derivative
public override RdpPattern TextDeriv (string s, XmlReader reader)
{
- RdpPattern p = Child.TextDeriv (s, reader);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (this.Choice (RdpEmpty.Instance));
- }
-
- internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
- {
- RdpPattern p = memo.TextDeriv (Child, s, reader);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (this.Choice (RdpEmpty.Instance));
- }
-
- internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- RdpPattern p = memo.EmptyTextDeriv (Child);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (this.Choice (RdpEmpty.Instance));
+ return Child.TextDeriv (s, reader).Group (this.Choice (RdpEmpty.Instance));
}
internal override RdpPattern TextOnlyDeriv ()
@@ -1493,32 +1133,24 @@ namespace Commons.Xml.Relaxng.Derivative
return Child.TextOnlyDeriv ().OneOrMore ();
}
- internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
- {
- return memo.TextOnlyDeriv (Child).OneOrMore ();
- }
-
internal override RdpPattern MixedTextDeriv ()
{
- RdpPattern p = Child.MixedTextDeriv ();
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (this.Choice (RdpEmpty.Instance));
- }
-
- internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- RdpPattern p = memo.MixedTextDeriv (Child);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (this.Choice (RdpEmpty.Instance));
+ return Child.MixedTextDeriv ().Group (
+ this.Choice (RdpEmpty.Instance));
}
// attDeriv cx (OneOrMore p) att =
// group (attDeriv cx p att) (choice (OneOrMore p) Empty)
public override RdpPattern AttDeriv (string name, string ns, string value, XmlReader reader)
{
- RdpPattern p = Child.AttDeriv (name, ns, value, reader);
- return p.PatternType == RelaxngPatternType.NotAllowed ?
- p : p.Group (Choice (RdpEmpty.Instance));
+#if UseStatic
+ return RdpUtil.Group (
+ RdpUtil.AttDeriv (ctx, children, att),
+ RdpUtil.Choice (RdpUtil.OneOrMore (children), RdpEmpty.Instance));
+#else
+ return Child.AttDeriv (name, ns, value, reader)
+ .Group (Choice (RdpEmpty.Instance));
+#endif
}
// startTagOpenDeriv (OneOrMore p) qn =
@@ -1532,30 +1164,6 @@ namespace Commons.Xml.Relaxng.Derivative
return handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
}
- internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern rest = RdpEmpty.Instance.Choice (Child.OneOrMore ());
- RdpPattern handled = memo.StartTagOpenDeriv (Child, name, ns);
- RdpFlip f = MakeFlip (RdpUtil.GroupFunction, rest);
- return handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
- }
-
- public override RdpPattern StartAttDeriv (string name, string ns)
- {
- RdpPattern rest = RdpEmpty.Instance.Choice (Child.OneOrMore ());
- RdpPattern handled = Child.StartAttDeriv (name, ns);
- RdpFlip f = MakeFlip (RdpUtil.GroupFunction, rest);
- return handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
- }
-
- internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern rest = RdpEmpty.Instance.Choice (Child.OneOrMore ());
- RdpPattern handled = memo.StartAttDeriv (Child, name, ns);
- RdpFlip f = MakeFlip (RdpUtil.GroupFunction, rest);
- return handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
- }
-
// startTagCloseDeriv (OneOrMore p) =
// oneOrMore (startTagCloseDeriv p)
public override RdpPattern StartTagCloseDeriv ()
@@ -1568,11 +1176,6 @@ namespace Commons.Xml.Relaxng.Derivative
#endif
}
- internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- return memo.StartTagCloseDeriv (Child).OneOrMore ();
- }
-
internal override void CheckConstraints (bool attribute, bool oneOrMore, bool oneOrMoreGroup, bool oneOrMoreInterleave, bool list, bool dataExcept)
{
if (dataExcept)
@@ -1607,14 +1210,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return true; }
- }
-
- internal override bool IsContextDependent {
- get { return Child.IsContextDependent; }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.List; }
}
@@ -1666,14 +1261,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return true; }
- }
-
- internal override bool IsContextDependent {
- get { return dt.IsContextDependent; }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Data; }
}
@@ -1794,14 +1381,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return true; }
- }
-
- internal override bool IsContextDependent {
- get { return dt.IsContextDependent; }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Value; }
}
@@ -1815,20 +1394,8 @@ namespace Commons.Xml.Relaxng.Derivative
// do nothing
}
- string cachedValue;
- RdpPattern cachedPattern;
-
public override RdpPattern TextDeriv (string s, XmlReader reader)
{
- if (s == cachedValue && !IsContextDependent)
- return cachedPattern;
- cachedPattern = TextDerivCore (s, reader);
- cachedValue = s;
- return cachedPattern;
- }
-
- RdpPattern TextDerivCore (string s, XmlReader reader)
- {
if (dt.IsTypeEqual (value, s, reader))
return RdpEmpty.Instance;
else
@@ -1875,14 +1442,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return false; }
- }
-
- internal override bool IsContextDependent {
- get { return false; }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Attribute; }
}
@@ -1946,29 +1505,12 @@ namespace Commons.Xml.Relaxng.Derivative
#endif
}
- public override RdpPattern StartAttDeriv (string name, string ns)
- {
- return nameClass.Contains (name, ns) ?
- children.After (RdpEmpty.Instance) : RdpNotAllowed.Instance;
- }
-
- internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- return nameClass.Contains (name, ns) ?
- children.After (RdpEmpty.Instance) : RdpNotAllowed.Instance;
- }
-
// startTagCloseDeriv (Attribute _ _) = NotAllowed
public override RdpPattern StartTagCloseDeriv ()
{
return RdpNotAllowed.Instance;
}
- internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- return RdpNotAllowed.Instance;
- }
-
internal override void MarkReachableDefs ()
{
children.MarkReachableDefs ();
@@ -2019,14 +1561,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return false; }
- }
-
- internal override bool IsContextDependent {
- get { return false; }
- }
-
public override RelaxngPatternType PatternType {
get { return RelaxngPatternType.Element; }
}
@@ -2084,11 +1618,6 @@ namespace Commons.Xml.Relaxng.Derivative
return RdpNotAllowed.Instance;
}
- internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
- {
- return RdpNotAllowed.Instance;
- }
-
public override RdpPattern StartTagOpenDeriv (string name, string ns)
{
#if UseStatic
@@ -2103,13 +1632,6 @@ namespace Commons.Xml.Relaxng.Derivative
#endif
}
- internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- return nameClass.Contains (name, ns) ?
- children.After (RdpEmpty.Instance) :
- RdpNotAllowed.Instance;
- }
-
internal override void MarkReachableDefs ()
{
children.MarkReachableDefs ();
@@ -2143,14 +1665,6 @@ namespace Commons.Xml.Relaxng.Derivative
get { return false; }
}
- internal override bool IsTextValueDependent {
- get { return LValue.IsTextValueDependent; }
- }
-
- internal override bool IsContextDependent {
- get { return LValue.IsContextDependent; }
- }
-
public override void GetLabels (LabelList elements, LabelList attributes, bool collectNameClass)
{
LValue.GetLabels (elements, attributes, collectNameClass);
@@ -2161,36 +1675,16 @@ namespace Commons.Xml.Relaxng.Derivative
return LValue.TextDeriv (s, reader).After (RValue);
}
- internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
- {
- return memo.TextDeriv (LValue, s, reader).After (RValue);
- }
-
- internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
- {
- return memo.EmptyTextDeriv (LValue).After (RValue);
- }
-
internal override RdpPattern TextOnlyDeriv ()
{
return LValue.TextOnlyDeriv ().After (RValue);
}
- internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
- {
- return memo.TextOnlyDeriv (LValue).After (RValue);
- }
-
internal override RdpPattern MixedTextDeriv ()
{
return LValue.MixedTextDeriv ().After (RValue);
}
- internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
- {
- return memo.MixedTextDeriv (LValue).After (RValue);
- }
-
// startTagOpenDeriv (After p1 p2) qn =
// applyAfter (flip after p2) (startTagOpenDeriv p1 qn)
public override RdpPattern StartTagOpenDeriv (string name, string ns)
@@ -2201,14 +1695,6 @@ namespace Commons.Xml.Relaxng.Derivative
f.Apply));
}
- internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern handled = memo.StartTagOpenDeriv (LValue, name, ns);
- RdpFlip f = MakeFlip (RdpUtil.AfterFunction, RValue);
- return handled.ApplyAfter (new RdpApplyAfterHandler (
- f.Apply));
- }
-
public override RdpPattern ApplyAfter (RdpApplyAfterHandler handler)
{
return LValue.After (handler (RValue));
@@ -2221,37 +1707,11 @@ namespace Commons.Xml.Relaxng.Derivative
return LValue.AttDeriv (name, ns, value, reader).After (RValue);
}
- public override RdpPattern StartAttDeriv (string name, string ns)
- {
- RdpPattern handled = LValue.StartAttDeriv (name, ns);
- RdpFlip f = MakeFlip (RdpUtil.AfterFunction, RValue);
- return handled.ApplyAfter (new RdpApplyAfterHandler (
- f.Apply));
- }
-
- internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
- {
- RdpPattern handled = memo.StartAttDeriv (LValue, name, ns);
- RdpFlip f = MakeFlip (RdpUtil.AfterFunction, RValue);
- return handled.ApplyAfter (new RdpApplyAfterHandler (
- f.Apply));
- }
-
- public override RdpPattern EndAttDeriv ()
- {
- return LValue.Nullable ? RValue : RdpNotAllowed.Instance;
- }
-
public override RdpPattern StartTagCloseDeriv ()
{
return LValue.StartTagCloseDeriv ().After (RValue);
}
- internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
- {
- return memo.StartTagCloseDeriv (LValue).After (RValue);
- }
-
public override RdpPattern EndTagDeriv ()
{
return LValue.Nullable ? RValue : RdpNotAllowed.Instance;
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/Util.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/Util.cs
index b1274648aab..c8b878d190a 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/Util.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng.Derivative/Util.cs
@@ -91,22 +91,6 @@ namespace Commons.Xml.Relaxng.Derivative
intl = DebugRdpPattern (b.LValue, visitedPattern) +
DebugRdpPattern (b.RValue, visitedPattern);
- RdpData data = p as RdpData;
- if (data != null)
- intl = String.Format ("name={0},ns={1},type={2} {3}",
- data.Datatype.LocalName,
- data.Datatype.NamespaceURI,
- data.Datatype.GetType (),
- data is RdpDataExcept ? DebugRdpPattern (((RdpDataExcept) data).Except, visitedPattern) : String.Empty);
-
- RdpValue value = p as RdpValue;
- if (value != null)
- intl = String.Format ("name={0},ns={1},value={2} type={3}",
- value.Datatype.LocalName,
- value.Datatype.NamespaceURI,
- value.Value,
- value.Datatype.GetType ());
-
RdpElement el = p as RdpElement;
if (el != null)
intl = DebugNameClass (el.NameClass) +
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/ChangeLog b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/ChangeLog
index 74997df03f8..16632d4a8ca 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/ChangeLog
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/ChangeLog
@@ -1,54 +1,3 @@
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * RelaxngValidatingReader.cs : fixed warning.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * RelaxngValidatingReader.cs : just keep previous TextDeriv() result
- for each pattern; they are mostly not reused. It makes validator
- about 30% faster in certain validation and reduces memory use.
-
-2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
-
- * RelaxngValidatingReader.cs : actually using Hashtable of Hashtable
- (instead of ArrayList of custom MemoizationStart class) is much
- better for performance. It makes StartTagOpenDeriv and
- StartAttDeriv more than 10x faster than before.
-
-2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
-
- * RelaxngDatatype.cs, RelaxngDefaultDatatypes.cs,
- XsdDatatypeProvider.cs, RelaxngValidatingReader.cs :
- Memoize TextDeriv() results for context independent inputs.
-
- Due to the API freeze they are kept as internal virtual for now.
-
-2006-01-12 Atsushi Enomoto <atsushi@ximian.com>
-
- * RelaxngValidatingReader.cs : Use RdpPattern.EmptyTextDeriv(). It
- significantly improves performance wrt empty text nodes.
-
-2006-01-10 Atsushi Enomoto <atsushi@ximian.com>
-
- * RelaxngValidatingReader.cs :
- - Split memoization support things into MemoizationStore class.
- - Split single memo ArrayList into a couple of Hashtables and
- ArrayLists which memoize each kind of derivative results.
- - Introduced StartAttDeriv() and EndAttDeriv() to replace AttDeriv()
- and memoize results efficiently. It is textually written in the
- "derivative algorithm", but not formally specified.
- - Introduced IsTextValueDependent and EmptyTextDeriv() to
- differentiate those patterns which results differ depending on
- the text value and those which doesn't.
- Those EmptyTextDeriv results are memoized.
-
-2006-01-10 Atsushi Enomoto <atsushi@ximian.com>
-
- * Misc.cs : NormalizeWhitespace() was creating extraneous char[] and
- it could be heavily called depending on patterns.
- * RelaxngDefaultDatatypes.cs : avoid extraneous call to
- NormalizeWhitespace().
-
2006-01-05 Atsushi Enomoto <atsushi@ximian.com>
* RelaxngValidatingReader.cs :
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/Misc.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/Misc.cs
index bc51d78bf96..f8e16f71b18 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/Misc.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/Misc.cs
@@ -33,7 +33,6 @@
using System;
using System.Collections;
using System.IO;
-using System.Text;
using System.Xml;
using Commons.Xml.Relaxng.Derivative;
@@ -46,42 +45,28 @@ namespace Commons.Xml.Relaxng
if (s.Length == 0)
return s;
- StringBuilder sb = null;
- int noSpaceIndex = 0;
- bool inSpace = false;
-
- for (int i = 0; i < s.Length; i++) {
- switch (s [i]) {
+ char [] ca = s.ToCharArray ();
+ int j = 0;
+ for (int i = 0; i < ca.Length; i++) {
+ switch (ca [i]) {
case ' ':
case '\r':
case '\t':
case '\n':
- if (inSpace)
- continue;
- if (sb == null)
- sb = new StringBuilder (s.Length);
- if (noSpaceIndex < i) {
- if (sb.Length > 0)
- sb.Append (' ');
- sb.Append (s, noSpaceIndex, i - noSpaceIndex);
- }
- inSpace = true;
+ if (j == 0)
+ break;
+ if (ca [j - 1] != ' ')
+ ca [j++] = ' ';
break;
default:
- if (inSpace) {
- noSpaceIndex = i;
- inSpace = false;
- }
+ ca [j++] = ca [i];
break;
}
}
- if (sb == null)
- return s;
- if (!inSpace && noSpaceIndex < s.Length) {
- sb.Append (' ');
- sb.Append (s, noSpaceIndex, s.Length - noSpaceIndex);
- }
- return sb.ToString ();
+ if (j == 0)
+ return String.Empty;
+ string r = new string (ca, 0, (ca [j - 1] != ' ') ? j : j - 1);
+ return r;
}
public static bool IsWhitespace (string s)
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDatatype.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDatatype.cs
index 5f57702eab6..b59a8635456 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDatatype.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDatatype.cs
@@ -38,11 +38,6 @@ namespace Commons.Xml.Relaxng
public abstract string Name { get; }
public abstract string NamespaceURI { get; }
- internal virtual bool IsContextDependent {
- // safe default value
- get { return true; }
- }
-
public abstract object Parse (string text, XmlReader reader);
public virtual bool Compare (object o1, object o2)
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDefaultDatatypes.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDefaultDatatypes.cs
index 4d31c481235..04adc51ee4b 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDefaultDatatypes.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngDefaultDatatypes.cs
@@ -48,10 +48,6 @@ namespace Commons.Xml.Relaxng
public override string Name { get { return "string"; } }
public override string NamespaceURI { get { return String.Empty; } }
- internal override bool IsContextDependent {
- get { return false; }
- }
-
public override bool IsValid (string text, XmlReader reader)
{
return true;
@@ -83,10 +79,6 @@ namespace Commons.Xml.Relaxng
public override string Name { get { return "token"; } }
public override string NamespaceURI { get { return String.Empty; } }
- internal override bool IsContextDependent {
- get { return false; }
- }
-
public override bool IsValid (string text, XmlReader reader)
{
return true;
@@ -97,55 +89,10 @@ namespace Commons.Xml.Relaxng
return Util.NormalizeWhitespace (text);
}
- int SkipWhitespaces (string s, int i)
- {
- while (i < s.Length) {
- switch (s [i]) {
- case '\n': case '\r': case ' ': case '\t':
- i++;
- continue;
- }
- break;
- }
- return i;
- }
-
public override bool Compare (object o1, object o2)
{
- string s1 = o1 as string;
- string s2 = o2 as string;
-
- int i1 = 0;
- int i2 = 0;
-
- while (i1 < s1.Length && i2 < s2.Length) {
- i1 = SkipWhitespaces (s1, i1);
- i2 = SkipWhitespaces (s2, i2);
- while (i1 < s1.Length && i2 < s2.Length) {
- if (s1 [i1] != s2 [i2])
- return false;
- i1++;
- i2++;
- if (i1 == s1.Length || i2 == s2.Length)
- break;
- if (XmlChar.IsWhitespace (s1 [i1])) {
- if (!XmlChar.IsWhitespace (s2 [i2]))
- return false;
- else
- break;
- }
- else if (XmlChar.IsWhitespace (s2 [i2]))
- return false;
- }
- }
- i1 = SkipWhitespaces (s1, i1);
- i2 = SkipWhitespaces (s2, i2);
- return i1 == s1.Length && i2 == s2.Length;
- }
-
- public override bool CompareString (string s1, string s2, XmlReader reader)
- {
- return Compare (s1, s2);
+ return Util.NormalizeWhitespace ((string) o1) ==
+ Util.NormalizeWhitespace ((string) o2);
}
}
}
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngValidatingReader.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngValidatingReader.cs
index 74a74febcb9..56a23466e17 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngValidatingReader.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngValidatingReader.cs
@@ -68,8 +68,11 @@ namespace Commons.Xml.Relaxng
RelaxngPattern pattern;
RdpPattern vState;
RdpPattern prevState; // Mainly for debugging.
+ ArrayList PredefinedAttributes = new ArrayList ();
+ bool labelsComputed;
Hashtable elementLabels = new Hashtable ();
Hashtable attributeLabels = new Hashtable ();
+ bool isEmptiable;
bool roughLabelCheck;
ArrayList strictCheckCache;
bool reportDetails;
@@ -365,6 +368,7 @@ namespace Commons.Xml.Relaxng
{
PrepareState ();
+ labelsComputed = false;
elementLabels.Clear ();
attributeLabels.Clear ();
@@ -383,7 +387,7 @@ namespace Commons.Xml.Relaxng
inContent = true;
// StartTagOpenDeriv
prevState = vState;
- vState = memo.StartTagOpenDeriv (vState,
+ vState = StartTagOpenDeriv (vState,
reader.LocalName, reader.NamespaceURI);
if (vState.PatternType == RelaxngPatternType.NotAllowed)
throw CreateValidationError (String.Format ("Invalid start tag found. LocalName = {0}, NS = {1}.", reader.LocalName, reader.NamespaceURI), true);
@@ -397,36 +401,16 @@ namespace Commons.Xml.Relaxng
prevState = vState;
string attrNS = reader.NamespaceURI;
-
-#if false // old code
-
vState = vState.AttDeriv (reader.LocalName, attrNS, reader.GetAttribute (reader.LocalName, attrNS), this);
- if (vState == RdpNotAllowed.Instance)
- throw CreateValidationError (String.Format ("Invalid attribute found. LocalName = {0}, NS = {1}.", reader.LocalName, reader.NamespaceURI), false);
-
-#else
-
- prevState = vState;
- vState = memo.StartAttDeriv (vState, reader.LocalName, attrNS);
- if (vState == RdpNotAllowed.Instance)
+ if (vState.PatternType == RelaxngPatternType.NotAllowed)
throw CreateValidationError (String.Format ("Invalid attribute found. LocalName = {0}, NS = {1}.", reader.LocalName, reader.NamespaceURI), false);
- prevState = vState;
- vState = memo.TextOnlyDeriv (vState);
- vState = TextDeriv (vState, reader.Value, reader);
- if (Util.IsWhitespace (reader.Value))
- vState = vState.Choice (prevState);
- vState = memo.EndAttDeriv (vState);
- if (vState == RdpNotAllowed.Instance)
- throw CreateValidationError (String.Format ("Invalid attribute value is found. Value = '{0}'", reader.Value), false);
-
-#endif
} while (reader.MoveToNextAttribute ());
MoveToElement ();
}
// StarTagCloseDeriv
prevState = vState;
- vState = memo.StartTagCloseDeriv (vState);
+ vState = StartTagCloseDeriv (vState);
if (vState.PatternType == RelaxngPatternType.NotAllowed)
throw CreateValidationError (String.Format ("Invalid start tag closing found. LocalName = {0}, NS = {1}.", reader.LocalName, reader.NamespaceURI), false);
@@ -441,7 +425,7 @@ namespace Commons.Xml.Relaxng
inContent = false;
// EndTagDeriv
prevState = vState;
- vState = memo.EndTagDeriv (vState);
+ vState = EndTagDeriv (vState);
if (vState.PatternType == RelaxngPatternType.NotAllowed)
throw CreateValidationError (String.Format ("Invalid end tag found. LocalName = {0}, NS = {1}.", reader.LocalName, reader.NamespaceURI), true);
break;
@@ -466,14 +450,6 @@ namespace Commons.Xml.Relaxng
return ret;
}
- RdpPattern TextDeriv (RdpPattern p, string value, XmlReader context)
- {
- if (value.Length > 0 && p.IsTextValueDependent)
- return memo.TextDeriv (p, value, context);
- else
- return memo.EmptyTextDeriv (p);
- }
-
void ValidateText (bool remain)
{
RdpPattern ts = vState;
@@ -486,8 +462,8 @@ namespace Commons.Xml.Relaxng
case XmlNodeType.Element:
startElementDepth = -1;
if (!Util.IsWhitespace (cachedValue)) {
- ts = memo.MixedTextDeriv (ts);
- ts = TextDeriv (ts, cachedValue, reader);
+ ts = MixedTextDeriv (ts);
+ ts = ts.TextDeriv (cachedValue, reader);
}
break;
default:
@@ -523,167 +499,125 @@ namespace Commons.Xml.Relaxng
RdpPattern ValidateTextOnlyCore ()
{
- RdpPattern ts = memo.TextOnlyDeriv (vState);
- ts = TextDeriv (ts, cachedValue, reader);
+ RdpPattern ts = TextOnlyDeriv (vState);
+ ts = ts.TextDeriv (cachedValue, reader);
if (Util.IsWhitespace (cachedValue))
- ts = vState.Choice (ts);
+ ts = vState.MakeChoice (ts, vState);
return ts;
}
- MemoizationStore memo = new MemoizationStore ();
- }
+ #region Memoization support
- #region Memoization support
- internal class MemoizationStore
- {
- Hashtable startOpen = new Hashtable ();
- Hashtable startClose = new Hashtable ();
- Hashtable startAtt = new Hashtable ();
- Hashtable endTag = new Hashtable ();
- Hashtable endAtt = new Hashtable ();
- Hashtable textOnly = new Hashtable ();
- Hashtable mixedText = new Hashtable ();
- Hashtable emptyText = new Hashtable ();
- Hashtable text = new Hashtable ();
- Hashtable text_value = new Hashtable ();
- Hashtable qnames = new Hashtable ();
+ ArrayList memo = new ArrayList ();
enum DerivativeType {
StartTagOpen,
- StartAtt,
StartTagClose,
EndTag,
- EndAtt,
Mixed,
TextOnly
}
- XmlQualifiedName GetQName (string local, string ns)
+ class Memoization
{
- Hashtable nst = qnames [ns] as Hashtable;
- if (nst == null) {
- nst = new Hashtable ();
- qnames [ns] = nst;
- }
- XmlQualifiedName qn = nst [local] as XmlQualifiedName;
- if (qn == null) {
- qn = new XmlQualifiedName (local, ns);
- nst [local] = qn;
+ public Memoization (DerivativeType type, RdpPattern input, RdpPattern output)
+ {
+ Type = type;
+ Input = input;
+ Output = output;
}
- return qn;
- }
- public RdpPattern StartTagOpenDeriv (RdpPattern p, string local, string ns)
- {
- Hashtable h = startOpen [p] as Hashtable;
- if (h == null) {
- h = new Hashtable ();
- startOpen [p] = h;
- }
- XmlQualifiedName qn = GetQName (local, ns);
- RdpPattern m = h [qn] as RdpPattern;
- if (m == null) {
- m = p.StartTagOpenDeriv (local, ns, this);
- h [qn] = m;
- }
- return m;
+ public readonly DerivativeType Type;
+ public readonly RdpPattern Input;
+ public readonly RdpPattern Output;
}
- public RdpPattern StartAttDeriv (RdpPattern p, string local, string ns)
+ class MemoizationStartTagOpen : Memoization
{
- Hashtable h = startAtt [p] as Hashtable;
- if (h == null) {
- h = new Hashtable ();
- startAtt [p] = h;
- }
- XmlQualifiedName qn = GetQName (local, ns);
- RdpPattern m = h [qn] as RdpPattern;
- if (m == null) {
- m = p.StartAttDeriv (local, ns, this);
- h [qn] = m;
+ public MemoizationStartTagOpen (string name, string ns, RdpPattern input, RdpPattern output)
+ : base (DerivativeType.StartTagOpen, input, output)
+ {
+ Name = name;
+ NS = ns;
}
- return m;
- }
- public RdpPattern StartTagCloseDeriv (RdpPattern p)
- {
- RdpPattern m = startClose [p] as RdpPattern;
- if (m != null)
- return m;
-
- m = p.StartTagCloseDeriv (this);
- startClose [p] = m;
- return m;
+ public readonly string Name;
+ public readonly string NS;
}
- public RdpPattern EndTagDeriv (RdpPattern p)
+ RdpPattern StartTagOpenDeriv (RdpPattern p, string local, string ns)
{
- RdpPattern m = endTag [p] as RdpPattern;
- if (m != null)
- return m;
+ for (int i = 0; i < memo.Count; i++) {
+ Memoization tag = (Memoization) memo [i];
+ if (tag.Type != DerivativeType.StartTagOpen)
+ continue;
+ MemoizationStartTagOpen sto =
+ tag as MemoizationStartTagOpen;
+ if (sto.Input == p &&
+ object.ReferenceEquals (sto.Name, local) &&
+ object.ReferenceEquals (sto.NS, ns))
+ return tag.Output;
+ }
- m = p.EndTagDeriv (this);
- endTag [p] = m;
+ RdpPattern m = p.StartTagOpenDeriv (local, ns);
+ memo.Add (new MemoizationStartTagOpen (local, ns, p, m));
return m;
}
- public RdpPattern EndAttDeriv (RdpPattern p)
+ RdpPattern StartTagCloseDeriv (RdpPattern p)
{
- RdpPattern m = endAtt [p] as RdpPattern;
- if (m != null)
- return m;
+ for (int i = 0; i < memo.Count; i++) {
+ Memoization tag = (Memoization) memo [i];
+ if (tag.Type == DerivativeType.StartTagClose && tag.Input == p)
+ return tag.Output;
+ }
- m = p.EndAttDeriv (this);
- endAtt [p] = m;
+ RdpPattern m = p.StartTagCloseDeriv ();
+ memo.Add (new Memoization (
+ DerivativeType.StartTagClose, p, m));
return m;
}
- public RdpPattern MixedTextDeriv (RdpPattern p)
+ RdpPattern EndTagDeriv (RdpPattern p)
{
- RdpPattern m = mixedText [p] as RdpPattern;
- if (m != null)
- return m;
+ for (int i = 0; i < memo.Count; i++) {
+ Memoization tag = (Memoization) memo [i];
+ if (tag.Type == DerivativeType.EndTag && tag.Input == p)
+ return tag.Output;
+ }
- m = p.MixedTextDeriv (this);
- mixedText [p] = m;
+ RdpPattern m = p.EndTagDeriv ();
+ memo.Add (new Memoization (DerivativeType.EndTag, p, m));
return m;
}
- public RdpPattern TextOnlyDeriv (RdpPattern p)
+ RdpPattern MixedTextDeriv (RdpPattern p)
{
- RdpPattern m = textOnly [p] as RdpPattern;
- if (m != null)
- return m;
+ for (int i = 0; i < memo.Count; i++) {
+ Memoization tag = (Memoization) memo [i];
+ if (tag.Type == DerivativeType.Mixed && tag.Input == p)
+ return tag.Output;
+ }
- m = p.TextOnlyDeriv (this);
- textOnly [p] = m;
+ RdpPattern m = p.MixedTextDeriv ();
+ memo.Add (new Memoization (DerivativeType.Mixed, p, m));
return m;
}
- public RdpPattern TextDeriv (RdpPattern p, string value, XmlReader context)
+ RdpPattern TextOnlyDeriv (RdpPattern p)
{
- if (p.IsContextDependent)
- return p.TextDeriv (value, context);
+ for (int i = 0; i < memo.Count; i++) {
+ Memoization tag = (Memoization) memo [i];
+ if (tag.Type == DerivativeType.TextOnly && tag.Input == p)
+ return tag.Output;
+ }
- if (Object.ReferenceEquals (text_value [p], value))
- return text [p] as RdpPattern;
- RdpPattern m = p.TextDeriv (value, context, this);
- text_value [p] = value;
- text [p] = m;
+ RdpPattern m = p.TextOnlyDeriv ();
+ memo.Add (new Memoization (DerivativeType.TextOnly, p, m));
return m;
}
- public RdpPattern EmptyTextDeriv (RdpPattern p)
- {
- RdpPattern m = emptyText [p] as RdpPattern;
- if (m != null)
- return m;
-
- m = p.EmptyTextDeriv (this);
- emptyText [p] = m;
- return m;
- }
+ #endregion
}
- #endregion
}
diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/XsdDatatypeProvider.cs b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/XsdDatatypeProvider.cs
index 7e736cf4515..cfb8fa81e18 100644
--- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/XsdDatatypeProvider.cs
+++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/XsdDatatypeProvider.cs
@@ -197,10 +197,6 @@ namespace Commons.Xml.Relaxng.XmlSchema
get { return type.QualifiedName.Namespace; }
}
- internal override bool IsContextDependent {
- get { return type.Datatype != null && type.Datatype.TokenizedType == XmlTokenizedType.QName; }
- }
-
public override object Parse (string value, XmlReader reader)
{
// Now we create XmlValidatingReader to handle
@@ -233,10 +229,6 @@ namespace Commons.Xml.Relaxng.XmlSchema
dt = xstype;
}
- internal override bool IsContextDependent {
- get { return dt.TokenizedType == XmlTokenizedType.QName; }
- }
-
public override string Name {
get { return name; }
}
@@ -268,10 +260,6 @@ namespace Commons.Xml.Relaxng.XmlSchema
get { return "http://www.w3.org/2001/XMLSchema-datatypes"; }
}
- internal override bool IsContextDependent {
- get { return true; }
- }
-
public override object Parse (string s, XmlReader reader)
{
int colonAt = s.IndexOf (':');
diff --git a/mcs/class/I18N/CJK/CP51932.cs b/mcs/class/I18N/CJK/CP51932.cs
index 9cb355d7f59..43ed6f62cf2 100644
--- a/mcs/class/I18N/CJK/CP51932.cs
+++ b/mcs/class/I18N/CJK/CP51932.cs
@@ -58,15 +58,22 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP51932 : MonoEncoding
{
// Magic number used by Windows for the EUC-JP code page.
private const int EUC_JP_CODE_PAGE = 51932;
+ // Internal state.
+ private JISConvert convert;
+
+ // Conversion cache (note that encoding is not thread safe)
+ int lastByte;
+
// Constructor.
public CP51932 () : base (EUC_JP_CODE_PAGE)
{
+ // Load the JIS conversion tables.
+ convert = JISConvert.Convert;
}
// Get the number of bytes needed to encode a character buffer.
@@ -87,8 +94,8 @@ public class CP51932 : MonoEncoding
// Determine the length of the final output.
int length = 0;
int ch, value;
- byte [] cjkToJis = JISConvert.Convert.cjkToJis;
- byte [] extraToJis = JISConvert.Convert.extraToJis;
+ byte [] cjkToJis = convert.cjkToJis;
+ byte [] extraToJis = convert.extraToJis;
while (count > 0) {
ch = chars [index++];
@@ -147,9 +154,9 @@ public class CP51932 : MonoEncoding
int byteLength = byteCount;
int ch, value;
- byte[] cjkToJis = JISConvert.Convert.cjkToJis;
- byte[] greekToJis = JISConvert.Convert.greekToJis;
- byte[] extraToJis = JISConvert.Convert.extraToJis;
+ byte[] cjkToJis = convert.cjkToJis;
+ byte[] greekToJis = convert.greekToJis;
+ byte[] extraToJis = convert.extraToJis;
for (; charCount > 0; charIndex++, --charCount) {
ch = chars [charIndex];
@@ -217,6 +224,7 @@ public class CP51932 : MonoEncoding
}
// Get the number of characters needed to decode a byte buffer.
+ // TODO: check
public override int GetCharCount (byte [] bytes, int index, int count)
{
// Validate the parameters.
@@ -231,96 +239,50 @@ public class CP51932 : MonoEncoding
throw new ArgumentOutOfRangeException
("count", Strings.GetString("ArgRange_Array"));
-
-
// Determine the total length of the converted string.
- int value = 0;
- byte[] table0208 = JISConvert.Convert.jisx0208ToUnicode;
- byte[] table0212 = JISConvert.Convert.jisx0212ToUnicode;
int length = 0;
- int byteval = 0;
+ int byteval;
int last = 0;
while (count > 0) {
byteval = bytes [index++];
--count;
+
if (last == 0) {
if (byteval == 0x8F) {
if (byteval != 0) {
- // Invalid second byte of a 3-byte character.
+ // Invalid second byte of a 3-byte character
+ // FIXME: What should we do?
last = 0;
- length++;
}
// First byte in a triple-byte sequence
else
last = byteval;
} else if (byteval <= 0x7F) {
// Ordinary ASCII/Latin1/Control character.
- length++;
- } else if (byteval == 0x8E) {
- // First byte of half-width Katakana
- last = byteval;
+ ++length;
} else if (byteval >= 0xA1 && byteval <= 0xFE) {
// First byte in a double-byte sequence.
last = byteval;
+ } else if (byteval == 0x87) {
+ // First byte in half-width katakana
} else {
- // Invalid first byte.
- length++;
- }
- }
- else if (last == 0x8E) {
- if (byteval >= 0xA1 && byteval <= 0xDF) {
- value = ((byteval - 0x40) |
- (last + 0x71) << 8);
- length++;
- } else {
- // Invalid second byte.
- length++;
+ // Invalid first byte. Let '?'
+ ++length;
}
- last =0;
- }
- else if (last == 0x8F) {
+ } else if (last == 0x8F) {
// 3-byte character
// FIXME: currently not supported yet
- last = byteval;
- }
- else
- {
+ last = 0;
+ ++length;
+ } else {
// Second byte in a double-byte sequence.
- value = (last - 0xA1) * 0x5E;
last = 0;
- if (byteval >= 0xA1 && byteval <= 0xFE)
- {
- value += (byteval - 0xA1);
- }
- else
- {
- // Invalid second byte.
- last = 0;
- length++;
- continue;
- }
-
- value *= 2;
- value = ((int) (table0208 [value]))
- | (((int) (table0208 [value + 1])) << 8);
- if (value == 0)
- value = ((int) (table0212 [value]))
- | (((int) (table0212 [value + 1])) << 8);
- if (value != 0)
- length++;
- else
- length++;
+ ++length;
}
}
-#if NET_2_0
- // seems like .NET 2.0 adds \u30FB for insufficient
- // byte seuqence (for Japanese \u30FB makes sense).
- if (last != 0)
- length++;
-#endif
- // Return the final length to the caller.
+ // Return the total length.
return length;
}
@@ -357,29 +319,30 @@ public class CP51932 : MonoEncoding
int posn = charIndex;
int charLength = chars.Length;
int byteval, value;
- int last = 0;
- byte[] table0208 = JISConvert.Convert.jisx0208ToUnicode;
- byte[] table0212 = JISConvert.Convert.jisx0212ToUnicode;
+ int last = lastByte;
+ byte[] table0208 = convert.jisx0208ToUnicode;
+ byte[] table0212 = convert.jisx0212ToUnicode;
while (byteCount > 0) {
byteval = bytes [byteIndex++];
--byteCount;
if (last == 0) {
+ if (posn >= charLength)
+ throw new ArgumentException
+ (Strings.GetString
+ ("Arg_InsufficientSpace"), "chars");
+
if (byteval == 0x8F) {
if (byteval != 0) {
- // Invalid second byte of a 3-byte character.
+ // Invalid second byte of a 3-byte character
+ // FIXME: What should we do?
last = 0;
- if (posn >= charLength)
- throw Insufficient ();
- chars [posn++] = '?';
}
// First byte in a triple-byte sequence
else
last = byteval;
} else if (byteval <= 0x7F) {
// Ordinary ASCII/Latin1/Control character.
- if (posn >= charLength)
- throw Insufficient ();
chars [posn++] = (char) byteval;
} else if (byteval == 0x8E) {
// First byte of half-width Katakana
@@ -389,8 +352,6 @@ public class CP51932 : MonoEncoding
last = byteval;
} else {
// Invalid first byte.
- if (posn >= charLength)
- throw Insufficient ();
chars [posn++] = '?';
}
}
@@ -398,13 +359,9 @@ public class CP51932 : MonoEncoding
if (byteval >= 0xA1 && byteval <= 0xDF) {
value = ((byteval - 0x40) |
(last + 0x71) << 8);
- if (posn >= charLength)
- throw Insufficient ();
chars [posn++] = (char) value;
} else {
// Invalid second byte.
- if (posn >= charLength)
- throw Insufficient ();
chars [posn++] = '?';
}
last =0;
@@ -426,9 +383,7 @@ public class CP51932 : MonoEncoding
else
{
// Invalid second byte.
- last = 0;
- if (posn >= charLength)
- throw Insufficient ();
+ lastByte = 0;
chars [posn++] = '?';
continue;
}
@@ -439,35 +394,18 @@ public class CP51932 : MonoEncoding
if (value == 0)
value = ((int) (table0212 [value]))
| (((int) (table0212 [value + 1])) << 8);
- if (posn >= charLength)
- throw Insufficient ();
if (value != 0)
chars [posn++] = (char)value;
else
chars [posn++] = '?';
}
}
-#if NET_2_0
- if (last != 0) {
- // seems like .NET 2.0 adds \u30FB for insufficient
- // byte seuqence (for Japanese \u30FB makes sense).
- if (posn >= charLength)
- throw Insufficient ();
- chars [posn++] = '\u30FB';
- }
-#endif
+ lastByte = last;
// Return the final length to the caller.
return posn - charIndex;
}
- Exception Insufficient ()
- {
- throw new ArgumentException
- (Strings.GetString
- ("Arg_InsufficientSpace"), "chars");
- }
-
// Get the maximum number of bytes needed to encode a
// specified number of characters.
public override int GetMaxByteCount(int charCount)
@@ -551,7 +489,6 @@ public class CP51932 : MonoEncoding
#endif // !ECMA_COMPAT
}; // class CP51932
-[Serializable]
public class ENCeuc_jp : CP51932
{
public ENCeuc_jp () : base() {}
diff --git a/mcs/class/I18N/CJK/CP932.cs b/mcs/class/I18N/CJK/CP932.cs
index 90919b3c1ae..5b08dfbdff3 100644
--- a/mcs/class/I18N/CJK/CP932.cs
+++ b/mcs/class/I18N/CJK/CP932.cs
@@ -29,16 +29,20 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public unsafe class CP932 : MonoEncoding
{
// Magic number used by Windows for the Shift-JIS code page.
private const int SHIFTJIS_CODE_PAGE = 932;
+ // Internal state.
+ private JISConvert convert;
+
// Constructor.
public CP932() : base(SHIFTJIS_CODE_PAGE)
- {
- }
+ {
+ // Load the JIS conversion tables.
+ convert = JISConvert.Convert;
+ }
// Get the number of bytes needed to encode a character buffer.
public override int GetByteCount(char[] chars, int index, int count)
@@ -63,11 +67,11 @@ public unsafe class CP932 : MonoEncoding
int length = 0;
int ch, value;
#if __PNET__
- byte *cjkToJis = JISConvert.Convert.cjkToJis;
- byte *extraToJis = JISConvert.Convert.extraToJis;
+ byte *cjkToJis = convert.cjkToJis;
+ byte *extraToJis = convert.extraToJis;
#else
- byte[] cjkToJis = JISConvert.Convert.cjkToJis;
- byte[] extraToJis = JISConvert.Convert.extraToJis;
+ byte[] cjkToJis = convert.cjkToJis;
+ byte[] extraToJis = convert.extraToJis;
#endif
while(count > 0)
{
@@ -143,13 +147,13 @@ public unsafe class CP932 : MonoEncoding
int byteLength = byteCount;
int ch, value;
#if __PNET__
- byte *cjkToJis = JISConvert.Convert.cjkToJis;
- byte *greekToJis = JISConvert.Convert.greekToJis;
- byte *extraToJis = JISConvert.Convert.extraToJis;
+ byte *cjkToJis = convert.cjkToJis;
+ byte *greekToJis = convert.greekToJis;
+ byte *extraToJis = convert.extraToJis;
#else
- byte[] cjkToJis = JISConvert.Convert.cjkToJis;
- byte[] greekToJis = JISConvert.Convert.greekToJis;
- byte[] extraToJis = JISConvert.Convert.extraToJis;
+ byte[] cjkToJis = convert.cjkToJis;
+ byte[] greekToJis = convert.greekToJis;
+ byte[] extraToJis = convert.extraToJis;
#endif
while(charCount > 0)
{
@@ -449,9 +453,9 @@ public unsafe class CP932 : MonoEncoding
int length = 0;
int byteval, value;
#if __PNET__
- byte *table = JISConvert.Convert.jisx0208ToUnicode;
+ byte *table = convert.jisx0208ToUnicode;
#else
- byte[] table = JISConvert.Convert.jisx0208ToUnicode;
+ byte[] table = convert.jisx0208ToUnicode;
#endif
while(byteCount > 0)
{
@@ -558,7 +562,7 @@ public unsafe class CP932 : MonoEncoding
// Get a decoder that handles a rolling Shift-JIS state.
public override Decoder GetDecoder()
{
- return new CP932Decoder(JISConvert.Convert);
+ return new CP932Decoder(convert);
}
#if !ECMA_COMPAT
@@ -835,7 +839,6 @@ public unsafe class CP932 : MonoEncoding
}; // class CP932
-[Serializable]
public class ENCshift_jis : CP932
{
public ENCshift_jis() : base() {}
diff --git a/mcs/class/I18N/CJK/CP936.cs b/mcs/class/I18N/CJK/CP936.cs
index 454e1b5c3f2..6ca3e74d5b4 100644
--- a/mcs/class/I18N/CJK/CP936.cs
+++ b/mcs/class/I18N/CJK/CP936.cs
@@ -13,26 +13,21 @@ using I18N.Common;
namespace I18N.CJK
{
- [Serializable]
internal class CP936 : DbcsEncoding
{
+ static DbcsConvert gb2312 = DbcsConvert.Gb2312;
+
// Magic number used by Windows for the Gb2312 code page.
private const int GB2312_CODE_PAGE = 936;
// Constructor.
public CP936() : base(GB2312_CODE_PAGE) {
}
-
- internal override DbcsConvert GetConvert ()
- {
- return DbcsConvert.Gb2312;
- }
-
+
// Get the bytes that result from encoding a character buffer.
public unsafe override int GetBytesImpl (char* chars, int charCount,
byte* bytes, int byteCount)
{
- DbcsConvert gb2312 = GetConvert ();
int charIndex = 0;
int byteIndex = 0;
#if NET_2_0
@@ -65,45 +60,9 @@ namespace I18N.CJK
}
// Get the characters that result from decoding a byte buffer.
- public override int GetCharCount (byte [] bytes, int index, int count)
- {
- if (bytes == null)
- throw new ArgumentNullException("bytes");
- if (index < 0 || index > bytes.Length)
- throw new ArgumentOutOfRangeException("index", Strings.GetString("ArgRange_Array"));
- if (count < 0 || index + count > bytes.Length)
- throw new ArgumentOutOfRangeException("count", Strings.GetString("ArgRange_Array"));
-
- int lastByte = 0;
- int length = 0;
- while (count-- > 0) {
- int b = bytes [index++];
- if (lastByte == 0) {
- if (b <= 0x80 || b == 0xFF) { // ASCII
- length++;
- continue;
- } else {
- lastByte = b;
- continue;
- }
- }
- length++;
- lastByte = 0;
- }
-
-#if NET_2_0
- if (lastByte != 0)
- length++;
-#endif
-
- return length;
- }
-
- // Get the characters that result from decoding a byte buffer.
public override int GetChars(byte[] bytes, int byteIndex, int byteCount,
char[] chars, int charIndex)
{
- DbcsConvert gb2312 = GetConvert ();
// A1 40 - FA FF
base.GetChars(bytes, byteIndex, byteCount, chars, charIndex);
int origIndex = charIndex;
@@ -114,14 +73,15 @@ namespace I18N.CJK
if (b <= 0x80 || b == 0xFF) { // ASCII
chars[charIndex++] = (char)b;
continue;
+ } else if (b < 0x81 || b >= 0xFF) {
+ continue;
} else {
lastByte = b;
continue;
}
}
int ord = ((lastByte - 0x81) * 191 + b - 0x40) * 2;
- char c1 = (ord < 0 || ord + 1 >= gb2312.n2u.Length) ?
- '\0' : (char)(gb2312.n2u[ord] + gb2312.n2u[ord + 1] * 256);
+ char c1 = (char)(gb2312.n2u[ord] + gb2312.n2u[ord + 1] * 256);
if (c1 == 0)
chars[charIndex++] = '?';
else
@@ -134,7 +94,7 @@ namespace I18N.CJK
// Get a decoder that handles a rolling Gb2312 state.
public override Decoder GetDecoder()
{
- return new CP936Decoder(GetConvert ());
+ return new CP936Decoder(gb2312);
}
// Get the mail body name for this encoding.
@@ -223,7 +183,6 @@ namespace I18N.CJK
}
}
- [Serializable]
internal class ENCgb2312 : CP936
{
public ENCgb2312(): base () {}
diff --git a/mcs/class/I18N/CJK/CP949.cs b/mcs/class/I18N/CJK/CP949.cs
index e9b32e17e8a..0633814747a 100644
--- a/mcs/class/I18N/CJK/CP949.cs
+++ b/mcs/class/I18N/CJK/CP949.cs
@@ -11,7 +11,6 @@ using I18N.Common;
namespace I18N.CJK
{
- [Serializable]
internal class CP949 : KoreanEncoding
{
// Magic number used by Windows for the UHC code page.
@@ -55,7 +54,6 @@ namespace I18N.CJK
*/
}
- [Serializable]
internal class CP51949 : KoreanEncoding
{
// Magic number used by Windows for the euc-kr code page.
@@ -100,19 +98,14 @@ namespace I18N.CJK
}
- [Serializable]
internal class KoreanEncoding : DbcsEncoding
{
// Constructor.
public KoreanEncoding (int codepage, bool useUHC) : base (codepage) {
+ convert = KSConvert.Convert;
this.useUHC = useUHC;
}
- internal override DbcsConvert GetConvert ()
- {
- return KSConvert.Convert;
- }
-
bool useUHC;
// Get the bytes that result from encoding a character buffer.
@@ -121,7 +114,6 @@ namespace I18N.CJK
{
int charIndex = 0;
int byteIndex = 0;
- DbcsConvert convert = GetConvert ();
#if NET_2_0
EncoderFallbackBuffer buffer = null;
#endif
@@ -155,7 +147,6 @@ namespace I18N.CJK
public override int GetChars(byte[] bytes, int byteIndex, int byteCount,
char[] chars, int charIndex)
{
- DbcsConvert convert = GetConvert ();
base.GetChars(bytes, byteIndex, byteCount, chars, charIndex);
int origIndex = charIndex;
int lastByte = 0;
@@ -227,7 +218,7 @@ namespace I18N.CJK
// Get a decoder that handles a rolling UHC state.
public override Decoder GetDecoder()
{
- return new KoreanDecoder (GetConvert (), useUHC);
+ return new KoreanDecoder (convert, useUHC);
}
// Decoder that handles a rolling UHC state.
@@ -312,13 +303,11 @@ namespace I18N.CJK
}
}
- [Serializable]
internal class ENCuhc : CP949
{
public ENCuhc() {}
}
- [Serializable]
internal class ENCeuc_kr: CP51949
{
public ENCeuc_kr() {}
diff --git a/mcs/class/I18N/CJK/CP950.cs b/mcs/class/I18N/CJK/CP950.cs
index 77372285192..ec6515c7581 100644
--- a/mcs/class/I18N/CJK/CP950.cs
+++ b/mcs/class/I18N/CJK/CP950.cs
@@ -11,7 +11,6 @@ using I18N.Common;
namespace I18N.CJK
{
- [Serializable]
internal class CP950 : DbcsEncoding
{
// Magic number used by Windows for the Big5 code page.
@@ -19,18 +18,13 @@ namespace I18N.CJK
// Constructor.
public CP950() : base(BIG5_CODE_PAGE) {
+ convert = Big5Convert.Convert;
}
-
- internal override DbcsConvert GetConvert ()
- {
- return Big5Convert.Convert;
- }
-
+
// Get the bytes that result from encoding a character buffer.
public unsafe override int GetBytesImpl (char* chars, int charCount,
byte* bytes, int byteCount)
{
- DbcsConvert convert = GetConvert ();
int charIndex = 0;
int byteIndex = 0;
#if NET_2_0
@@ -66,7 +60,6 @@ namespace I18N.CJK
public override int GetChars(byte[] bytes, int byteIndex, int byteCount,
char[] chars, int charIndex)
{
- DbcsConvert convert = GetConvert ();
// A1 40 - FA FF
base.GetChars(bytes, byteIndex, byteCount, chars, charIndex);
int origIndex = charIndex;
@@ -98,7 +91,7 @@ namespace I18N.CJK
// Get a decoder that handles a rolling Big5 state.
public override Decoder GetDecoder()
{
- return new CP950Decoder(GetConvert ());
+ return new CP950Decoder(convert);
}
// Get the mail body name for this encoding.
@@ -171,7 +164,6 @@ namespace I18N.CJK
}
}
- [Serializable]
internal class ENCbig5 : CP950
{
public ENCbig5() {}
diff --git a/mcs/class/I18N/CJK/ChangeLog b/mcs/class/I18N/CJK/ChangeLog
index 79ed2388473..241b4c7c0b9 100644
--- a/mcs/class/I18N/CJK/ChangeLog
+++ b/mcs/class/I18N/CJK/ChangeLog
@@ -1,30 +1,3 @@
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * DbcsEncoding.cs CP950.cs CP932.cs CP936.cs CP51932.cs CP949.cs :
- Made all as really serializable. Removed references to DbcsConvert
- and added GetConvert() methods instead.
-
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * DbcsEncoding.cs ISO2022JP.cs GB18030Encoding.cs CP950.cs
- CP932.cs CP936.cs CP51932.cs CP949.cs (All) :
- Marked as [Serializable].
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * CP936.cs :
- Implement GetCharCount(); it is too costy to use GetChars()
- in GetCharCount(). Removed extra code in GetChars(). Check table
- index range before accessing it by index.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * CP51932.cs :
- In GetChars(), insufficient byte is not preserved.
- Under 1.x profile it is just discarded.
- Under 2.0 profile it is converted to \u30FB.
- Fixed GetCharCount() to match GetChars().
-
2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
* CP932.cs : GetByteCount() returned insufficient count at PrivateUse
diff --git a/mcs/class/I18N/CJK/DbcsEncoding.cs b/mcs/class/I18N/CJK/DbcsEncoding.cs
index 3e73a86b816..551b70448a1 100644
--- a/mcs/class/I18N/CJK/DbcsEncoding.cs
+++ b/mcs/class/I18N/CJK/DbcsEncoding.cs
@@ -11,13 +11,12 @@ using I18N.Common;
namespace I18N.CJK
{
- [Serializable]
internal abstract class DbcsEncoding : MonoEncoding
{
+ internal DbcsConvert convert;
+
public DbcsEncoding(int codePage) : base(codePage) {}
-
- internal abstract DbcsConvert GetConvert ();
-
+
// Get the number of bytes needed to encode a character buffer.
public override int GetByteCount(char[] chars, int index, int count)
{
@@ -102,7 +101,7 @@ namespace I18N.CJK
// Get a decoder that handles a rolling state.
public override Decoder GetDecoder()
{
- return new DbcsDecoder(GetConvert ());
+ return new DbcsDecoder(convert);
}
// Determine if this encoding can be displayed in a Web browser.
diff --git a/mcs/class/I18N/CJK/GB18030Encoding.cs b/mcs/class/I18N/CJK/GB18030Encoding.cs
index ef9cfd8220f..fe5c761061b 100644
--- a/mcs/class/I18N/CJK/GB18030Encoding.cs
+++ b/mcs/class/I18N/CJK/GB18030Encoding.cs
@@ -11,16 +11,13 @@ using I18N.Common;
namespace I18N.CJK
{
- [Serializable]
internal class ENCgb18030 : GB18030Encoding
{
public ENCgb18030 (): base () {}
}
- [Serializable]
public class CP54936 : GB18030Encoding { }
- [Serializable]
public class GB18030Encoding : MonoEncoding
{
// Constructor.
diff --git a/mcs/class/I18N/CJK/ISO2022JP.cs b/mcs/class/I18N/CJK/ISO2022JP.cs
index fea787bfb90..1ec1d356c21 100644
--- a/mcs/class/I18N/CJK/ISO2022JP.cs
+++ b/mcs/class/I18N/CJK/ISO2022JP.cs
@@ -7,7 +7,6 @@ namespace I18N.CJK
// FIXME:
// find out what is the difference between 50220, 50221 and 50222.
- [Serializable]
public class CP50220 : ISO2022JPEncoding
{
public CP50220 ()
@@ -20,7 +19,6 @@ namespace I18N.CJK
}
}
- [Serializable]
public class CP50221 : ISO2022JPEncoding
{
public CP50221 ()
@@ -33,7 +31,6 @@ namespace I18N.CJK
}
}
- [Serializable]
public class CP50222 : ISO2022JPEncoding
{
public CP50222 ()
@@ -46,7 +43,6 @@ namespace I18N.CJK
}
}
- [Serializable]
public class ISO2022JPEncoding : MonoEncoding
{
static JISConvert convert = JISConvert.Convert;
@@ -529,7 +525,6 @@ namespace I18N.CJK
#endif
}
- [Serializable]
public class ENCiso_2022_jp : CP50220
{
public ENCiso_2022_jp () : base() {}
diff --git a/mcs/class/I18N/CJK/Test/ChangeLog b/mcs/class/I18N/CJK/Test/ChangeLog
index 30c7d884e5a..a522f1e642d 100755
--- a/mcs/class/I18N/CJK/Test/ChangeLog
+++ b/mcs/class/I18N/CJK/Test/ChangeLog
@@ -1,11 +1,3 @@
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * I18N.CJK.Test.cs : added test for bug #77238.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * I18N.CJK.Test.cs : added test for bug #77223, #77224 and #77222.
-
2005-12-06 Atsushi Enomoto <atsushi@ximian.com>
* I18N.CJK.Test.cs : w00t, Now all test are working, including
diff --git a/mcs/class/I18N/CJK/Test/I18N.CJK.Test.cs b/mcs/class/I18N/CJK/Test/I18N.CJK.Test.cs
index 3c5fdef656e..18cb0e2f942 100755
--- a/mcs/class/I18N/CJK/Test/I18N.CJK.Test.cs
+++ b/mcs/class/I18N/CJK/Test/I18N.CJK.Test.cs
@@ -148,7 +148,7 @@ namespace MonoTests.I18N.CJK
AssertDecode ("Test/texts/japanese-utf8.txt", "Test/texts/japanese-51932.txt", 51932);
}
- // ISO-2022-JP
+ // ISI-2022-JP
[Test]
public void CP50220_Encode ()
@@ -192,50 +192,6 @@ namespace MonoTests.I18N.CJK
AssertDecode ("Test/texts/japanese-utf8.txt", "Test/texts/japanese-50222.txt", 50222);
}
- [Test]
- public void Bug77723 ()
- {
- Encoding e = Encoding.GetEncoding (51932);
- for (int i = 0; i < 0x10000; i++)
- e.GetBytes (new char [] { (char)i });
- }
-
- [Test]
- public void Bug77224 ()
- {
- Encoding e = Encoding.GetEncoding (932);
- for (int i = 0; i < 0x10000; i++)
- e.GetBytes (new char [] {(char) i});
- }
-
- [Test]
- public void Bug77222 ()
- {
- Encoding e = Encoding.GetEncoding (51932);
- byte [] bytes = new byte [2];
- for (int i0 = 0; i0 < 0x100; i0++) {
- bytes [0] = (byte) i0;
- for (int i1 = 0; i1 < 0x100; i1++) {
- bytes [1] = (byte) i1;
- e.GetChars (bytes);
- }
- }
- }
-
- [Test]
- public void Bug77238 ()
- {
- Encoding e = Encoding.GetEncoding(936);
- byte [] bytes = new byte [2];
- for (int i0 = 0; i0 < 0x100; i0++) {
- bytes [0] = (byte) i0;
- for (int i1 = 0; i1 < 0x100; i1++) {
- bytes [1] = (byte) i1;
- e.GetChars (bytes);
- }
- }
- }
-
#endregion
#region Korean
diff --git a/mcs/class/I18N/Common/ByteEncoding.cs b/mcs/class/I18N/Common/ByteEncoding.cs
index 52fe6a9bf4e..a6ff5927fdf 100644
--- a/mcs/class/I18N/Common/ByteEncoding.cs
+++ b/mcs/class/I18N/Common/ByteEncoding.cs
@@ -34,7 +34,6 @@ using System.Text;
// subclasses providing implementations of the "ToBytes" methods to perform
// the char->byte conversion.
-[Serializable]
public abstract class ByteEncoding : MonoEncoding
{
// Internal state.
diff --git a/mcs/class/I18N/Common/ChangeLog b/mcs/class/I18N/Common/ChangeLog
index 3f5f4f37101..a54e62dde7d 100644
--- a/mcs/class/I18N/Common/ChangeLog
+++ b/mcs/class/I18N/Common/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * MonoEncoding.cs, ByteEncoding.cs :
- Marked as [Serializable].
-
2005-12-01 Atsushi Enomoto <atsushi@ximian.com>
* MonoEncoding.cs : new file, which is going to be used as the
diff --git a/mcs/class/I18N/Common/MonoEncoding.cs b/mcs/class/I18N/Common/MonoEncoding.cs
index 85e709f2f88..e0d8e1345f1 100644
--- a/mcs/class/I18N/Common/MonoEncoding.cs
+++ b/mcs/class/I18N/Common/MonoEncoding.cs
@@ -12,7 +12,7 @@ using System.Text;
namespace I18N.Common
{
- [Serializable]
+
public abstract class MonoEncoding : Encoding
{
public MonoEncoding (int codePage)
diff --git a/mcs/class/I18N/MidEast/CP1254.cs b/mcs/class/I18N/MidEast/CP1254.cs
index 88746320a1d..470377e7ab8 100644
--- a/mcs/class/I18N/MidEast/CP1254.cs
+++ b/mcs/class/I18N/MidEast/CP1254.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1254 : ByteEncoding
{
public CP1254()
@@ -404,7 +403,6 @@ public class CP1254 : ByteEncoding
}; // class CP1254
-[Serializable]
public class ENCwindows_1254 : CP1254
{
public ENCwindows_1254() : base() {}
diff --git a/mcs/class/I18N/MidEast/CP1255.cs b/mcs/class/I18N/MidEast/CP1255.cs
index d226a3913a1..bd4b84ae4c8 100644
--- a/mcs/class/I18N/MidEast/CP1255.cs
+++ b/mcs/class/I18N/MidEast/CP1255.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1255 : ByteEncoding
{
public CP1255()
@@ -398,7 +397,6 @@ public class CP1255 : ByteEncoding
}; // class CP1255
-[Serializable]
public class ENCwindows_1255 : CP1255
{
public ENCwindows_1255() : base() {}
diff --git a/mcs/class/I18N/MidEast/CP1256.cs b/mcs/class/I18N/MidEast/CP1256.cs
index 21fef8e26a2..554410f8825 100644
--- a/mcs/class/I18N/MidEast/CP1256.cs
+++ b/mcs/class/I18N/MidEast/CP1256.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1256 : ByteEncoding
{
public CP1256()
@@ -776,7 +775,6 @@ public class CP1256 : ByteEncoding
}; // class CP1256
-[Serializable]
public class ENCwindows_1256 : CP1256
{
public ENCwindows_1256() : base() {}
diff --git a/mcs/class/I18N/MidEast/CP28596.cs b/mcs/class/I18N/MidEast/CP28596.cs
index fc7710141b7..26f1154354f 100644
--- a/mcs/class/I18N/MidEast/CP28596.cs
+++ b/mcs/class/I18N/MidEast/CP28596.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28596 : ByteEncoding
{
public CP28596()
@@ -550,7 +549,6 @@ public class CP28596 : ByteEncoding
}; // class CP28596
-[Serializable]
public class ENCiso_8859_6 : CP28596
{
public ENCiso_8859_6() : base() {}
diff --git a/mcs/class/I18N/MidEast/CP28598.cs b/mcs/class/I18N/MidEast/CP28598.cs
index 88ec90e74f7..67f32e90ec8 100644
--- a/mcs/class/I18N/MidEast/CP28598.cs
+++ b/mcs/class/I18N/MidEast/CP28598.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28598 : ByteEncoding
{
public CP28598()
@@ -266,7 +265,6 @@ public class CP28598 : ByteEncoding
}; // class CP28598
-[Serializable]
public class ENCiso_8859_8 : CP28598
{
public ENCiso_8859_8() : base() {}
diff --git a/mcs/class/I18N/MidEast/CP28599.cs b/mcs/class/I18N/MidEast/CP28599.cs
index 6cb519d19c1..2b00d88eab9 100644
--- a/mcs/class/I18N/MidEast/CP28599.cs
+++ b/mcs/class/I18N/MidEast/CP28599.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28599 : ByteEncoding
{
public CP28599()
@@ -246,7 +245,6 @@ public class CP28599 : ByteEncoding
}; // class CP28599
-[Serializable]
public class ENCiso_8859_9 : CP28599
{
public ENCiso_8859_9() : base() {}
diff --git a/mcs/class/I18N/MidEast/CP38598.cs b/mcs/class/I18N/MidEast/CP38598.cs
index 416e0444df3..14492f5efbb 100644
--- a/mcs/class/I18N/MidEast/CP38598.cs
+++ b/mcs/class/I18N/MidEast/CP38598.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP38598 : ByteEncoding
{
public CP38598()
@@ -266,7 +265,6 @@ public class CP38598 : ByteEncoding
}; // class CP38598
-[Serializable]
public class ENCwindows_38598 : CP38598
{
public ENCwindows_38598() : base() {}
diff --git a/mcs/class/I18N/MidEast/ChangeLog b/mcs/class/I18N/MidEast/ChangeLog
index 5c7c405616f..a6bbcec510a 100644
--- a/mcs/class/I18N/MidEast/ChangeLog
+++ b/mcs/class/I18N/MidEast/ChangeLog
@@ -1,9 +1,3 @@
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * CP1254.cs CP1255.cs CP28596.cs CP1256.cs CP28598.cs CP38598.cs
- CP28599.cs (All) :
- Marked as [Serializable].
-
2005-12-01 Atsushi Enomoto <atsushi@ximian.com>
(this is the first ChangeLog entry.)
diff --git a/mcs/class/I18N/Other/CP1251.cs b/mcs/class/I18N/Other/CP1251.cs
index f71f5d3d702..96eb3493d31 100644
--- a/mcs/class/I18N/Other/CP1251.cs
+++ b/mcs/class/I18N/Other/CP1251.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1251 : ByteEncoding
{
public CP1251()
@@ -408,7 +407,6 @@ public class CP1251 : ByteEncoding
}; // class CP1251
-[Serializable]
public class ENCwindows_1251 : CP1251
{
public ENCwindows_1251() : base() {}
diff --git a/mcs/class/I18N/Other/CP1257.cs b/mcs/class/I18N/Other/CP1257.cs
index d2f351d8cfb..546da866cd6 100644
--- a/mcs/class/I18N/Other/CP1257.cs
+++ b/mcs/class/I18N/Other/CP1257.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1257 : ByteEncoding
{
public CP1257()
@@ -400,7 +399,6 @@ public class CP1257 : ByteEncoding
}; // class CP1257
-[Serializable]
public class ENCwindows_1257 : CP1257
{
public ENCwindows_1257() : base() {}
diff --git a/mcs/class/I18N/Other/CP1258.cs b/mcs/class/I18N/Other/CP1258.cs
index 79b5fb3b953..f0adfb65bf9 100644
--- a/mcs/class/I18N/Other/CP1258.cs
+++ b/mcs/class/I18N/Other/CP1258.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1258 : ByteEncoding
{
public CP1258()
@@ -404,7 +403,6 @@ public class CP1258 : ByteEncoding
}; // class CP1258
-[Serializable]
public class ENCwindows_1258 : CP1258
{
public ENCwindows_1258() : base() {}
diff --git a/mcs/class/I18N/Other/CP20866.cs b/mcs/class/I18N/Other/CP20866.cs
index 970e4365a98..68b54afadb5 100644
--- a/mcs/class/I18N/Other/CP20866.cs
+++ b/mcs/class/I18N/Other/CP20866.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20866 : ByteEncoding
{
public CP20866()
@@ -434,7 +433,6 @@ public class CP20866 : ByteEncoding
}; // class CP20866
-[Serializable]
public class ENCkoi8_r : CP20866
{
public ENCkoi8_r() : base() {}
diff --git a/mcs/class/I18N/Other/CP21866.cs b/mcs/class/I18N/Other/CP21866.cs
index 8ea567cb310..3741eefe039 100644
--- a/mcs/class/I18N/Other/CP21866.cs
+++ b/mcs/class/I18N/Other/CP21866.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP21866 : ByteEncoding
{
public CP21866()
@@ -434,7 +433,6 @@ public class CP21866 : ByteEncoding
}; // class CP21866
-[Serializable]
public class ENCkoi8_u : CP21866
{
public ENCkoi8_u() : base() {}
diff --git a/mcs/class/I18N/Other/CP28594.cs b/mcs/class/I18N/Other/CP28594.cs
index a5340f723f4..e17572cfde9 100644
--- a/mcs/class/I18N/Other/CP28594.cs
+++ b/mcs/class/I18N/Other/CP28594.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28594 : ByteEncoding
{
public CP28594()
@@ -338,7 +337,6 @@ public class CP28594 : ByteEncoding
}; // class CP28594
-[Serializable]
public class ENCiso_8859_4 : CP28594
{
public ENCiso_8859_4() : base() {}
diff --git a/mcs/class/I18N/Other/CP28595.cs b/mcs/class/I18N/Other/CP28595.cs
index b47bd5f8e47..2fc51ffdf65 100644
--- a/mcs/class/I18N/Other/CP28595.cs
+++ b/mcs/class/I18N/Other/CP28595.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28595 : ByteEncoding
{
public CP28595()
@@ -350,7 +349,6 @@ public class CP28595 : ByteEncoding
}; // class CP28595
-[Serializable]
public class ENCiso_8859_5 : CP28595
{
public ENCiso_8859_5() : base() {}
diff --git a/mcs/class/I18N/Other/CP57002.cs b/mcs/class/I18N/Other/CP57002.cs
index a4e8830685d..302c4cd780e 100644
--- a/mcs/class/I18N/Other/CP57002.cs
+++ b/mcs/class/I18N/Other/CP57002.cs
@@ -39,7 +39,6 @@ using I18N.Common;
// are a shifted version of the Unicode character set, starting
// at a fixed offset.
-[Serializable]
public abstract class ISCIIEncoding : MonoEncoding
{
// Internal state.
@@ -360,35 +359,30 @@ public abstract class ISCIIEncoding : MonoEncoding
// Define the ISCII code pages as subclasses of "ISCIIEncoding".
-[Serializable]
public class CP57002 : ISCIIEncoding
{
public CP57002() : base(57002, 0x0900, "ISCII Devanagari", "x-iscii-de") {}
}; // class CP57002
-[Serializable]
public class CP57003 : ISCIIEncoding
{
public CP57003() : base(57003, 0x0980, "ISCII Bengali", "x-iscii-be") {}
}; // class CP57003
-[Serializable]
public class CP57004 : ISCIIEncoding
{
public CP57004() : base(57004, 0x0B80, "ISCII Tamil", "x-iscii-ta") {}
}; // class CP57004
-[Serializable]
public class CP57005 : ISCIIEncoding
{
public CP57005() : base(57005, 0x0B80, "ISCII Telugu", "x-iscii-te") {}
}; // class CP57005
-[Serializable]
public class CP57006 : ISCIIEncoding
{
// Note: Unicode has a "Sinhala" page, but no "Assamese" page.
@@ -398,35 +392,30 @@ public class CP57006 : ISCIIEncoding
}; // class CP57006
-[Serializable]
public class CP57007 : ISCIIEncoding
{
public CP57007() : base(57007, 0x0B00, "ISCII Oriya", "x-iscii-or") {}
}; // class CP57007
-[Serializable]
public class CP57008 : ISCIIEncoding
{
public CP57008() : base(57008, 0x0C80, "ISCII Kannada", "x-iscii-ka") {}
}; // class CP57008
-[Serializable]
public class CP57009 : ISCIIEncoding
{
public CP57009() : base(57009, 0x0D00, "ISCII Malayalam", "x-iscii-ma") {}
}; // class CP57009
-[Serializable]
public class CP57010 : ISCIIEncoding
{
public CP57010() : base(57010, 0x0A80, "ISCII Gujarati", "x-iscii-gu") {}
}; // class CP57010
-[Serializable]
public class CP57011 : ISCIIEncoding
{
// Note: Unicode has a "Gurmukhi" page, but no "Punjabi" page.
@@ -440,70 +429,60 @@ public class CP57011 : ISCIIEncoding
// Define the web encoding name aliases for the above code pages.
-[Serializable]
public class ENCx_iscii_de : CP57002
{
public ENCx_iscii_de() : base() {}
}; // class ENCx_iscii_de
-[Serializable]
public class ENCx_iscii_be : CP57003
{
public ENCx_iscii_be() : base() {}
}; // class ENCx_iscii_be
-[Serializable]
public class ENCx_iscii_ta : CP57004
{
public ENCx_iscii_ta() : base() {}
}; // class ENCx_iscii_ta
-[Serializable]
public class ENCx_iscii_te : CP57005
{
public ENCx_iscii_te() : base() {}
}; // class ENCx_iscii_te
-[Serializable]
public class ENCx_iscii_as : CP57006
{
public ENCx_iscii_as() : base() {}
}; // class ENCx_iscii_as
-[Serializable]
public class ENCx_iscii_or : CP57007
{
public ENCx_iscii_or() : base() {}
}; // class ENCx_iscii_or
-[Serializable]
public class ENCx_iscii_ka : CP57008
{
public ENCx_iscii_ka() : base() {}
}; // class ENCx_iscii_ka
-[Serializable]
public class ENCx_iscii_ma : CP57009
{
public ENCx_iscii_ma() : base() {}
}; // class ENCx_iscii_ma
-[Serializable]
public class ENCx_iscii_gu : CP57010
{
public ENCx_iscii_gu() : base() {}
}; // class ENCx_iscii_gu
-[Serializable]
public class ENCx_iscii_pa : CP57011
{
public ENCx_iscii_pa() : base() {}
diff --git a/mcs/class/I18N/Other/CP874.cs b/mcs/class/I18N/Other/CP874.cs
index 24d82d4b940..410f9e89753 100644
--- a/mcs/class/I18N/Other/CP874.cs
+++ b/mcs/class/I18N/Other/CP874.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP874 : ByteEncoding
{
public CP874()
@@ -542,7 +541,6 @@ public class CP874 : ByteEncoding
}; // class CP874
-[Serializable]
public class ENCwindows_874 : CP874
{
public ENCwindows_874() : base() {}
diff --git a/mcs/class/I18N/Other/ChangeLog b/mcs/class/I18N/Other/ChangeLog
index 669caa523d9..1139ccdc606 100644
--- a/mcs/class/I18N/Other/ChangeLog
+++ b/mcs/class/I18N/Other/ChangeLog
@@ -1,9 +1,3 @@
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * CP1251.cs CP28594.cs CP28595.cs CP1257.cs CP1258.cs CP57002.cs
- CP874.cs CP20866.cs CP21866.cs (All) :
- Marked as [Serializable].
-
2005-12-01 Atsushi Enomoto <atsushi@ximian.com>
* CP57002.cs : Now its base class is MonoEncoding, and implemented
diff --git a/mcs/class/I18N/Rare/CP1026.cs b/mcs/class/I18N/Rare/CP1026.cs
index 997411d6600..a21e9a67d60 100644
--- a/mcs/class/I18N/Rare/CP1026.cs
+++ b/mcs/class/I18N/Rare/CP1026.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1026 : ByteEncoding
{
public CP1026()
@@ -902,7 +901,6 @@ public class CP1026 : ByteEncoding
}; // class CP1026
-[Serializable]
public class ENCibm1026 : CP1026
{
public ENCibm1026() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1047.cs b/mcs/class/I18N/Rare/CP1047.cs
index 9f6565b6a90..3d9e2f910c5 100644
--- a/mcs/class/I18N/Rare/CP1047.cs
+++ b/mcs/class/I18N/Rare/CP1047.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1047 : ByteEncoding
{
public CP1047()
@@ -902,7 +901,6 @@ public class CP1047 : ByteEncoding
}; // class CP1047
-[Serializable]
public class ENCibm1047 : CP1047
{
public ENCibm1047() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1140.cs b/mcs/class/I18N/Rare/CP1140.cs
index eac9ae01a72..f6d1c68f989 100644
--- a/mcs/class/I18N/Rare/CP1140.cs
+++ b/mcs/class/I18N/Rare/CP1140.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1140 : ByteEncoding
{
public CP1140()
@@ -902,7 +901,6 @@ public class CP1140 : ByteEncoding
}; // class CP1140
-[Serializable]
public class ENCibm01140 : CP1140
{
public ENCibm01140() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1141.cs b/mcs/class/I18N/Rare/CP1141.cs
index 40ad50b3e61..da047cc88c5 100644
--- a/mcs/class/I18N/Rare/CP1141.cs
+++ b/mcs/class/I18N/Rare/CP1141.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1141 : ByteEncoding
{
public CP1141()
@@ -902,7 +901,6 @@ public class CP1141 : ByteEncoding
}; // class CP1141
-[Serializable]
public class ENCibm01141 : CP1141
{
public ENCibm01141() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1142.cs b/mcs/class/I18N/Rare/CP1142.cs
index 71291152d5a..e8b26cde671 100644
--- a/mcs/class/I18N/Rare/CP1142.cs
+++ b/mcs/class/I18N/Rare/CP1142.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1142 : ByteEncoding
{
public CP1142()
@@ -902,7 +901,6 @@ public class CP1142 : ByteEncoding
}; // class CP1142
-[Serializable]
public class ENCibm01142 : CP1142
{
public ENCibm01142() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1143.cs b/mcs/class/I18N/Rare/CP1143.cs
index 19f6b20c4c2..1c39c0ddcd4 100644
--- a/mcs/class/I18N/Rare/CP1143.cs
+++ b/mcs/class/I18N/Rare/CP1143.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1143 : ByteEncoding
{
public CP1143()
@@ -902,7 +901,6 @@ public class CP1143 : ByteEncoding
}; // class CP1143
-[Serializable]
public class ENCibm01143 : CP1143
{
public ENCibm01143() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1144.cs b/mcs/class/I18N/Rare/CP1144.cs
index d13639c4533..19bb20736ec 100644
--- a/mcs/class/I18N/Rare/CP1144.cs
+++ b/mcs/class/I18N/Rare/CP1144.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1144 : ByteEncoding
{
public CP1144()
@@ -902,7 +901,6 @@ public class CP1144 : ByteEncoding
}; // class CP1144
-[Serializable]
public class ENCibm1144 : CP1144
{
public ENCibm1144() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1145.cs b/mcs/class/I18N/Rare/CP1145.cs
index e73777b163a..80834efad21 100644
--- a/mcs/class/I18N/Rare/CP1145.cs
+++ b/mcs/class/I18N/Rare/CP1145.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1145 : ByteEncoding
{
public CP1145()
@@ -902,7 +901,6 @@ public class CP1145 : ByteEncoding
}; // class CP1145
-[Serializable]
public class ENCibm1145 : CP1145
{
public ENCibm1145() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1146.cs b/mcs/class/I18N/Rare/CP1146.cs
index 5ba6e41cbd0..c3819d5fba0 100644
--- a/mcs/class/I18N/Rare/CP1146.cs
+++ b/mcs/class/I18N/Rare/CP1146.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1146 : ByteEncoding
{
public CP1146()
@@ -902,7 +901,6 @@ public class CP1146 : ByteEncoding
}; // class CP1146
-[Serializable]
public class ENCibm1146 : CP1146
{
public ENCibm1146() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1147.cs b/mcs/class/I18N/Rare/CP1147.cs
index 84bf298732a..cf964f85f04 100644
--- a/mcs/class/I18N/Rare/CP1147.cs
+++ b/mcs/class/I18N/Rare/CP1147.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1147 : ByteEncoding
{
public CP1147()
@@ -902,7 +901,6 @@ public class CP1147 : ByteEncoding
}; // class CP1147
-[Serializable]
public class ENCibm1147 : CP1147
{
public ENCibm1147() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1148.cs b/mcs/class/I18N/Rare/CP1148.cs
index bdcbbb39e58..973b2e600f3 100644
--- a/mcs/class/I18N/Rare/CP1148.cs
+++ b/mcs/class/I18N/Rare/CP1148.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1148 : ByteEncoding
{
public CP1148()
@@ -902,7 +901,6 @@ public class CP1148 : ByteEncoding
}; // class CP1148
-[Serializable]
public class ENCibm1148 : CP1148
{
public ENCibm1148() : base() {}
diff --git a/mcs/class/I18N/Rare/CP1149.cs b/mcs/class/I18N/Rare/CP1149.cs
index e29d088c617..efcf6d17f2d 100644
--- a/mcs/class/I18N/Rare/CP1149.cs
+++ b/mcs/class/I18N/Rare/CP1149.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1149 : ByteEncoding
{
public CP1149()
@@ -902,7 +901,6 @@ public class CP1149 : ByteEncoding
}; // class CP1149
-[Serializable]
public class ENCibm1149 : CP1149
{
public ENCibm1149() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20273.cs b/mcs/class/I18N/Rare/CP20273.cs
index 716ba7dd86e..a385aa1e201 100644
--- a/mcs/class/I18N/Rare/CP20273.cs
+++ b/mcs/class/I18N/Rare/CP20273.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20273 : ByteEncoding
{
public CP20273()
@@ -904,7 +903,6 @@ public class CP20273 : ByteEncoding
}; // class CP20273
-[Serializable]
public class ENCibm273 : CP20273
{
public ENCibm273() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20277.cs b/mcs/class/I18N/Rare/CP20277.cs
index 67f54633417..53de9290fd0 100644
--- a/mcs/class/I18N/Rare/CP20277.cs
+++ b/mcs/class/I18N/Rare/CP20277.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20277 : ByteEncoding
{
public CP20277()
@@ -904,7 +903,6 @@ public class CP20277 : ByteEncoding
}; // class CP20277
-[Serializable]
public class ENCibm277 : CP20277
{
public ENCibm277() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20278.cs b/mcs/class/I18N/Rare/CP20278.cs
index 7ed1a6e2a2d..034bc26d998 100644
--- a/mcs/class/I18N/Rare/CP20278.cs
+++ b/mcs/class/I18N/Rare/CP20278.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20278 : ByteEncoding
{
public CP20278()
@@ -904,7 +903,6 @@ public class CP20278 : ByteEncoding
}; // class CP20278
-[Serializable]
public class ENCibm278 : CP20278
{
public ENCibm278() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20280.cs b/mcs/class/I18N/Rare/CP20280.cs
index d7fc172d80b..1aa53226808 100644
--- a/mcs/class/I18N/Rare/CP20280.cs
+++ b/mcs/class/I18N/Rare/CP20280.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20280 : ByteEncoding
{
public CP20280()
@@ -904,7 +903,6 @@ public class CP20280 : ByteEncoding
}; // class CP20280
-[Serializable]
public class ENCibm280 : CP20280
{
public ENCibm280() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20284.cs b/mcs/class/I18N/Rare/CP20284.cs
index 7a93a9ec7a8..5f5baa2cdf5 100644
--- a/mcs/class/I18N/Rare/CP20284.cs
+++ b/mcs/class/I18N/Rare/CP20284.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20284 : ByteEncoding
{
public CP20284()
@@ -904,7 +903,6 @@ public class CP20284 : ByteEncoding
}; // class CP20284
-[Serializable]
public class ENCibm284 : CP20284
{
public ENCibm284() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20285.cs b/mcs/class/I18N/Rare/CP20285.cs
index 6c8cbfff1ac..9a66315af2f 100644
--- a/mcs/class/I18N/Rare/CP20285.cs
+++ b/mcs/class/I18N/Rare/CP20285.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20285 : ByteEncoding
{
public CP20285()
@@ -904,7 +903,6 @@ public class CP20285 : ByteEncoding
}; // class CP20285
-[Serializable]
public class ENCibm285 : CP20285
{
public ENCibm285() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20290.cs b/mcs/class/I18N/Rare/CP20290.cs
index e3a603ad200..9e90af46ce4 100644
--- a/mcs/class/I18N/Rare/CP20290.cs
+++ b/mcs/class/I18N/Rare/CP20290.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20290 : ByteEncoding
{
public CP20290()
@@ -872,7 +871,6 @@ public class CP20290 : ByteEncoding
}; // class CP20290
-[Serializable]
public class ENCibm290 : CP20290
{
public ENCibm290() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20297.cs b/mcs/class/I18N/Rare/CP20297.cs
index cbd04191cfb..72d5ca2aa13 100644
--- a/mcs/class/I18N/Rare/CP20297.cs
+++ b/mcs/class/I18N/Rare/CP20297.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20297 : ByteEncoding
{
public CP20297()
@@ -904,7 +903,6 @@ public class CP20297 : ByteEncoding
}; // class CP20297
-[Serializable]
public class ENCibm297 : CP20297
{
public ENCibm297() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20420.cs b/mcs/class/I18N/Rare/CP20420.cs
index 11bb818b19b..5f12d0f5d9a 100644
--- a/mcs/class/I18N/Rare/CP20420.cs
+++ b/mcs/class/I18N/Rare/CP20420.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20420 : ByteEncoding
{
public CP20420()
@@ -1080,7 +1079,6 @@ public class CP20420 : ByteEncoding
}; // class CP20420
-[Serializable]
public class ENCibm420 : CP20420
{
public ENCibm420() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20424.cs b/mcs/class/I18N/Rare/CP20424.cs
index 109127ef65a..53b43af9d15 100644
--- a/mcs/class/I18N/Rare/CP20424.cs
+++ b/mcs/class/I18N/Rare/CP20424.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20424 : ByteEncoding
{
public CP20424()
@@ -836,7 +835,6 @@ public class CP20424 : ByteEncoding
}; // class CP20424
-[Serializable]
public class ENCibm424 : CP20424
{
public ENCibm424() : base() {}
diff --git a/mcs/class/I18N/Rare/CP20871.cs b/mcs/class/I18N/Rare/CP20871.cs
index 1b6752d0121..ace2be237d9 100644
--- a/mcs/class/I18N/Rare/CP20871.cs
+++ b/mcs/class/I18N/Rare/CP20871.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP20871 : ByteEncoding
{
public CP20871()
@@ -904,7 +903,6 @@ public class CP20871 : ByteEncoding
}; // class CP20871
-[Serializable]
public class ENCibm871 : CP20871
{
public ENCibm871() : base() {}
diff --git a/mcs/class/I18N/Rare/CP21025.cs b/mcs/class/I18N/Rare/CP21025.cs
index 709a12a77ff..c57a7a4a99d 100644
--- a/mcs/class/I18N/Rare/CP21025.cs
+++ b/mcs/class/I18N/Rare/CP21025.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP21025 : ByteEncoding
{
public CP21025()
@@ -924,7 +923,6 @@ public class CP21025 : ByteEncoding
}; // class CP21025
-[Serializable]
public class ENCibm1025 : CP21025
{
public ENCibm1025() : base() {}
diff --git a/mcs/class/I18N/Rare/CP37.cs b/mcs/class/I18N/Rare/CP37.cs
index 8f1556a355b..af32f451167 100644
--- a/mcs/class/I18N/Rare/CP37.cs
+++ b/mcs/class/I18N/Rare/CP37.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP37 : ByteEncoding
{
public CP37()
@@ -904,7 +903,6 @@ public class CP37 : ByteEncoding
}; // class CP37
-[Serializable]
public class ENCibm037 : CP37
{
public ENCibm037() : base() {}
diff --git a/mcs/class/I18N/Rare/CP500.cs b/mcs/class/I18N/Rare/CP500.cs
index 0bc772d8203..18476f2cf25 100644
--- a/mcs/class/I18N/Rare/CP500.cs
+++ b/mcs/class/I18N/Rare/CP500.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP500 : ByteEncoding
{
public CP500()
@@ -904,7 +903,6 @@ public class CP500 : ByteEncoding
}; // class CP500
-[Serializable]
public class ENCibm500 : CP500
{
public ENCibm500() : base() {}
diff --git a/mcs/class/I18N/Rare/CP708.cs b/mcs/class/I18N/Rare/CP708.cs
index 5fdbc98488e..d742187d9f1 100644
--- a/mcs/class/I18N/Rare/CP708.cs
+++ b/mcs/class/I18N/Rare/CP708.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP708 : ByteEncoding
{
public CP708()
@@ -550,7 +549,6 @@ public class CP708 : ByteEncoding
}; // class CP708
-[Serializable]
public class ENCasmo_708 : CP708
{
public ENCasmo_708() : base() {}
diff --git a/mcs/class/I18N/Rare/CP852.cs b/mcs/class/I18N/Rare/CP852.cs
index bbbebd84c56..e91ed55cad3 100644
--- a/mcs/class/I18N/Rare/CP852.cs
+++ b/mcs/class/I18N/Rare/CP852.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP852 : ByteEncoding
{
public CP852()
@@ -684,7 +683,6 @@ public class CP852 : ByteEncoding
}; // class CP852
-[Serializable]
public class ENCibm852 : CP852
{
public ENCibm852() : base() {}
diff --git a/mcs/class/I18N/Rare/CP855.cs b/mcs/class/I18N/Rare/CP855.cs
index 86d998ce9d8..3cd826dabbd 100644
--- a/mcs/class/I18N/Rare/CP855.cs
+++ b/mcs/class/I18N/Rare/CP855.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP855 : ByteEncoding
{
public CP855()
@@ -684,7 +683,6 @@ public class CP855 : ByteEncoding
}; // class CP855
-[Serializable]
public class ENCibm855 : CP855
{
public ENCibm855() : base() {}
diff --git a/mcs/class/I18N/Rare/CP857.cs b/mcs/class/I18N/Rare/CP857.cs
index 9b55311dc7c..4f132715bf9 100644
--- a/mcs/class/I18N/Rare/CP857.cs
+++ b/mcs/class/I18N/Rare/CP857.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP857 : ByteEncoding
{
public CP857()
@@ -678,7 +677,6 @@ public class CP857 : ByteEncoding
}; // class CP857
-[Serializable]
public class ENCibm857 : CP857
{
public ENCibm857() : base() {}
diff --git a/mcs/class/I18N/Rare/CP858.cs b/mcs/class/I18N/Rare/CP858.cs
index 6d1ad171706..172b014622c 100644
--- a/mcs/class/I18N/Rare/CP858.cs
+++ b/mcs/class/I18N/Rare/CP858.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP858 : ByteEncoding
{
public CP858()
@@ -684,7 +683,6 @@ public class CP858 : ByteEncoding
}; // class CP858
-[Serializable]
public class ENCibm00858 : CP858
{
public ENCibm00858() : base() {}
diff --git a/mcs/class/I18N/Rare/CP862.cs b/mcs/class/I18N/Rare/CP862.cs
index d774dd67445..736766d4d4a 100644
--- a/mcs/class/I18N/Rare/CP862.cs
+++ b/mcs/class/I18N/Rare/CP862.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP862 : ByteEncoding
{
public CP862()
@@ -690,7 +689,6 @@ public class CP862 : ByteEncoding
}; // class CP862
-[Serializable]
public class ENCibm862 : CP862
{
public ENCibm862() : base() {}
diff --git a/mcs/class/I18N/Rare/CP864.cs b/mcs/class/I18N/Rare/CP864.cs
index f066b6cb4fd..a60dae1deec 100644
--- a/mcs/class/I18N/Rare/CP864.cs
+++ b/mcs/class/I18N/Rare/CP864.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP864 : ByteEncoding
{
public CP864()
@@ -866,7 +865,6 @@ public class CP864 : ByteEncoding
}; // class CP864
-[Serializable]
public class ENCibm864 : CP864
{
public ENCibm864() : base() {}
diff --git a/mcs/class/I18N/Rare/CP866.cs b/mcs/class/I18N/Rare/CP866.cs
index 073f2aa1375..da3b95df7bb 100644
--- a/mcs/class/I18N/Rare/CP866.cs
+++ b/mcs/class/I18N/Rare/CP866.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP866 : ByteEncoding
{
public CP866()
@@ -694,7 +693,6 @@ public class CP866 : ByteEncoding
}; // class CP866
-[Serializable]
public class ENCibm866 : CP866
{
public ENCibm866() : base() {}
diff --git a/mcs/class/I18N/Rare/CP869.cs b/mcs/class/I18N/Rare/CP869.cs
index aca0868480b..160b03d2638 100644
--- a/mcs/class/I18N/Rare/CP869.cs
+++ b/mcs/class/I18N/Rare/CP869.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP869 : ByteEncoding
{
public CP869()
@@ -686,7 +685,6 @@ public class CP869 : ByteEncoding
}; // class CP869
-[Serializable]
public class ENCibm869 : CP869
{
public ENCibm869() : base() {}
diff --git a/mcs/class/I18N/Rare/CP870.cs b/mcs/class/I18N/Rare/CP870.cs
index 290435390be..0abfde74063 100644
--- a/mcs/class/I18N/Rare/CP870.cs
+++ b/mcs/class/I18N/Rare/CP870.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP870 : ByteEncoding
{
public CP870()
@@ -902,7 +901,6 @@ public class CP870 : ByteEncoding
}; // class CP870
-[Serializable]
public class ENCibm870 : CP870
{
public ENCibm870() : base() {}
diff --git a/mcs/class/I18N/Rare/CP875.cs b/mcs/class/I18N/Rare/CP875.cs
index f5177058060..9117cee1cf3 100644
--- a/mcs/class/I18N/Rare/CP875.cs
+++ b/mcs/class/I18N/Rare/CP875.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP875 : ByteEncoding
{
public CP875()
@@ -920,7 +919,6 @@ public class CP875 : ByteEncoding
}; // class CP875
-[Serializable]
public class ENCibm875 : CP875
{
public ENCibm875() : base() {}
diff --git a/mcs/class/I18N/Rare/ChangeLog b/mcs/class/I18N/Rare/ChangeLog
index 1b8c1c6183c..2e1e5cd6726 100644
--- a/mcs/class/I18N/Rare/ChangeLog
+++ b/mcs/class/I18N/Rare/ChangeLog
@@ -1,14 +1,3 @@
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * CP1145.cs CP1149.cs CP20420.cs CP20424.cs CP708.cs CP855.cs
- CP875.cs CP1140.cs CP869.cs CP1144.cs CP1047.cs CP1148.cs
- CP21025.cs CP870.cs CP20285.cs CP864.cs CP858.cs CP1143.cs
- CP1026.cs CP37.cs CP1147.cs CP500.cs CP20280.cs CP20290.cs
- CP20284.cs CP20278.cs CP857.cs CP1142.cs CP1146.cs CP20273.cs
- CP852.cs CP862.cs CP20277.cs CP20871.cs CP866.cs CP20297.cs
- CP1141.cs (All) :
- Marked as [Serializable].
-
2005-12-01 Atsushi Enomoto <atsushi@ximian.com>
(this is the first ChangeLog entry.)
diff --git a/mcs/class/I18N/West/CP10000.cs b/mcs/class/I18N/West/CP10000.cs
index 8ea0002f842..b5a72272421 100644
--- a/mcs/class/I18N/West/CP10000.cs
+++ b/mcs/class/I18N/West/CP10000.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP10000 : ByteEncoding
{
public CP10000()
@@ -410,7 +409,6 @@ public class CP10000 : ByteEncoding
}; // class CP10000
-[Serializable]
public class ENCmacintosh : CP10000
{
public ENCmacintosh() : base() {}
diff --git a/mcs/class/I18N/West/CP10079.cs b/mcs/class/I18N/West/CP10079.cs
index e15895df821..95d984e6505 100644
--- a/mcs/class/I18N/West/CP10079.cs
+++ b/mcs/class/I18N/West/CP10079.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP10079 : ByteEncoding
{
public CP10079()
@@ -391,7 +390,6 @@ public class CP10079 : ByteEncoding
}; // class CP10079
-[Serializable]
public class ENCx_mac_icelandic : CP10079
{
public ENCx_mac_icelandic() : base() {}
diff --git a/mcs/class/I18N/West/CP1250.cs b/mcs/class/I18N/West/CP1250.cs
index a96936547cc..064320fe8e9 100644
--- a/mcs/class/I18N/West/CP1250.cs
+++ b/mcs/class/I18N/West/CP1250.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1250 : ByteEncoding
{
public CP1250()
@@ -404,7 +403,6 @@ public class CP1250 : ByteEncoding
}; // class CP1250
-[Serializable]
public class ENCwindows_1250 : CP1250
{
public ENCwindows_1250() : base() {}
diff --git a/mcs/class/I18N/West/CP1252.cs b/mcs/class/I18N/West/CP1252.cs
index ed1d13cf479..469e74e8e83 100644
--- a/mcs/class/I18N/West/CP1252.cs
+++ b/mcs/class/I18N/West/CP1252.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1252 : ByteEncoding
{
public CP1252()
@@ -404,7 +403,6 @@ public class CP1252 : ByteEncoding
}; // class CP1252
-[Serializable]
public class ENCwindows_1252 : CP1252
{
public ENCwindows_1252() : base() {}
diff --git a/mcs/class/I18N/West/CP1253.cs b/mcs/class/I18N/West/CP1253.cs
index c845b8eefa8..8bc9e365ca6 100644
--- a/mcs/class/I18N/West/CP1253.cs
+++ b/mcs/class/I18N/West/CP1253.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP1253 : ByteEncoding
{
public CP1253()
@@ -410,7 +409,6 @@ public class CP1253 : ByteEncoding
}; // class CP1253
-[Serializable]
public class ENCwindows_1253 : CP1253
{
public ENCwindows_1253() : base() {}
diff --git a/mcs/class/I18N/West/CP28592.cs b/mcs/class/I18N/West/CP28592.cs
index f69b0af8517..acf08b1a558 100644
--- a/mcs/class/I18N/West/CP28592.cs
+++ b/mcs/class/I18N/West/CP28592.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28592 : ByteEncoding
{
public CP28592()
@@ -476,7 +475,6 @@ public class CP28592 : ByteEncoding
}; // class CP28592
-[Serializable]
public class ENCiso_8859_2 : CP28592
{
public ENCiso_8859_2() : base() {}
diff --git a/mcs/class/I18N/West/CP28593.cs b/mcs/class/I18N/West/CP28593.cs
index 4ff26628f94..129bf71aa44 100644
--- a/mcs/class/I18N/West/CP28593.cs
+++ b/mcs/class/I18N/West/CP28593.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28593 : ByteEncoding
{
public CP28593()
@@ -324,7 +323,6 @@ public class CP28593 : ByteEncoding
}; // class CP28593
-[Serializable]
public class ENCiso_8859_3 : CP28593
{
public ENCiso_8859_3() : base() {}
diff --git a/mcs/class/I18N/West/CP28597.cs b/mcs/class/I18N/West/CP28597.cs
index 9a99c0c78a1..8fcd8f1d07e 100644
--- a/mcs/class/I18N/West/CP28597.cs
+++ b/mcs/class/I18N/West/CP28597.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28597 : ByteEncoding
{
public CP28597()
@@ -344,7 +343,6 @@ public class CP28597 : ByteEncoding
}; // class CP28597
-[Serializable]
public class ENCiso_8859_7 : CP28597
{
public ENCiso_8859_7() : base() {}
diff --git a/mcs/class/I18N/West/CP28605.cs b/mcs/class/I18N/West/CP28605.cs
index 0ef363d31ca..7a5cd2e60f1 100644
--- a/mcs/class/I18N/West/CP28605.cs
+++ b/mcs/class/I18N/West/CP28605.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP28605 : ByteEncoding
{
public CP28605()
@@ -331,7 +330,6 @@ public class CP28605 : ByteEncoding
}; // class CP28605
-[Serializable]
public class ENCiso_8859_15 : CP28605
{
public ENCiso_8859_15() : base() {}
diff --git a/mcs/class/I18N/West/CP437.cs b/mcs/class/I18N/West/CP437.cs
index a35b1378e32..209e561957b 100644
--- a/mcs/class/I18N/West/CP437.cs
+++ b/mcs/class/I18N/West/CP437.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP437 : ByteEncoding
{
public CP437()
@@ -686,7 +685,6 @@ public class CP437 : ByteEncoding
}; // class CP437
-[Serializable]
public class ENCibm437 : CP437
{
public ENCibm437() : base() {}
diff --git a/mcs/class/I18N/West/CP850.cs b/mcs/class/I18N/West/CP850.cs
index 7b322bac1a4..4383880a233 100644
--- a/mcs/class/I18N/West/CP850.cs
+++ b/mcs/class/I18N/West/CP850.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP850 : ByteEncoding
{
public CP850()
@@ -686,7 +685,6 @@ public class CP850 : ByteEncoding
}; // class CP850
-[Serializable]
public class ENCibm850 : CP850
{
public ENCibm850() : base() {}
diff --git a/mcs/class/I18N/West/CP860.cs b/mcs/class/I18N/West/CP860.cs
index af5bd798303..3c9534ee9cc 100644
--- a/mcs/class/I18N/West/CP860.cs
+++ b/mcs/class/I18N/West/CP860.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP860 : ByteEncoding
{
public CP860()
@@ -686,7 +685,6 @@ public class CP860 : ByteEncoding
}; // class CP860
-[Serializable]
public class ENCibm860 : CP860
{
public ENCibm860() : base() {}
diff --git a/mcs/class/I18N/West/CP861.cs b/mcs/class/I18N/West/CP861.cs
index 17c9aa5c776..9ff8367f9ab 100644
--- a/mcs/class/I18N/West/CP861.cs
+++ b/mcs/class/I18N/West/CP861.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP861 : ByteEncoding
{
public CP861()
@@ -686,7 +685,6 @@ public class CP861 : ByteEncoding
}; // class CP861
-[Serializable]
public class ENCibm861 : CP861
{
public ENCibm861() : base() {}
diff --git a/mcs/class/I18N/West/CP863.cs b/mcs/class/I18N/West/CP863.cs
index b09c6f01463..f6d4bd1c3eb 100644
--- a/mcs/class/I18N/West/CP863.cs
+++ b/mcs/class/I18N/West/CP863.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP863 : ByteEncoding
{
public CP863()
@@ -684,7 +683,6 @@ public class CP863 : ByteEncoding
}; // class CP863
-[Serializable]
public class ENCibm863 : CP863
{
public ENCibm863() : base() {}
diff --git a/mcs/class/I18N/West/CP865.cs b/mcs/class/I18N/West/CP865.cs
index c438b1f462a..404c5d27d5e 100644
--- a/mcs/class/I18N/West/CP865.cs
+++ b/mcs/class/I18N/West/CP865.cs
@@ -31,7 +31,6 @@ using System;
using System.Text;
using I18N.Common;
-[Serializable]
public class CP865 : ByteEncoding
{
public CP865()
@@ -686,7 +685,6 @@ public class CP865 : ByteEncoding
}; // class CP865
-[Serializable]
public class ENCibm865 : CP865
{
public ENCibm865() : base() {}
diff --git a/mcs/class/I18N/West/ChangeLog b/mcs/class/I18N/West/ChangeLog
index 7e6945f3bfd..7a118e64e92 100644
--- a/mcs/class/I18N/West/ChangeLog
+++ b/mcs/class/I18N/West/ChangeLog
@@ -1,10 +1,3 @@
-2006-01-17 Atsushi Enomoto <atsushi@ximian.com>
-
- * CP1252.cs CP28592.cs CP437.cs CP861.cs CP10079.cs CP863.cs
- CP865.cs CP28593.cs CP1253.cs CP28597.cs CP10000.cs CP850.cs
- CP860.cs CP28605.cs CP1250.cs (All) :
- Marked as [Serializable].
-
2006-01-12 Atsushi Enomoto <atsushi@ximian.com>
* CP10079.cs : oops, silly debugging code was remaining.
diff --git a/mcs/class/Makefile b/mcs/class/Makefile
index d447b782136..bc13daab450 100644
--- a/mcs/class/Makefile
+++ b/mcs/class/Makefile
@@ -48,7 +48,6 @@ common_dirs := \
Mono.GetOptions \
System.Web \
System.Web.Services \
- System.Web \
System.Runtime.Serialization.Formatters.Soap \
System.Runtime.Remoting \
System.Configuration.Install \
diff --git a/mcs/class/Microsoft.JScript/ChangeLog b/mcs/class/Microsoft.JScript/ChangeLog
index 9fd4d137888..046befe5782 100644
--- a/mcs/class/Microsoft.JScript/ChangeLog
+++ b/mcs/class/Microsoft.JScript/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-08 Cesar Lopez Nataren <cnataren@novell.com>
-
- * Makefile: No longer reference the C# compiler for namespace
- lookup.
-
2005-10-21 Carlos Alberto Cortez <calberto.cortez@gmail.com>
* SemanticAnalizer.cs, Import.cs: Update calls to the
diff --git a/mcs/class/Microsoft.JScript/Makefile b/mcs/class/Microsoft.JScript/Makefile
index 0a06ce38c1d..ca418d7dfeb 100644
--- a/mcs/class/Microsoft.JScript/Makefile
+++ b/mcs/class/Microsoft.JScript/Makefile
@@ -3,7 +3,14 @@ SUBDIRS =
include ../../build/rules.make
LIBRARY = Microsoft.JScript.dll
-LIB_MCS_FLAGS = -r:System.dll -r:Microsoft.Vsa.dll -debug+
+
+ifeq (net_2_0, $(PROFILE))
+COMPILER = gmcs.exe
+else
+COMPILER = mcs.exe
+endif
+
+LIB_MCS_FLAGS = -r:System.dll -r:Microsoft.Vsa.dll -r:$(topdir)/class/lib/$(PROFILE)/$(COMPILER) -debug+
TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:0618 -nowarn:219 -nowarn:169
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/ChangeLog b/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/ChangeLog
index 296d1f49e03..df2592b0a3d 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/ChangeLog
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-11 Evan Briones <evan@evanbriones.com>
-
- * VsaEngine.cs: Fixed out compiler flag
-
2005-10-11 Cesar Lopez Nataren <cnataren@novell.com>
* VsaEngine.cs: Parse all the files.
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/VsaEngine.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/VsaEngine.cs
index 1ff28c9361d..2e3db77b058 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/VsaEngine.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript.Vsa/VsaEngine.cs
@@ -79,13 +79,7 @@ namespace Microsoft.JScript.Vsa {
ScriptBlock [] blocks = parser.ParseAll ();
if (blocks != null) {
SemanticAnalyser.Run (blocks, (Assembly []) GetOption ("assemblies"));
- object outfile = GetOption ("out");
-
- if (outfile == null)
- CodeGenerator.Run ((string) GetOption ("first_source"), blocks);
- else
- CodeGenerator.Run ((string) outfile, blocks);
-
+ CodeGenerator.Run ((string) GetOption ("first_source"), blocks);
Console.WriteLine ("Compilation succeeded");
}
return false;
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog b/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog
index df7afd0967a..fb274d6277d 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog
@@ -1,51 +1,3 @@
-2006-01-18 Evan Briones <evan@evanbriones.com>
-
- * GlobalObject.cs: parsefloat in ms.net version returns NaN for text strings.
- If a match is found the regular expression returns its value. Otherwise the
- value of the object is retained. Previously it would return an empty string if
- nothing matched making. Double.TryParse would then return 0.
- Example of this returning NaN : var isnan = 'hello'; print (parseFloat(e));
- Example of it returning 0 : var iszero = 'string'; print (parseFloat (iszero));
- We behave like Rhino.
-
-2006-01-17 Cesar Lopez Nataren <cnataren@novell.com>
-
- * Parser.cs: Propagate the proper parent. Fixes #75166.
-
- * ast.cs: Added virtual method PropagateParent for recovering a
- lost parent or set it up properly if previously set to null.
-
- * Statement.cs (If,Jump,Break.PropagateParent): recover
- the proper parent.
-
- * expression.cs (Binary.emit_access): Emit late binding code for
- member's access that maps to MemberTypes (like Math.pow). Fixes
- #72440.
-
-2006-01-13 Cesar Lopez Nataren <cnataren@novell.com>
-
- * ForIn.cs: implement for (x in obj) logic.
-
-2006-01-11 Cesar Lopez Nataren <cnataren@novell.com>
-
- * Parser.cs (StatementHelper): Avoid null reference exception
- using the new EmptyAST node in case we have an empty stm (Token.SEMI).
-
-2006-01-10 Cesar Lopez Nataren <cnataren@novell.com>
-
- * Empty.cs: Add internal type EmptyAST.
-
- * Parser.cs: Avoid creating a ForIn object when we only have empty
- condition, test or increment expressions in the loop.
-
-2006-01-08 Cesar Lopez Nataren <cnataren@novell.com>
-
- * SemanticAnalizer.cs, Import.cs: No longer use the Mono.CSharp
- stuff; we lookup for the namespaces in our code (stolen from mcs
- source code though :)
-
- * Namespace.cs: Handle the namespace lookup here.
-
2005-12-15 Cesar Lopez Nataren <cnataren@novell.com>
* Parser.cs: Use the new assign ctr and Init method.
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/Empty.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/Empty.cs
index f5d1ebc3d4f..86dd83e5d09 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/Empty.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/Empty.cs
@@ -4,7 +4,6 @@
// Author: Cesar Octavio Lopez Nataren
//
// (C) 2003, Cesar Octavio Lopez Nataren, <cesar@ciencias.unam.mx>
-// Copyright (C) 2006 Novell Inc (http://novell.com)
//
//
@@ -34,21 +33,4 @@ namespace Microsoft.JScript {
public static readonly Empty Value = null;
}
-
- internal class EmptyAST : AST {
-
- internal EmptyAST ()
- : base (null, null)
- {
- }
-
- internal override bool Resolve (Environment env)
- {
- return true;
- }
-
- internal override void Emit (EmitContext ec)
- {
- }
- }
-}
+} \ No newline at end of file
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/ForIn.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/ForIn.cs
index 4c765872234..e51aa4bd9c5 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/ForIn.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/ForIn.cs
@@ -91,68 +91,57 @@ namespace Microsoft.JScript {
internal override void Emit (EmitContext ec)
{
- ILGenerator ig = ec.ig;
- bool varStm = lhs is VariableStatement;
- object var = null;
-
- if (varStm) {
+ ILGenerator ig;
+
+ if (lhs is VariableStatement) {
VariableStatement stm = (VariableStatement) lhs;
+ ig = ec.ig;
ig.Emit (OpCodes.Ldnull);
- var = TypeManager.Get (((VariableDeclaration) stm.var_decls [0]).id);
+ object var = TypeManager.Get (((VariableDeclaration) stm.var_decls [0]).id);
set_builder (ig, var);
- }
- if (obj != null)
- obj.Emit (ec);
- CodeGenerator.load_engine (InFunction, ig);
+ if (obj != null)
+ obj.Emit (ec);
+ CodeGenerator.load_engine (InFunction, ig);
- Type convert = typeof (Convert);
- ig.Emit (OpCodes.Call, convert.GetMethod ("ToForInObject"));
- ig.Emit (OpCodes.Call, typeof (ForIn).GetMethod ("JScriptGetEnumerator"));
- Type ienumerator = typeof (IEnumerator);
- LocalBuilder iter = ig.DeclareLocal (ienumerator);
- LocalBuilder current = ig.DeclareLocal (typeof (object));
+ Type convert = typeof (Convert);
+ ig.Emit (OpCodes.Call, convert.GetMethod ("ToForInObject"));
+ ig.Emit (OpCodes.Call, typeof (ForIn).GetMethod ("JScriptGetEnumerator"));
+ Type ienumerator = typeof (IEnumerator);
+ LocalBuilder iter = ig.DeclareLocal (ienumerator);
+ LocalBuilder current = ig.DeclareLocal (typeof (object));
- ig.Emit (OpCodes.Stloc, iter);
+ ig.Emit (OpCodes.Stloc, iter);
- Label init_loop = ig.DefineLabel ();
- Label move_next = ig.DefineLabel ();
- Label exit = ig.DefineLabel ();
+ Label init_loop = ig.DefineLabel ();
+ Label move_next = ig.DefineLabel ();
+ Label exit = ig.DefineLabel ();
- ig.Emit (OpCodes.Br, move_next);
- ig.MarkLabel (init_loop);
+ ig.Emit (OpCodes.Br, move_next);
+ ig.MarkLabel (init_loop);
- if (body != null)
- body.Emit (ec);
+ if (body != null)
+ body.Emit (ec);
- ig.MarkLabel (move_next);
+ ig.MarkLabel (move_next);
- ig.Emit (OpCodes.Ldloc, iter);
- ig.Emit (OpCodes.Callvirt, ienumerator.GetMethod ("MoveNext"));
+ ig.Emit (OpCodes.Ldloc, iter);
+ ig.Emit (OpCodes.Callvirt, ienumerator.GetMethod ("MoveNext"));
- ig.Emit (OpCodes.Brfalse, exit);
+ ig.Emit (OpCodes.Brfalse, exit);
- ig.Emit (OpCodes.Ldloc, iter);
- ig.Emit (OpCodes.Callvirt, ienumerator.GetProperty ("Current").GetGetMethod ());
- ig.Emit (OpCodes.Stloc, current);
- ig.Emit (OpCodes.Ldloc, current);
+ ig.Emit (OpCodes.Ldloc, iter);
+ ig.Emit (OpCodes.Callvirt, ienumerator.GetProperty ("Current").GetGetMethod ());
+ ig.Emit (OpCodes.Stloc, current);
+ ig.Emit (OpCodes.Ldloc, current);
- if (varStm)
set_builder (ig, var);
- else {
- if (lhs is Expression) {
- AST ast = ((Expression) lhs).Last;
- if (ast is Identifier)
- ((Identifier) ast).EmitStore (ec);
- else
- throw new NotImplementedException ();
- } else
- throw new NotImplementedException ();
- }
-
- ig.Emit (OpCodes.Br, init_loop);
- ig.MarkLabel (exit);
+
+ ig.Emit (OpCodes.Br, init_loop);
+ ig.MarkLabel (exit);
+ } else
+ throw new NotImplementedException ();
}
void set_builder (ILGenerator ig, object builder)
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/GlobalObject.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/GlobalObject.cs
index a0662db34bb..7deb17ee696 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/GlobalObject.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/GlobalObject.cs
@@ -455,9 +455,7 @@ namespace Microsoft.JScript {
if (string_obj.Trim () == "")
return 0;
- // Would return an empty string if regular expression match returned 0.
- object o = float_re.Match (string_obj).Value;
- string_obj = (o == "") ? string_obj : (string) o;
+ string_obj = float_re.Match (string_obj).Value;
double result;
if (Double.TryParse (string_obj, NumberStyles.Float, CultureInfo.InvariantCulture, out result))
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/Import.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/Import.cs
index 5fe4da208b5..536143253d2 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/Import.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/Import.cs
@@ -55,7 +55,7 @@ namespace Microsoft.JScript {
"error JS1229: The import statement is not valid in this context";
throw new Exception (err);
}
- return Namespace.IsNamespace (name);
+ return Mono.CSharp.RootNamespace.Global.IsNamespace (name);
}
internal override void Emit (EmitContext ec)
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/Namespace.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/Namespace.cs
index 58f6fc1a6a7..421e5c3cc17 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/Namespace.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/Namespace.cs
@@ -29,59 +29,15 @@
//
using System;
-using System.Reflection;
using Microsoft.JScript.Vsa;
-using System.Collections;
namespace Microsoft.JScript {
- public sealed class Namespace {
-
- static Hashtable namespaces;
- static string fullname;
-
- public Namespace (string name)
- {
- fullname = name;
- }
-
- static Namespace ()
- {
- namespaces = new Hashtable ();
- }
-
- internal static void GetNamespace (string name, bool create)
- {
- int pos = name.IndexOf ('.');
-
- Namespace ns;
- string first;
- if (pos >= 0)
- first = name.Substring (0, pos);
- else
- first = name;
-
- ns = (Namespace) namespaces [first];
- if (ns == null) {
- if (!create)
- throw new Exception ("unknown case");
-
- ns = new Namespace (first);
- namespaces.Add (first, ns);
- }
-
- if (pos >= 0)
- Namespace.GetNamespace (name.Substring (pos + 1), create);
- }
-
+ public sealed class Namespace
+ {
public static Namespace GetNamespace (string name, VsaEngine engine)
{
throw new NotImplementedException ();
}
-
- internal static bool IsNamespace (string name)
- {
- return namespaces.Contains (name);
- }
}
}
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs
index a39eb20ce96..0c4ae3ce610 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/Parser.cs
@@ -597,7 +597,7 @@ namespace Microsoft.JScript {
tt = ts.PeekToken ();
if (tt == Token.SEMI)
- init = new EmptyAST ();
+ init = null;
else {
if (tt == Token.VAR) {
// set init to a var list or initial
@@ -616,7 +616,7 @@ namespace Microsoft.JScript {
decompiler.AddToken (Token.SEMI);
if (ts.PeekToken () == Token.SEMI)
- cond = new EmptyAST (); // no loop condition
+ cond = null; // no loop condition
else
cond = Expr (parent, false);
@@ -624,7 +624,7 @@ namespace Microsoft.JScript {
decompiler.AddToken (Token.SEMI);
if (ts.PeekToken () == Token.RP)
- incr = new EmptyAST ();
+ incr = null;
else
incr = Expr (parent, false);
}
@@ -639,7 +639,7 @@ namespace Microsoft.JScript {
pn = new ForIn (parent, init, cond, body, new Location (ts.SourceName, ts.LineNumber));
else
pn = new For (parent, init, cond, incr, body, new Location (ts.SourceName, ts.LineNumber));
- body.PropagateParent (pn);
+ body.parent = pn;
} else if (tt == Token.TRY) {
int line_number = ts.LineNumber;
AST try_block;
@@ -770,7 +770,8 @@ namespace Microsoft.JScript {
pn = Statements (parent);
MustMatchToken (Token.RC, "msg.no.brace.block");
} else if (tt == Token.ERROR || tt == Token.EOL || tt == Token.SEMI) {
- pn = new EmptyAST ();
+ // FIXME:
+ pn = null;
skip_semi = true;
} else if (tt == Token.FUNCTION) {
pn = Function (parent, FunctionType.ExpressionStatement);
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/SemanticAnalizer.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/SemanticAnalizer.cs
index 7c936da0ace..97e3f28b0a6 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/SemanticAnalizer.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/SemanticAnalizer.cs
@@ -142,10 +142,7 @@ namespace Microsoft.JScript {
internal static bool Run (ScriptBlock [] blocks, Assembly [] ref_items)
{
assemblies = ref_items;
-
- if (assemblies != null && assemblies.Length > 0)
- ComputeNamespaces ();
-
+ ComputeNamespaces ();
env = new Environment (blocks);
bool r = true;
@@ -404,7 +401,7 @@ namespace Microsoft.JScript {
foreach (string ns in namespaces){
if (ns == "")
continue;
- Namespace.GetNamespace (ns, true);
+ Mono.CSharp.RootNamespace.Global.GetNamespace (ns, true);
}
}
} else {
@@ -415,7 +412,7 @@ namespace Microsoft.JScript {
string ns = t.Namespace;
if (ns == null || cache.Contains (ns))
continue;
- Namespace.GetNamespace (ns, true);
+ Mono.CSharp.RootNamespace.Global.GetNamespace (ns, true);
cache.Add (ns, null);
}
}
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs
index 9b8a8251e1b..a7db3481fa8 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs
@@ -126,13 +126,6 @@ namespace Microsoft.JScript {
false_stm.Emit (ec);
ig.MarkLabel (merge_lbl);
}
-
- internal override void PropagateParent (AST parent)
- {
- base.PropagateParent (parent);
- true_stm.PropagateParent (this);
- false_stm.PropagateParent (this);
- }
}
abstract class Jump : AST {
@@ -156,11 +149,6 @@ namespace Microsoft.JScript {
throw new Exception ("error JS1026: Label not found");
return true;
}
-
- internal override void PropagateParent (AST parent)
- {
- base.PropagateParent (parent);
- }
}
internal class Continue : Jump {
@@ -214,11 +202,6 @@ namespace Microsoft.JScript {
}
ec.ig.Emit (OpCodes.Br, (binding as Labelled).EndAddrs);
}
-
- internal override void PropagateParent (AST parent)
- {
- base.PropagateParent (parent);
- }
}
internal class NotVoidReturnEventArgs : EventArgs {
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/ast.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/ast.cs
index 0753e03de1b..81c891e570b 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/ast.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/ast.cs
@@ -104,11 +104,6 @@ namespace Microsoft.JScript {
}
}
-
- internal virtual void PropagateParent (AST parent)
- {
- this.parent = parent;
- }
}
public abstract class Function : AST
diff --git a/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs b/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs
index 19da2e9c590..8313bbe426a 100644
--- a/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs
+++ b/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs
@@ -381,24 +381,7 @@ namespace Microsoft.JScript {
ig.Emit (OpCodes.Call, decl_type.GetProperty (property.Name).GetGetMethod ());
break;
default:
- Type lb_type = typeof (LateBinding);
- LocalBuilder lateBinder = ig.DeclareLocal (lb_type);
- Identifier prop = (Identifier) prop_name;
-
- ig.Emit (OpCodes.Ldstr, prop.name.Value);
- ig.Emit (OpCodes.Newobj, lb_type.GetConstructor (new Type [] { typeof (string)} ));
- ig.Emit (OpCodes.Stloc, lateBinder);
- ig.Emit (OpCodes.Ldloc, lateBinder);
- ig.Emit (OpCodes.Dup);
-
- Identifier obj_name = (Identifier) obj;
-
- ig.Emit (OpCodes.Call, typeof (GlobalObject).GetProperty (obj_name.name.Value).GetGetMethod ());
- ig.Emit (OpCodes.Stfld, lb_type.GetField ("obj"));
- ig.Emit (OpCodes.Call, lb_type.GetMethod ("GetNonMissingValue"));
-
- break;
-
+ throw new NotImplementedException ();
}
emit_box (ig, minfo);
}
diff --git a/mcs/class/Microsoft.JScript/Test/Mozilla/ChangeLog b/mcs/class/Microsoft.JScript/Test/Mozilla/ChangeLog
index 13c5d363b81..0d4fd9102a8 100644
--- a/mcs/class/Microsoft.JScript/Test/Mozilla/ChangeLog
+++ b/mcs/class/Microsoft.JScript/Test/Mozilla/ChangeLog
@@ -1,16 +1,3 @@
-2006-01-13 Cesar Lopez Nataren <cnataren@novell.com>
-
- * mjs-most.tests: Enable ecma/FunctionObjects/15.3.3.1-2.js,
- ecma/Math/15.8.1.js, ecma/Number/15.7.3.1-3.js,
- ecma/Number/15.7.3.2-4.js, ecma/Number/15.7.3.3-4.js,
- ecma/Number/15.7.3.4-4.js, ecma/Number/15.7.3.5-4.js,
- ecma/Number/15.7.3.6-4.js, ecma/Statements/12.6.3-1.js,
- ecma/Statements/12.6.3-11.js, ecma/String/15.5.3.1-1.js,
- ecma/String/15.5.4.8-3.js and js1_2/regress/regress-7703.js.
-
- * mjs-most.fail: Delete ecma/Statements/12.6.3-10.js and
- ecma/Statements/12.6.3-19.js as they no longer fail.
-
2005-12-21 Cesar Lopez Nataren <cnataren@novell.com>
* mjs-most.tests: Enable js1_2/Array/tostring_1.js,
diff --git a/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.fail b/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.fail
index 7f6e310f8c4..58c52a5afdd 100644
--- a/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.fail
+++ b/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.fail
@@ -48,6 +48,10 @@ js1_2/function/definition-1.js
js1_3/Script/script-001.js
js1_4/Functions/function-001.js
+# System.NotImplementedException: The requested feature is not implemented. (ForIn:Emit)
+ecma/Statements/12.6.3-10.js
+ecma/Statements/12.6.3-19.js
+
# System.NotImplementedException: The requested feature is not implemented. (Convert:ToForInObject)
ecma/String/15.5.5.1.js
diff --git a/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.tests b/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.tests
index 633c2f5f902..c92f34140c6 100644
--- a/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.tests
+++ b/mcs/class/Microsoft.JScript/Test/Mozilla/mjs-most.tests
@@ -57,7 +57,7 @@ ecma/Array/15.4.4.js
# Eval::JScriptEvaluate throws NotImplementedException
#ecma/Array/15.4.5.1-1.js
ecma/Array/15.4.5.1-2.js
-# Needs eval
+# Needs ToForInObject
#ecma/Array/15.4.5.2-1.js
# Eval::JScriptEvaluate throws NotImplementedException
#ecma/Array/15.4.5.2-2.js
@@ -376,7 +376,8 @@ ecma/Expressions/11.6.3.js
# syntax error
#ecma/FunctionObjects/15.3.2.1-3.js
ecma/FunctionObjects/15.3.3.1-1.js
-ecma/FunctionObjects/15.3.3.1-2.js
+# Needs for in
+#ecma/FunctionObjects/15.3.3.1-2.js
ecma/FunctionObjects/15.3.3.1-3.js
# invalid IL
#ecma/FunctionObjects/15.3.3.1-4.js
@@ -522,7 +523,8 @@ ecma/Math/15.8-2-n.js
#ecma/Math/15.8.1.8-1.js
#ecma/Math/15.8.1.8-2.js
ecma/Math/15.8.1.8-3.js
-ecma/Math/15.8.1.js
+# Needs for in
+#ecma/Math/15.8.1.js
# NotImplementedException from Binary:emit_access
#ecma/Math/15.8.2.1.js
#ecma/Math/15.8.2.10.js
@@ -554,30 +556,36 @@ ecma/Number/15.7.2.js
# Invalid IL
#ecma/Number/15.7.3.1-1.js
#ecma/Number/15.7.3.1-2.js
-ecma/Number/15.7.3.1-3.js
+# Needs for in
+#ecma/Number/15.7.3.1-3.js
ecma/Number/15.7.3.2-1.js
# Invalid IL
#ecma/Number/15.7.3.2-2.js
#ecma/Number/15.7.3.2-3.js
-ecma/Number/15.7.3.2-4.js
+# Needs for in
+#ecma/Number/15.7.3.2-4.js
ecma/Number/15.7.3.3-1.js
ecma/Number/15.7.3.3-2.js
#ecma/Number/15.7.3.3-3.js
-ecma/Number/15.7.3.3-4.js
+# Needs for in
+#ecma/Number/15.7.3.3-4.js
ecma/Number/15.7.3.4-1.js
# Invalid IL
#ecma/Number/15.7.3.4-2.js
#ecma/Number/15.7.3.4-3.js
-ecma/Number/15.7.3.4-4.js
+# Needs for in
+#ecma/Number/15.7.3.4-4.js
ecma/Number/15.7.3.5-1.js
ecma/Number/15.7.3.5-2.js
#ecma/Number/15.7.3.5-3.js
-ecma/Number/15.7.3.5-4.js
+# Needs for in
+#ecma/Number/15.7.3.5-4.js
ecma/Number/15.7.3.6-1.js
# Invalid IL
#ecma/Number/15.7.3.6-2.js
#ecma/Number/15.7.3.6-3.js
-ecma/Number/15.7.3.6-4.js
+# Needs for in
+#ecma/Number/15.7.3.6-4.js
ecma/Number/15.7.3.js
ecma/Number/15.7.4-1.js
ecma/Number/15.7.4.1.js
@@ -621,7 +629,7 @@ ecma/Statements/12.2-1.js
ecma/Statements/12.5-2.js
# Invalid IL
#ecma/Statements/12.6.1-1.js
-# invalid IL, PostOrPrefixExpression.Emit error
+# Needs ForIn
#ecma/Statements/12.6.2-1.js
# NullReferenceException from For:Resolve
#ecma/Statements/12.6.2-2.js
@@ -635,9 +643,11 @@ ecma/Statements/12.5-2.js
ecma/Statements/12.6.2-8.js
# syntax error
#ecma/Statements/12.6.2-9-n.js
-ecma/Statements/12.6.3-1.js
+# Needs for in
+#ecma/Statements/12.6.3-1.js
ecma/Statements/12.6.3-10.js
-ecma/Statements/12.6.3-11.js
+# Needs for in
+#ecma/Statements/12.6.3-11.js
#ecma/Statements/12.6.3-12.js
ecma/Statements/12.6.3-19.js
# syntax error
@@ -659,7 +669,8 @@ ecma/Statements/12.6.3-19.js
#ecma/Statements/12.9-1-n.js
ecma/String/15.5.1.js
ecma/String/15.5.2.js
-ecma/String/15.5.3.1-1.js
+# Needs for in
+#ecma/String/15.5.3.1-1.js
# Invalid IL
#ecma/String/15.5.3.1-2.js
ecma/String/15.5.3.1-3.js
@@ -722,7 +733,8 @@ ecma/String/15.5.4.7-3.js
# Invalid IL
#ecma/String/15.5.4.8-1.js
ecma/String/15.5.4.8-2.js
-ecma/String/15.5.4.8-3.js
+# Needs for in
+#ecma/String/15.5.4.8-3.js
# Invalid IL
#ecma/String/15.5.4.9-1.js
ecma/String/15.5.4.js
@@ -1036,7 +1048,8 @@ js1_2/regexp/toString.js
js1_2/regexp/vertical_bar.js
js1_2/regexp/whitespace.js
js1_2/regexp/word_boundary.js
-js1_2/regress/regress-7703.js
+# Need for in
+#js1_2/regress/regress-7703.js
js1_2/statements/break.js
# infinite loop caused by bad generated IL.
#js1_2/statements/continue.js
diff --git a/mcs/class/Mono.Cairo/ChangeLog b/mcs/class/Mono.Cairo/ChangeLog
index 31f1ed5a8d9..6c20cfe8ee1 100644
--- a/mcs/class/Mono.Cairo/ChangeLog
+++ b/mcs/class/Mono.Cairo/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-17 Alp Toker <alp@atoker.com>
-
- * Samples/x11/compile.sh: Remove unused gtk-sharp reference
-
2005-12-19 Wade Berrier <wberrier@novell.com>
* Mono.Cairo/Makefile: Fix EXTRA_DIST to include samples
diff --git a/mcs/class/Mono.Cairo/Samples/x11/compile.sh b/mcs/class/Mono.Cairo/Samples/x11/compile.sh
index bf866e6d61e..70de6c64bdf 100755
--- a/mcs/class/Mono.Cairo/Samples/x11/compile.sh
+++ b/mcs/class/Mono.Cairo/Samples/x11/compile.sh
@@ -1,12 +1,12 @@
#!/bin/bash
-mcs -r:System.Drawing -r:Mono.Cairo arc.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo arcneg.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo clip.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo clip_img.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo curve_rect.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo curve_to.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo fillstroke.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo gradient.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo image.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo image_pattern.cs x11.cs
-mcs -r:System.Drawing -r:Mono.Cairo text.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp arc.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp arcneg.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp clip.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp clip_img.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp curve_rect.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp curve_to.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp fillstroke.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp gradient.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp image.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp image_pattern.cs x11.cs
+mcs -r:System.Drawing -r:Mono.Cairo -pkg:gtk-sharp text.cs x11.cs
diff --git a/mcs/class/Mono.Posix/Mono.Unix.Native/ChangeLog b/mcs/class/Mono.Posix/Mono.Unix.Native/ChangeLog
index 16bbfc10070..5c8e0be1788 100644
--- a/mcs/class/Mono.Posix/Mono.Unix.Native/ChangeLog
+++ b/mcs/class/Mono.Posix/Mono.Unix.Native/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-10 Raja R Harinath <rharinath@novell.com>
-
- * Syscall.cs (sys_futimes): Remove buggy custom marshaller on 'fd' parameter.
-
2005-01-09 Jonathan Pryor <jonpryor@vt.edu>
* NativeConvert.cs: s/IsType/IsSet/g: deal with UnixFileSystemInfo method
diff --git a/mcs/class/Mono.Posix/Mono.Unix/Catalog.cs b/mcs/class/Mono.Posix/Mono.Unix/Catalog.cs
index d835fec4624..1ba51307f99 100644
--- a/mcs/class/Mono.Posix/Mono.Unix/Catalog.cs
+++ b/mcs/class/Mono.Posix/Mono.Unix/Catalog.cs
@@ -55,11 +55,11 @@ namespace Mono.Unix {
"UTF-8", out iutf8);
try {
if (bindtextdomain (ipackage, ilocaledir) == IntPtr.Zero)
- throw new UnixIOException (Native.Errno.ENOMEM);
+ throw new OutOfMemoryException ("bindtextdomain");
if (bind_textdomain_codeset (ipackage, iutf8) == IntPtr.Zero)
- throw new UnixIOException (Native.Errno.ENOMEM);
+ throw new OutOfMemoryException ("bind_textdomain_codeset");
if (textdomain (ipackage) == IntPtr.Zero)
- throw new UnixIOException (Native.Errno.ENOMEM);
+ throw new OutOfMemoryException ("textdomain");
}
finally {
UnixMarshal.FreeHeap (ipackage);
diff --git a/mcs/class/Mono.Posix/Mono.Unix/ChangeLog b/mcs/class/Mono.Posix/Mono.Unix/ChangeLog
index 00d53736d4c..f797281a719 100644
--- a/mcs/class/Mono.Posix/Mono.Unix/ChangeLog
+++ b/mcs/class/Mono.Posix/Mono.Unix/ChangeLog
@@ -1,32 +1,9 @@
-2006-01-15 Jonathan Pryor <jonpryor@vt.edu>
-
- * UnixUserInfo.cs: The UnixUserInfo(Native.Passwd) constructor and
- ToPasswd() should clone the underlying Native.Passwd, so
- that it doesn't get changed from underneath it.
- * UnixGroupInfo.cs: The UnixGroupInfo(Native.Group) constructor should also
- clone the provided Native.Group instance.
-
-2006-01-14 Jonathan Pryor <jonpryor@vt.edu>
-
- * UnixGroupInfo.cs: ToGroup() should clone the underlying Native.Group, so
- that it doesn't get changed from underneath it.
-
-2006-01-13 Jonathan Pryor <jonpryor@vt.edu>
-
- * Catalog.cs, UnixMarshal.cs: Throw `UnixIOException(Native.Errno.ENOMEM)`
- instead of System.OutOfMemoryException. OOME should be reserved for use
- by the CLR (according to FxDG).
-
-2006-01-12 Jonathan Pryor <jonpryor@vt.edu>
-
- * UnixPath.cs: Add ReadLink() and TryReadLink() methods.
-
2006-01-12 Miguel de Icaza <miguel@novell.com>
* PeerCred.cs: Do not define PeerCredData as this is a structure
known to the runtime. Instead use the Mono.Posix.PeerCredData
internal class.
-
+
2006-01-10 Jonathan Pryor <jonpryor@vt.edu>
* Catalog.cs: Don't use
diff --git a/mcs/class/Mono.Posix/Mono.Unix/UnixGroupInfo.cs b/mcs/class/Mono.Posix/Mono.Unix/UnixGroupInfo.cs
index 50911f7d935..c032c02e79c 100644
--- a/mcs/class/Mono.Posix/Mono.Unix/UnixGroupInfo.cs
+++ b/mcs/class/Mono.Posix/Mono.Unix/UnixGroupInfo.cs
@@ -57,19 +57,7 @@ namespace Mono.Unix {
public UnixGroupInfo (Native.Group group)
{
- this.group = CopyGroup (group);
- }
-
- private static Native.Group CopyGroup (Native.Group group)
- {
- Native.Group g = new Native.Group ();
-
- g.gr_gid = group.gr_gid;
- g.gr_mem = group.gr_mem;
- g.gr_name = group.gr_name;
- g.gr_passwd = group.gr_passwd;
-
- return g;
+ this.group = group;
}
public string GroupName {
@@ -116,7 +104,7 @@ namespace Mono.Unix {
public Native.Group ToGroup ()
{
- return CopyGroup (group);
+ return group;
}
public static UnixGroupInfo[] GetLocalGroups ()
diff --git a/mcs/class/Mono.Posix/Mono.Unix/UnixMarshal.cs b/mcs/class/Mono.Posix/Mono.Unix/UnixMarshal.cs
index 0a2d64c0b12..7b8d8c85cb2 100644
--- a/mcs/class/Mono.Posix/Mono.Unix/UnixMarshal.cs
+++ b/mcs/class/Mono.Posix/Mono.Unix/UnixMarshal.cs
@@ -321,7 +321,7 @@ namespace Mono.Unix {
IntPtr mem = AllocHeap (marshal.Length);
if (mem == IntPtr.Zero)
- throw new UnixIOException (Native.Errno.ENOMEM);
+ throw new OutOfMemoryException ();
bool copied = false;
try {
diff --git a/mcs/class/Mono.Posix/Mono.Unix/UnixPath.cs b/mcs/class/Mono.Posix/Mono.Unix/UnixPath.cs
index a7836db0bf2..271c4fe92cb 100644
--- a/mcs/class/Mono.Posix/Mono.Unix/UnixPath.cs
+++ b/mcs/class/Mono.Posix/Mono.Unix/UnixPath.cs
@@ -224,44 +224,6 @@ namespace Mono.Unix {
} while (true);
}
- // Read the specified symbolic link. If the file isn't a symbolic link,
- // return null; otherwise, return the contents of the symbolic link.
- //
- // readlink(2) is horribly evil, as there is no way to query how big the
- // symlink contents are. Consequently, it's trial and error...
- private static string ReadSymbolicLink (string path, out Native.Errno errno)
- {
- errno = (Native.Errno) 0;
- StringBuilder buf = new StringBuilder (256);
- do {
- int r = Native.Syscall.readlink (path, buf);
- if (r < 0) {
- errno = Native.Stdlib.GetLastError ();
- return null;
- }
- else if (r == buf.Capacity) {
- buf.Capacity *= 2;
- }
- else
- return buf.ToString (0, r);
- } while (true);
- }
-
- public static string TryReadLink (string path)
- {
- Native.Errno errno;
- return ReadSymbolicLink (path, out errno);
- }
-
- public static string ReadLink (string path)
- {
- Native.Errno errno;
- path = ReadSymbolicLink (path, out errno);
- if (errno != 0)
- UnixMarshal.ThrowExceptionForError (errno);
- return path;
- }
-
public static bool IsPathRooted (string path)
{
if (path == null || path.Length == 0)
diff --git a/mcs/class/Mono.Posix/Mono.Unix/UnixUserInfo.cs b/mcs/class/Mono.Posix/Mono.Unix/UnixUserInfo.cs
index 3379ebf863d..24488690f69 100644
--- a/mcs/class/Mono.Posix/Mono.Unix/UnixUserInfo.cs
+++ b/mcs/class/Mono.Posix/Mono.Unix/UnixUserInfo.cs
@@ -67,22 +67,7 @@ namespace Mono.Unix {
public UnixUserInfo (Native.Passwd passwd)
{
- this.passwd = CopyPasswd (passwd);
- }
-
- private static Native.Passwd CopyPasswd (Native.Passwd pw)
- {
- Native.Passwd p = new Native.Passwd ();
-
- p.pw_name = pw.pw_name;
- p.pw_passwd = pw.pw_passwd;
- p.pw_uid = pw.pw_uid;
- p.pw_gid = pw.pw_gid;
- p.pw_gecos = pw.pw_gecos;
- p.pw_dir = pw.pw_dir;
- p.pw_shell = pw.pw_shell;
-
- return p;
+ this.passwd = passwd;
}
public string UserName {
@@ -164,7 +149,7 @@ namespace Mono.Unix {
public Native.Passwd ToPasswd ()
{
- return CopyPasswd (passwd);
+ return passwd;
}
public static UnixUserInfo[] GetLocalUsers ()
diff --git a/mcs/class/System.Configuration/System.Configuration.Internal/ChangeLog b/mcs/class/System.Configuration/System.Configuration.Internal/ChangeLog
index 64f51ea33f8..9f33abe4cb2 100644
--- a/mcs/class/System.Configuration/System.Configuration.Internal/ChangeLog
+++ b/mcs/class/System.Configuration/System.Configuration.Internal/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-16 Chris Toshok <toshok@ximian.com>
-
- * DelegatingConfigHost.cs: flesh out the rest of this
- implementation.
-
2005-10-07 Chris Toshok <toshok@ximian.com>
* IInternalConfigHost.cs: add some missing properties/methods.
diff --git a/mcs/class/System.Configuration/System.Configuration.Internal/DelegatingConfigHost.cs b/mcs/class/System.Configuration/System.Configuration.Internal/DelegatingConfigHost.cs
index a3242ac294e..594213b588a 100644
--- a/mcs/class/System.Configuration/System.Configuration.Internal/DelegatingConfigHost.cs
+++ b/mcs/class/System.Configuration/System.Configuration.Internal/DelegatingConfigHost.cs
@@ -139,7 +139,7 @@ namespace System.Configuration.Internal
public virtual bool IsInitDelayed (IInternalConfigRecord configRecord)
{
- return host.IsInitDelayed (configRecord);
+ throw new NotImplementedException ();
}
public virtual bool IsFile (string streamName)
@@ -149,7 +149,7 @@ namespace System.Configuration.Internal
public bool IsFullTrustSectionWithoutAptcaAllowed (IInternalConfigRecord configRecord)
{
- return host.IsFullTrustSectionWithoutAptcaAllowed (configRecord);
+ throw new NotImplementedException ();
}
public virtual bool IsLocationApplicable (string configPath)
@@ -158,17 +158,19 @@ namespace System.Configuration.Internal
}
public bool IsRemote {
- get { return host.IsRemote; }
+ get {
+ throw new NotImplementedException ();
+ }
}
public bool IsSecondaryRoot (string configPath)
{
- return host.IsSecondaryRoot (configPath);
+ throw new NotImplementedException ();
}
public bool IsTrustedConfigPath (string configPath)
{
- return host.IsTrustedConfigPath (configPath);
+ throw new NotImplementedException ();
}
public virtual Stream OpenStreamForRead (string streamName)
@@ -178,7 +180,7 @@ namespace System.Configuration.Internal
public Stream OpenStreamForRead (string streamName, bool assertPermissions)
{
- return host.OpenStreamForRead (streamName, assertPermissions);
+ throw new NotImplementedException ();
}
public virtual Stream OpenStreamForWrite (string streamName, string templateStreamName, ref object writeContext)
@@ -188,7 +190,7 @@ namespace System.Configuration.Internal
public Stream OpenStreamForWrite (string streamName, string templateStreamName, ref object writeContext, bool assertPermissions)
{
- return host.OpenStreamForWrite (streamName, templateStreamName, ref writeContext, assertPermissions);
+ throw new NotImplementedException ();
}
public virtual bool PrefetchAll (string configPath, string streamName)
@@ -203,7 +205,7 @@ namespace System.Configuration.Internal
public virtual void RequireCompleteInit (IInternalConfigRecord configRecord)
{
- host.RequireCompleteInit (configRecord);
+ throw new NotImplementedException ();
}
public virtual object StartMonitoringStreamForChanges (string streamName, StreamChangeCallback callback)
@@ -228,7 +230,7 @@ namespace System.Configuration.Internal
public void WriteCompleted (string streamName, bool success, object writeContext, bool assertPermissions)
{
- host.WriteCompleted (streamName, success, writeContext, assertPermissions);
+ throw new NotImplementedException ();
}
public virtual bool SupportsChangeNotifications {
diff --git a/mcs/class/System.Configuration/System.Configuration/AppSettingsSection.cs b/mcs/class/System.Configuration/System.Configuration/AppSettingsSection.cs
index d98fe021ae0..046e2d5f453 100644
--- a/mcs/class/System.Configuration/System.Configuration/AppSettingsSection.cs
+++ b/mcs/class/System.Configuration/System.Configuration/AppSettingsSection.cs
@@ -29,7 +29,6 @@
#if NET_2_0
using System;
-using System.ComponentModel;
using System.Collections.Specialized;
using System.Xml;
using System.IO;
@@ -44,10 +43,14 @@ namespace System.Configuration {
static AppSettingsSection ()
{
- _propFile = new ConfigurationProperty ("file", typeof(string), "",
- new StringConverter(), null, ConfigurationPropertyOptions.None);
- _propSettings = new ConfigurationProperty ("", typeof(KeyValueConfigurationCollection), null,
- null, null, ConfigurationPropertyOptions.IsDefaultCollection);
+ _propFile = new ConfigurationProperty ("file",
+ typeof(string),
+ "",
+ ConfigurationPropertyOptions.None);
+ _propSettings = new ConfigurationProperty ("",
+ typeof(KeyValueConfigurationCollection),
+ null,
+ ConfigurationPropertyOptions.IsDefaultCollection);
_properties = new ConfigurationPropertyCollection ();
@@ -119,18 +122,10 @@ namespace System.Configuration {
}
}
+ [MonoTODO]
protected internal override object GetRuntimeObject ()
{
- KeyValueInternalCollection col = new KeyValueInternalCollection ();
-
- foreach (string key in Settings.AllKeys) {
- KeyValueConfigurationElement ele = Settings[key];
- col.Add (ele.Key, ele.Value);
- }
-
- col.SetReadOnly ();
-
- return col;
+ return base.GetRuntimeObject();
}
}
}
diff --git a/mcs/class/System.Configuration/System.Configuration/ChangeLog b/mcs/class/System.Configuration/System.Configuration/ChangeLog
index 3dd409014f2..9d74a93cada 100644
--- a/mcs/class/System.Configuration/System.Configuration/ChangeLog
+++ b/mcs/class/System.Configuration/System.Configuration/ChangeLog
@@ -1,31 +1,3 @@
-2006-01-13 Chris Toshok <toshok@ximian.com>
-
- * AppSettingsSection.cs (GetRuntimeObject): only access
- Settings[key] once per iteration.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * ConfigurationManager.cs (AppSettings): just return
- AppSettingsSection.GetRuntimeObject() here.
-
- * AppSettingsSection.cs: fix the "file" property to match dumper
- output.
- (GetRuntimeObject): this returns a KeyValueInternalCollection in
- MS's implementation.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * ElementInformation.cs (Validator): if propertyInfo == null,
- return a DefaultValidator instance.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * AppSettingsSection.cs (.cctor): specify null for
- validator/converter.
-
- * ProtectedProviderSettings.cs (.cctor): specify null for
- validator/converter.
-
2006-01-03 Chris Toshok <toshok@ximian.com>
* Configuration.cs (SaveAs): open with FileMode.OpenOrCreate so we
diff --git a/mcs/class/System.Configuration/System.Configuration/ConfigurationManager.cs b/mcs/class/System.Configuration/System.Configuration/ConfigurationManager.cs
index 35241f264a7..0bf8c6c5aff 100644
--- a/mcs/class/System.Configuration/System.Configuration/ConfigurationManager.cs
+++ b/mcs/class/System.Configuration/System.Configuration/ConfigurationManager.cs
@@ -167,7 +167,15 @@ namespace System.Configuration {
public static NameValueCollection AppSettings {
get {
AppSettingsSection appsettings = (AppSettingsSection) GetSection ("appSettings");
- return (NameValueCollection)appsettings.GetRuntimeObject ();
+ KeyValueInternalCollection col = new KeyValueInternalCollection ();
+
+ foreach (string key in appsettings.Settings.AllKeys) {
+ col.Add (appsettings.Settings[key].Key, appsettings.Settings[key].Value);
+ }
+
+ col.SetReadOnly ();
+
+ return col;
}
}
diff --git a/mcs/class/System.Configuration/System.Configuration/ElementInformation.cs b/mcs/class/System.Configuration/System.Configuration/ElementInformation.cs
index 6f82071bd90..d6c628d2cc3 100644
--- a/mcs/class/System.Configuration/System.Configuration/ElementInformation.cs
+++ b/mcs/class/System.Configuration/System.Configuration/ElementInformation.cs
@@ -36,7 +36,7 @@ namespace System.Configuration
PropertyInformation propertyInfo;
ConfigurationElement owner;
PropertyInformationCollection properties;
-
+
internal ElementInformation (ConfigurationElement owner, PropertyInformation propertyInfo)
{
this.propertyInfo = propertyInfo;
@@ -76,7 +76,7 @@ namespace System.Configuration
}
public ConfigurationValidatorBase Validator {
- get { return propertyInfo != null ? propertyInfo.Validator : new DefaultValidator(); }
+ get { return propertyInfo != null ? propertyInfo.Validator : null; }
}
public PropertyInformationCollection Properties {
diff --git a/mcs/class/System.Configuration/System.Configuration/ProtectedProviderSettings.cs b/mcs/class/System.Configuration/System.Configuration/ProtectedProviderSettings.cs
index 2cacd501698..8f24d2b7219 100644
--- a/mcs/class/System.Configuration/System.Configuration/ProtectedProviderSettings.cs
+++ b/mcs/class/System.Configuration/System.Configuration/ProtectedProviderSettings.cs
@@ -37,8 +37,7 @@ namespace System.Configuration
static ProtectedProviderSettings ()
{
- providersProp = new ConfigurationProperty ("", typeof (ProviderSettingsCollection), null,
- null, null, ConfigurationPropertyOptions.IsDefaultCollection);
+ providersProp = new ConfigurationProperty ("", typeof (ProviderSettingsCollection), null, ConfigurationPropertyOptions.IsDefaultCollection);
properties = new ConfigurationPropertyCollection ();
properties.Add (providersProp);
diff --git a/mcs/class/System.Configuration/System.Configuration_test.dll.sources b/mcs/class/System.Configuration/System.Configuration_test.dll.sources
index 960dd8db83e..14b6b3122c6 100644
--- a/mcs/class/System.Configuration/System.Configuration_test.dll.sources
+++ b/mcs/class/System.Configuration/System.Configuration_test.dll.sources
@@ -1,7 +1,6 @@
System.Configuration/CallbackValidatorTest.cs
System.Configuration/CommaDelimitedStringCollectionConverterTest.cs
System.Configuration/CommaDelimitedStringCollectionTest.cs
-System.Configuration/ConfigurationElementTest.cs
System.Configuration/ConfigurationLockCollectionTest.cs
System.Configuration/ConfigurationPermissionTest.cs
System.Configuration/ConfigurationManagerTest.cs
diff --git a/mcs/class/System.Configuration/Test/System.Configuration/ConfigurationElementTest.cs b/mcs/class/System.Configuration/Test/System.Configuration/ConfigurationElementTest.cs
deleted file mode 100644
index a9e313c3370..00000000000
--- a/mcs/class/System.Configuration/Test/System.Configuration/ConfigurationElementTest.cs
+++ /dev/null
@@ -1,52 +0,0 @@
-//
-// System.Configuration.ConfigurationElementTest.cs - Unit tests
-// for System.Configuration.ConfigurationElement.
-//
-// Author:
-// Chris Toshok <toshok@ximian.com>
-//
-// Copyright (C) 2006 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.Configuration;
-using NUnit.Framework;
-
-namespace MonoTests.System.Configuration {
- [TestFixture]
- public class ConfigurationElementTest
- {
- [Test]
- public void ElementInformation_validator () {
- /* pick a Configuration class that doesn't
- * specify an ElementInformation override */
- DefaultSection sect = new DefaultSection();
- ElementInformation info = sect.ElementInformation;
-
- Assert.AreEqual (typeof (DefaultValidator), info.Validator.GetType(), "A1");
- }
- }
-}
-
-#endif
diff --git a/mcs/class/System.Data/Mono.Data.SqlExpressions/Aggregation.cs b/mcs/class/System.Data/Mono.Data.SqlExpressions/Aggregation.cs
index 2f7e35f2693..ffb3e1e44db 100644
--- a/mcs/class/System.Data/Mono.Data.SqlExpressions/Aggregation.cs
+++ b/mcs/class/System.Data/Mono.Data.SqlExpressions/Aggregation.cs
@@ -196,7 +196,7 @@ namespace Mono.Data.SqlExpressions {
return res;
}
- public override void ResetExpression ()
+ public override Void ResetExpression ()
{
if (table != null)
InvalidateCache (table, null);
diff --git a/mcs/class/System.Data/Mono.Data.SqlExpressions/ChangeLog b/mcs/class/System.Data/Mono.Data.SqlExpressions/ChangeLog
index c0f8596dc88..237f607562c 100644
--- a/mcs/class/System.Data/Mono.Data.SqlExpressions/ChangeLog
+++ b/mcs/class/System.Data/Mono.Data.SqlExpressions/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-18 Boris Kirzner <borisk@mainsoft.com>
- * ColumnReference.cs: added column and relation lazy evaluation
- and caching.
-
2006-01-09 Senganal T <tsenganal@novell.com>
* Aggregation.cs
* Expression.cs
diff --git a/mcs/class/System.Data/Mono.Data.SqlExpressions/ColumnReference.cs b/mcs/class/System.Data/Mono.Data.SqlExpressions/ColumnReference.cs
index 4e89b437069..0cb357c0b4f 100644
--- a/mcs/class/System.Data/Mono.Data.SqlExpressions/ColumnReference.cs
+++ b/mcs/class/System.Data/Mono.Data.SqlExpressions/ColumnReference.cs
@@ -33,7 +33,6 @@
using System;
using System.Collections;
using System.Data;
-using System.ComponentModel;
namespace Mono.Data.SqlExpressions {
internal enum ReferencedTable {
@@ -45,8 +44,6 @@ namespace Mono.Data.SqlExpressions {
internal class ColumnReference : BaseExpression {
ReferencedTable refTable;
string relationName, columnName;
- DataColumn _cachedColumn;
- DataRelation _cachedRelation;
public ColumnReference (string columnName) : this (ReferencedTable.Self, null, columnName) {}
@@ -91,55 +88,26 @@ namespace Mono.Data.SqlExpressions {
get { return refTable; }
}
- private DataRelation GetRelation (DataRow row)
+ protected DataRelation GetRelation (DataRow row)
{
- if (_cachedRelation == null) {
- DataTable table = row.Table;
- DataRelationCollection relations;
- if (relationName != null) {
- relations = table.DataSet.Relations;
- _cachedRelation = relations [relations.IndexOf (relationName)];
- }
- else {
- if (refTable == ReferencedTable.Parent)
- relations = table.ParentRelations;
- else
- relations = table.ChildRelations;
-
- if (relations.Count > 1)
- throw new EvaluateException (String.Format (
- "The table [{0}] is involved in more than one relation." +
- "You must explicitly mention a relation name.",
- table.TableName));
- else
- _cachedRelation = relations [0];
- }
- _cachedRelation.DataSet.Relations.CollectionChanged += new CollectionChangeEventHandler (OnRelationRemoved);
+ DataRelationCollection relations;
+ if (relationName != null) {
+ relations = row.Table.DataSet.Relations;
+ return relations[relations.IndexOf(relationName)];
}
- return _cachedRelation;
- }
-
- private DataColumn GetColumn (DataRow row)
- {
- if (_cachedColumn == null) {
- DataTable table = row.Table;
- switch (refTable) {
- case ReferencedTable.Parent:
- table = GetRelation (row).ParentTable;
- break;
- case ReferencedTable.Child:
- table = GetRelation (row).ChildTable;
- break;
- }
-
- _cachedColumn = table.Columns [columnName];
- if (_cachedColumn == null)
- throw new EvaluateException (String.Format ("Cannot find column [{0}].", columnName));
- _cachedColumn.PropertyChanged += new PropertyChangedEventHandler (OnColumnPropertyChanged);
- _cachedColumn.Table.Columns.CollectionChanged += new CollectionChangeEventHandler (OnColumnRemoved);
- }
- return _cachedColumn;
+ if (refTable == ReferencedTable.Parent)
+ relations = row.Table.ParentRelations;
+ else
+ relations = row.Table.ChildRelations;
+
+ if (relations.Count > 1)
+ throw new EvaluateException (String.Format (
+ "The table [{0}] is involved in more than one relation." +
+ "You must explicitly mention a relation name.",
+ row.Table.TableName));
+ else
+ return relations[0];
}
public DataRow GetReferencedRow (DataRow row)
@@ -178,7 +146,7 @@ namespace Mono.Data.SqlExpressions {
{
object[] values = new object [rows.Length];
for (int i = 0; i < rows.Length; i++)
- values [i] = Unify (rows [i][GetColumn (rows [i])]);
+ values [i] = Unify (rows [i][columnName]);
return values;
}
@@ -208,7 +176,7 @@ namespace Mono.Data.SqlExpressions {
object val;
try {
referencedRow._inExpressionEvaluation = true;
- val = referencedRow [GetColumn (row)];
+ val = referencedRow [columnName];
referencedRow._inExpressionEvaluation = false;
} catch (IndexOutOfRangeException) {
throw new EvaluateException (String.Format ("Cannot find column [{0}].", columnName));
@@ -220,67 +188,5 @@ namespace Mono.Data.SqlExpressions {
{
return refTable == ReferencedTable.Self && columnName == other.ColumnName;
}
-
- private void DropCached (DataColumnCollection columnCollection, DataRelationCollection relationCollection)
- {
- if (_cachedColumn != null) {
- // unregister column listener
- _cachedColumn.PropertyChanged -= new PropertyChangedEventHandler (OnColumnPropertyChanged);
-
- // unregister column collection listener
- if (columnCollection != null)
- columnCollection.CollectionChanged -= new CollectionChangeEventHandler (OnColumnRemoved);
- else if (_cachedColumn.Table != null)
- _cachedColumn.Table.Columns.CollectionChanged -= new CollectionChangeEventHandler (OnColumnRemoved);
-
- _cachedColumn = null;
- }
-
- if (_cachedRelation != null) {
- // unregister relation collection listener
- if (relationCollection != null)
- relationCollection.CollectionChanged -= new CollectionChangeEventHandler (OnRelationRemoved);
- else if (_cachedRelation.DataSet != null)
- _cachedRelation.DataSet.Relations.CollectionChanged -= new CollectionChangeEventHandler (OnRelationRemoved);
-
- _cachedRelation = null;
- }
- }
-
- private void OnColumnPropertyChanged (object sender, PropertyChangedEventArgs args)
- {
- if (!(sender is DataColumn))
- return;
-
- DataColumn dc = (DataColumn) sender;
- if ((dc == _cachedColumn) && args.PropertyName == "ColumnName")
- DropCached (null, null);
- }
-
- private void OnColumnRemoved (object sender, CollectionChangeEventArgs args)
- {
- if (!(args.Element is DataColumnCollection))
- return;
-
- if (args.Action != CollectionChangeAction.Remove)
- return;
-
- DataColumnCollection columnCollection = (DataColumnCollection) args.Element;
- if (_cachedColumn != null && columnCollection != null && (columnCollection.IndexOf (_cachedColumn)) == -1)
- DropCached (columnCollection, null);
- }
-
- private void OnRelationRemoved (object sender, CollectionChangeEventArgs args)
- {
- if (!(args.Element is DataRelationCollection))
- return;
-
- if (args.Action != CollectionChangeAction.Remove)
- return;
-
- DataRelationCollection relationCollection = (DataRelationCollection) args.Element;
- if (_cachedRelation != null && relationCollection != null && (relationCollection.IndexOf (_cachedRelation)) == -1)
- DropCached (null, relationCollection);
- }
}
}
diff --git a/mcs/class/System.Data/System.Data.Common/ChangeLog b/mcs/class/System.Data/System.Data.Common/ChangeLog
index 92ab8e98e7f..a33733f1c38 100644
--- a/mcs/class/System.Data/System.Data.Common/ChangeLog
+++ b/mcs/class/System.Data/System.Data.Common/ChangeLog
@@ -1,6 +1,3 @@
-2006-01-11 Boris Kirzner <borisk@mainsoft.com>
- * Index.cs: removed redundant call to RebuildIndex() in constructor.
-
2005-12-12 Konstantin Triger <kostat@mainsoft.com>
* Key.cs: Added ContainsVersion function, refactoring.
diff --git a/mcs/class/System.Data/System.Data.Common/Index.cs b/mcs/class/System.Data/System.Data.Common/Index.cs
index 77d754c6dd5..21c87478f9b 100644
--- a/mcs/class/System.Data/System.Data.Common/Index.cs
+++ b/mcs/class/System.Data/System.Data.Common/Index.cs
@@ -57,6 +57,7 @@ namespace System.Data.Common
{
_key = key;
Reset();
+ RebuildIndex ();
}
#endregion // Constructors
diff --git a/mcs/class/System.Data/System.Data/ChangeLog b/mcs/class/System.Data/System.Data/ChangeLog
index 2e1d421d9ad..beec837ac57 100644
--- a/mcs/class/System.Data/System.Data/ChangeLog
+++ b/mcs/class/System.Data/System.Data/ChangeLog
@@ -1,25 +1,14 @@
-2006-01-18 Boris Kirzner <borisk@mainsoft.com>
- * DataColumn.cs: added PropertyCchangedEvent handling.
-
2006-01-17 Senganal T <tsenganal@novell.com>
-
* DataRow.cs:
- ItemArray : Modified to raise RowInTableException only if
- the concerned row has been removed from the table.Fixes
+ ItemArray : Modified to raise RowNotInTableException only if
+ the concerned row has been removed from the table.Fixes
bug #77267
-2006-01-16 Boris Kirzner <borisk@mainsoft.com>
- * DataTable.cs: Drop dependend indexes on column removal.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * CustomDataClassGenerator.cs :
- When a DataRelation connects the same table as parent and child,
- generate parent row property as BlahRowParent. Fixed bug #77248.
-
2006-01-10 Senganal T <tsenganal@novell.com>
* DataRowCollection.cs
- - Added ListChangedEvent to notify reset of the collection.
+ - Added ListChangedEvent to signal reset of the collection.
+ Ideally, all the row collection changes should be notified
+ thru this event.
* DataView.cs
- Subscribes to the ListChangedEvent of DataRowCollection
Fixes bug #77188
diff --git a/mcs/class/System.Data/System.Data/CustomDataClassGenerator.cs b/mcs/class/System.Data/System.Data/CustomDataClassGenerator.cs
index 620f25ea518..5adf0c34ff8 100644
--- a/mcs/class/System.Data/System.Data/CustomDataClassGenerator.cs
+++ b/mcs/class/System.Data/System.Data/CustomDataClassGenerator.cs
@@ -1355,8 +1355,7 @@ namespace System.Data
private CodeMemberProperty CreateRowParentRowProperty (DataTable dt, DataRelation rel)
{
CodeMemberProperty p = new CodeMemberProperty ();
- p.Name = opts.TableMemberName (rel.ParentTable.TableName, gen) + "Row" +
- (rel.ParentTable.TableName == rel.ChildTable.TableName ? "Parent" : String.Empty);
+ p.Name = opts.TableMemberName (rel.ParentTable.TableName, gen) + "Row";
p.Attributes = MemberAttributes.Public;
p.Type = TypeRef (opts.RowName (rel.ParentTable.TableName, gen));
p.GetStatements.Add (Return (Cast (p.Type, MethodInvoke (
diff --git a/mcs/class/System.Data/System.Data/DataColumn.cs b/mcs/class/System.Data/System.Data/DataColumn.cs
index ff73643a50f..805095e1396 100644
--- a/mcs/class/System.Data/System.Data/DataColumn.cs
+++ b/mcs/class/System.Data/System.Data/DataColumn.cs
@@ -68,8 +68,6 @@ namespace System.Data {
//used for FK Constraint Cascading rules
internal event DelegateColumnValueChange ColumnValueChanging;
-
- internal event PropertyChangedEventHandler PropertyChanged;
#endregion //Events
#region Fields
@@ -774,15 +772,13 @@ namespace System.Data {
throw new NotImplementedException ();
}
+ [MonoTODO]
protected internal virtual void
OnPropertyChanging (PropertyChangedEventArgs pcevent) {
- if (PropertyChanged != null)
- PropertyChanged (this, pcevent);
}
+ [MonoTODO]
protected internal void RaisePropertyChanging(string name) {
- PropertyChangedEventArgs e = new PropertyChangedEventArgs (name);
- OnPropertyChanging (e);
}
/// <summary>
diff --git a/mcs/class/System.Data/System.Data/DataTable.cs b/mcs/class/System.Data/System.Data/DataTable.cs
index 3029f32226c..6006dd6f6b9 100644
--- a/mcs/class/System.Data/System.Data/DataTable.cs
+++ b/mcs/class/System.Data/System.Data/DataTable.cs
@@ -1588,16 +1588,6 @@ namespace System.Data {
}
}
- internal void DropReferencedIndexes (DataColumn column)
- {
- if (_indexes != null)
- for (int i = _indexes.Count - 1; i >= 0; i--) {
- Index indx = (Index)_indexes [i];
- if (indx.Key.DependsOn (column))
- _indexes.Remove (indx);
- }
- }
-
internal void AddRowToIndexes (DataRow row) {
if (_indexes != null) {
foreach (Index indx in _indexes) {
@@ -1778,8 +1768,8 @@ namespace System.Data {
/// <summary>
/// Notifies the DataTable that a DataColumn is being removed.
/// </summary>
+ [MonoTODO]
protected internal virtual void OnRemoveColumn (DataColumn column) {
- DropReferencedIndexes (column);
}
diff --git a/mcs/class/System.Data/System.Data/RelatedDataView.cs b/mcs/class/System.Data/System.Data/RelatedDataView.cs
index 11cda548ec5..0ca2248d086 100644
--- a/mcs/class/System.Data/System.Data/RelatedDataView.cs
+++ b/mcs/class/System.Data/System.Data/RelatedDataView.cs
@@ -108,9 +108,9 @@ namespace System.Data
IExpression filter = base.FilterExpression;
return filter != null ? filter.DependsOn(other) : false;
}
-
- void IExpression.ResetExpression()
- {
+
+ public void ResetExpression ()
+ {
}
#endregion
diff --git a/mcs/class/System.Data/Test/System.Data/ChangeLog b/mcs/class/System.Data/Test/System.Data/ChangeLog
index a2494063edc..52063cd1d80 100644
--- a/mcs/class/System.Data/Test/System.Data/ChangeLog
+++ b/mcs/class/System.Data/Test/System.Data/ChangeLog
@@ -1,16 +1,7 @@
2006-01-17 Senganal T <tsenganal@novell.com>
-
- * DataRowTest2.cs : added testcase for bug #77267
-
-2006-01-16 Boris Kirzner <borisk@mainsoft.com>
- * DataColumnCollectionTest2.cs: added test case for index update on
- column removal
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * TypedDataSetGeneratorTest.cs : added test for bug #77248, but we
- cannot enable it since it depends on mcs "installed".
-
+
+ * DataRowTest2.cs : added testcase for bug #77267
+
2006-01-10 Senganal T <tsenganal@novell.com>
* DataViewTest2.cs
- Added testcase for bug #77188
diff --git a/mcs/class/System.Data/Test/System.Data/DataColumnCollectionTest2.cs b/mcs/class/System.Data/Test/System.Data/DataColumnCollectionTest2.cs
index 7f13c1a705e..4458d473c8e 100644
--- a/mcs/class/System.Data/Test/System.Data/DataColumnCollectionTest2.cs
+++ b/mcs/class/System.Data/Test/System.Data/DataColumnCollectionTest2.cs
@@ -763,41 +763,6 @@ namespace MonoTests.System.Data
}
}
- [Test]
- public void Test_Indexes ()
- {
- DataTable dt = new DataTable ();
- DataColumn dc = new DataColumn("A");
- dt.Columns.Add (dc);
-
- dc = new DataColumn("B");
- dt.Columns.Add (dc);
-
- dc = new DataColumn("C");
- dt.Columns.Add (dc);
-
- for(int i=0; i < 10; i++) {
- DataRow dr = dt.NewRow ();
- dr ["A"] = i;
- dr ["B"] = i + 1;
- dr ["C"] = i + 2;
- dt.Rows.Add (dr);
- }
-
- DataRow[] rows = dt.Select ("A=5");
- Assert.AreEqual (1, rows.Length);
-
- dt.Columns.Remove ("A");
-
- dc = new DataColumn ("A");
- dc.DefaultValue = 5;
-
- dt.Columns.Add (dc);
-
- rows = dt.Select ("A=5");
- Assert.AreEqual (10, rows.Length);
- }
-
private void Columns_CollectionChanged1(object sender, CollectionChangeEventArgs e)
{
eventOccured = true;
diff --git a/mcs/class/System.Data/Test/System.Data/TypedDataSetGeneratorTest.cs b/mcs/class/System.Data/Test/System.Data/TypedDataSetGeneratorTest.cs
index 381824a7c9c..03a16b07123 100644
--- a/mcs/class/System.Data/Test/System.Data/TypedDataSetGeneratorTest.cs
+++ b/mcs/class/System.Data/Test/System.Data/TypedDataSetGeneratorTest.cs
@@ -30,7 +30,6 @@
using System;
-using System.CodeDom;
using System.CodeDom.Compiler;
using System.Data;
using NUnit.Framework;
@@ -42,13 +41,10 @@ namespace MonoTests.System.Data
public class TypedDataSetGeneratorTest : Assertion
{
private ICodeGenerator gen;
- private ICodeCompiler compiler;
public TypedDataSetGeneratorTest ()
{
- CodeDomProvider p = new CSharpCodeProvider ();
- gen = p.CreateGenerator ();
- compiler = p.CreateCompiler ();
+ gen = new CSharpCodeProvider ().CreateGenerator ();
}
[Test]
@@ -85,19 +81,5 @@ namespace MonoTests.System.Data
AssertEquals ("#12", "\u3042", TypedDataSetGenerator.GenerateIdName ("\u3042", gen));
}
- [Test]
- [Ignore ("We cannot depend on CodeCompiler since it expects mcs to exist.")]
- public void RelationConnectsSameTable ()
- {
- DataSet ds = new DataSet ();
- ds.ReadXmlSchema ("Test/System.Data/schemas/bug77248.xsd");
- CodeNamespace cns = new CodeNamespace ();
- TypedDataSetGenerator.Generate (ds, cns, gen);
- CodeCompileUnit ccu = new CodeCompileUnit ();
- ccu.Namespaces.Add (cns);
- CompilerResults r = compiler.CompileAssemblyFromDom (
- new CompilerParameters (), ccu);
- AssertEquals (0, r.Errors.Count);
- }
}
}
diff --git a/mcs/class/System.Data/Test/System.Data/schemas/ChangeLog b/mcs/class/System.Data/Test/System.Data/schemas/ChangeLog
index 40d1a362445..66fc83dddf6 100644
--- a/mcs/class/System.Data/Test/System.Data/schemas/ChangeLog
+++ b/mcs/class/System.Data/Test/System.Data/schemas/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * bug77248.xsd : added.
-
2005-01-12 Atsushi Enomoto <atsushi@ximian.com>
* test103.xsd : added.
diff --git a/mcs/class/System.Data/Test/System.Data/schemas/bug77248.xsd b/mcs/class/System.Data/Test/System.Data/schemas/bug77248.xsd
deleted file mode 100644
index 16cb3c7d75a..00000000000
--- a/mcs/class/System.Data/Test/System.Data/schemas/bug77248.xsd
+++ /dev/null
@@ -1,30 +0,0 @@
-<xs:schema id="Testdataset" targetNamespace="http://tempuri.org/Testdataset.xsd"
- xmlns:mstns="http://tempuri.org/Testdataset.xsd"
- xmlns="http://tempuri.org/Testdataset.xsd"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
- attributeFormDefault="qualified" elementFormDefault="qualified">
- <xs:element name="Testdataset" msdata:IsDataSet="true">
- <xs:complexType>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element name="TEST_TREE">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="NODEID" msdata:ReadOnly="true"
- msdata:AutoIncrement="true" type="xs:int" />
- <xs:element name="PARENT_NODEID" type="xs:int" minOccurs="0" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:choice>
- </xs:complexType>
- <xs:unique name="TestdatasetKey6" msdata:PrimaryKey="true">
- <xs:selector xpath=".//mstns:TEST_TREE" />
- <xs:field xpath="mstns:NODEID" />
- </xs:unique>
- <xs:keyref name="TEST_TREETEST_TREE" refer="TestdatasetKey6">
- <xs:selector xpath=".//mstns:TEST_TREE" />
- <xs:field xpath="mstns:PARENT_NODEID" />
- </xs:keyref>
- </xs:element>
-</xs:schema>
diff --git a/mcs/class/System.ServiceProcess/System.ServiceProcess/ChangeLog b/mcs/class/System.ServiceProcess/System.ServiceProcess/ChangeLog
index e1abfbf8f96..50c806576b2 100644
--- a/mcs/class/System.ServiceProcess/System.ServiceProcess/ChangeLog
+++ b/mcs/class/System.ServiceProcess/System.ServiceProcess/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-13 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * ServiceInstaller.cs: Stubs for 2.0 stuff
-
2005-11-14 Marek Safar <marek.safar@seznam.cz>
* ServiceController.cs: Simple stub only.
diff --git a/mcs/class/System.ServiceProcess/System.ServiceProcess/ServiceInstaller.cs b/mcs/class/System.ServiceProcess/System.ServiceProcess/ServiceInstaller.cs
index 8893836cd9c..6d90b7e39ca 100644
--- a/mcs/class/System.ServiceProcess/System.ServiceProcess/ServiceInstaller.cs
+++ b/mcs/class/System.ServiceProcess/System.ServiceProcess/ServiceInstaller.cs
@@ -39,24 +39,12 @@ namespace System.ServiceProcess
public class ServiceInstaller : System.Configuration.Install.ComponentInstaller
{
public ServiceInstaller () {}
-
+
private string display_name;
private string service_name;
private string[] services_depended_on;
private ServiceStartMode start_type;
-#if NET_2_0
- private string description;
- public string Description {
- get {
- return description;
- }
- set {
- description = value;
- }
- }
-#endif
-
public string DisplayName {
get {
return display_name;
diff --git a/mcs/class/System.Web.Services/ChangeLog b/mcs/class/System.Web.Services/ChangeLog
index b72d9054750..19cdd1c20f7 100644
--- a/mcs/class/System.Web.Services/ChangeLog
+++ b/mcs/class/System.Web.Services/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * Makefile (LIB_MCS_FLAGS): if we're building net_2_0, define
- CONFIGURATION_2_0 to use the new System.Configuration api.
-
2006-01-05 Chris Toshok <toshok@ximian.com>
* System.Web.Services_test.dll.sources: enable a bunch of the 2.0
diff --git a/mcs/class/System.Web.Services/Makefile b/mcs/class/System.Web.Services/Makefile
index 8b3d63fc879..ba7c2eebb83 100644
--- a/mcs/class/System.Web.Services/Makefile
+++ b/mcs/class/System.Web.Services/Makefile
@@ -12,7 +12,7 @@ LIB_MCS_FLAGS = \
-r:System.Web.dll
ifeq (net_2_0, $(PROFILE))
-LIB_MCS_FLAGS += -r:System.Configuration.dll -d:CONFIGURATION_2_0
+LIB_MCS_FLAGS += -r:System.Configuration.dll
endif
TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:618
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Configuration/ChangeLog b/mcs/class/System.Web.Services/System.Web.Services.Configuration/ChangeLog
index da1c643b568..a7319ff6617 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Configuration/ChangeLog
+++ b/mcs/class/System.Web.Services/System.Web.Services.Configuration/ChangeLog
@@ -1,15 +1,3 @@
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * SoapEnvelopeProcessingElement.cs: fix dumper output.
-
- * SoapExtensionTypeElement.cs: same.
-
- * ProtocolElement.cs: same.
-
- * WsiProfilesElement.cs: same.
-
- * WebServicesSection.cs: same.
-
2006-01-06 Raja R Harinath <rharinath@novell.com>
* TypeElement.cs (TypeElement) [string variant]: Use Type.GetType.
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Configuration/ProtocolElement.cs b/mcs/class/System.Web.Services/System.Web.Services.Configuration/ProtocolElement.cs
index b000f73afeb..f54ba6ecce4 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Configuration/ProtocolElement.cs
+++ b/mcs/class/System.Web.Services/System.Web.Services.Configuration/ProtocolElement.cs
@@ -42,8 +42,7 @@ namespace System.Web.Services.Configuration {
static ProtocolElement ()
{
- nameProp = new ConfigurationProperty ("name", typeof (WebServiceProtocols), WebServiceProtocols.Unknown,
- new GenericEnumConverter (typeof (WebServiceProtocols)), null, ConfigurationPropertyOptions.IsKey);
+ nameProp = new ConfigurationProperty ("name", typeof (WebServiceProtocols), WebServiceProtocols.Unknown, ConfigurationPropertyOptions.IsKey);
properties = new ConfigurationPropertyCollection ();
properties.Add (nameProp);
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.cs b/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.cs
index af5f6dd2206..e7338806585 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.cs
+++ b/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.cs
@@ -45,9 +45,7 @@ namespace System.Web.Services.Configuration {
static SoapEnvelopeProcessingElement ()
{
strictProp = new ConfigurationProperty ("strict", typeof (bool), false);
- readTimeoutProp = new ConfigurationProperty ("readTimeout", typeof (int), Int32.MaxValue,
- new InfiniteIntConverter(), null,
- ConfigurationPropertyOptions.None);
+ readTimeoutProp = new ConfigurationProperty ("readTimeout", typeof (int), Int32.MaxValue);
properties = new ConfigurationPropertyCollection ();
properties.Add (strictProp);
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapExtensionTypeElement.cs b/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapExtensionTypeElement.cs
index ba42331b95f..61355e625f4 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapExtensionTypeElement.cs
+++ b/mcs/class/System.Web.Services/System.Web.Services.Configuration/SoapExtensionTypeElement.cs
@@ -46,11 +46,8 @@ namespace System.Web.Services.Configuration {
static SoapExtensionTypeElement ()
{
groupProp = new ConfigurationProperty ("group", typeof (PriorityGroup), PriorityGroup.Low, ConfigurationPropertyOptions.IsKey);
- priorityProp = new ConfigurationProperty ("priority", typeof (int), 0,
- new Int32Converter(), new IntegerValidator (0, Int32.MaxValue),
- ConfigurationPropertyOptions.IsKey);
- typeProp = new ConfigurationProperty ("type", typeof (Type), null,
- null, null, ConfigurationPropertyOptions.IsKey);
+ priorityProp = new ConfigurationProperty ("priority", typeof (int), 0, ConfigurationPropertyOptions.IsKey);
+ typeProp = new ConfigurationProperty ("type", typeof (Type), null, ConfigurationPropertyOptions.IsKey);
properties = new ConfigurationPropertyCollection ();
properties.Add (groupProp);
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Configuration/WebServicesSection.cs b/mcs/class/System.Web.Services/System.Web.Services.Configuration/WebServicesSection.cs
index 964917f084c..2aa44f73ac8 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Configuration/WebServicesSection.cs
+++ b/mcs/class/System.Web.Services/System.Web.Services.Configuration/WebServicesSection.cs
@@ -39,7 +39,6 @@ namespace System.Web.Services.Configuration
public sealed class WebServicesSection : ConfigurationSection
{
static ConfigurationProperty conformanceWarningsProp;
- static ConfigurationProperty diagnosticsProp;
static ConfigurationProperty protocolsProp;
static ConfigurationProperty serviceDescriptionFormatExtensionTypesProp;
static ConfigurationProperty soapEnvelopeProcessingProp;
@@ -53,32 +52,19 @@ namespace System.Web.Services.Configuration
static WebServicesSection ()
{
- conformanceWarningsProp = new ConfigurationProperty ("conformanceWarnings", typeof (WsiProfilesElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- diagnosticsProp = new ConfigurationProperty ("diagnostics", typeof (DiagnosticsElement), null,
- null, null, ConfigurationPropertyOptions.None);
- protocolsProp = new ConfigurationProperty ("protocols", typeof (ProtocolElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- serviceDescriptionFormatExtensionTypesProp = new ConfigurationProperty ("serviceDescriptionFormatExtensionTypes", typeof (TypeElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- soapEnvelopeProcessingProp = new ConfigurationProperty ("soapEnvelopeProcessing", typeof (SoapEnvelopeProcessingElement), null,
- null, null, ConfigurationPropertyOptions.None);
- soapExtensionImporterTypesProp = new ConfigurationProperty ("soapExtensionImporterTypes", typeof (TypeElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- soapExtensionReflectorTypesProp = new ConfigurationProperty ("soapExtensionReflectorTypes", typeof (TypeElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- soapExtensionTypesProp = new ConfigurationProperty ("soapExtensionTypes", typeof (SoapExtensionTypeElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- soapServerProtocolFactoryProp = new ConfigurationProperty ("soapServerProtocolFactory", typeof (TypeElement), null,
- null, null, ConfigurationPropertyOptions.None);
- soapTransportImporterTypesProp = new ConfigurationProperty ("soapTransportImporterTypes", typeof (TypeElementCollection), null,
- null, null, ConfigurationPropertyOptions.None);
- wsdlHelpGeneratorProp = new ConfigurationProperty ("wsdlHelpGenerator", typeof (WsdlHelpGeneratorElement), null,
- null, null, ConfigurationPropertyOptions.None);
+ conformanceWarningsProp = new ConfigurationProperty ("conformanceWarnings", typeof (WsiProfilesElementCollection));
+ protocolsProp = new ConfigurationProperty ("protocols", typeof (ProtocolElementCollection));
+ serviceDescriptionFormatExtensionTypesProp = new ConfigurationProperty ("serviceDescriptionFormatExtensionTypes", typeof (TypeElementCollection));
+ soapEnvelopeProcessingProp = new ConfigurationProperty ("soapEnvelopeProcessing", typeof (SoapEnvelopeProcessingElement));
+ soapExtensionImporterTypesProp = new ConfigurationProperty ("soapExtensionImporterTypes", typeof (TypeElementCollection));
+ soapExtensionReflectorTypesProp = new ConfigurationProperty ("soapExtensionReflectorTypes", typeof (TypeElementCollection));
+ soapExtensionTypesProp = new ConfigurationProperty ("soapExtensionTypes", typeof (SoapExtensionTypeElementCollection));
+ soapServerProtocolFactoryProp = new ConfigurationProperty ("soapServerProtocolFactory", typeof (TypeElement));
+ soapTransportImporterTypesProp = new ConfigurationProperty ("soapTransportImporterTypes", typeof (TypeElementCollection));
+ wsdlHelpGeneratorProp = new ConfigurationProperty ("wsdlHelpGenerator", typeof (WsdlHelpGeneratorElement));
properties = new ConfigurationPropertyCollection ();
properties.Add (conformanceWarningsProp);
- properties.Add (diagnosticsProp);
properties.Add (protocolsProp);
properties.Add (serviceDescriptionFormatExtensionTypesProp);
properties.Add (soapEnvelopeProcessingProp);
@@ -115,9 +101,10 @@ namespace System.Web.Services.Configuration
get { throw new NotImplementedException (); }
}
+ [MonoTODO ("why doesn't this have a ConfigurationPropertyAttribute?")]
public DiagnosticsElement Diagnostics {
- get { return (DiagnosticsElement) base [diagnosticsProp]; }
- set { base[diagnosticsProp] = value; }
+ get { throw new NotImplementedException (); }
+ set { throw new NotImplementedException (); }
}
[MonoTODO]
@@ -189,7 +176,7 @@ namespace System.Web.Services.Configuration
internal static bool IsSupported (WebServiceProtocols proto)
{
- return ((Instance.EnabledProtocols & proto) == proto && (proto != WebServiceProtocols.Unknown));
+ return ((Instance.EnabledProtocols & proto) == proto && (proto != 0));
}
}
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Configuration/WsiProfilesElement.cs b/mcs/class/System.Web.Services/System.Web.Services.Configuration/WsiProfilesElement.cs
index 383bfff22b8..193ccc44205 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Configuration/WsiProfilesElement.cs
+++ b/mcs/class/System.Web.Services/System.Web.Services.Configuration/WsiProfilesElement.cs
@@ -43,10 +43,7 @@ namespace System.Web.Services.Configuration {
static WsiProfilesElement ()
{
- nameProp = new ConfigurationProperty ("name", typeof (WsiProfiles), WsiProfiles.None,
- new GenericEnumConverter (typeof (WsiProfiles)),
- null,
- ConfigurationPropertyOptions.IsKey);
+ nameProp = new ConfigurationProperty ("name", typeof (WsiProfiles), WsiProfiles.None, ConfigurationPropertyOptions.IsKey);
properties = new ConfigurationPropertyCollection ();
properties.Add (nameProp);
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog b/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
index 8bbfdefa2e3..aea99df8b89 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
+++ b/mcs/class/System.Web.Services/System.Web.Services.Protocols/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * WebClientProtocol.cs: Add a 2.0 stub
-
2006-01-04 Chris Toshok <toshok@ximian.com>
* SoapDocumentationHandler.cs: add CONFIGURATION_2_0 stuff.
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Protocols/WebClientProtocol.cs b/mcs/class/System.Web.Services/System.Web.Services.Protocols/WebClientProtocol.cs
index 4c3f70a16e9..a56615b44dd 100644
--- a/mcs/class/System.Web.Services/System.Web.Services.Protocols/WebClientProtocol.cs
+++ b/mcs/class/System.Web.Services/System.Web.Services.Protocols/WebClientProtocol.cs
@@ -138,13 +138,6 @@ namespace System.Web.Services.Protocols {
uri = new Uri (url);
}
}
-#if NET_2_0
- [MonoTODO]
- public bool UseDefaultCredentials {
- get { throw new NotImplementedException (); }
- set { throw new NotImplementedException (); }
- }
-#endif
#endregion // Properties
diff --git a/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/ChangeLog b/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/ChangeLog
index 2462dff8fa1..fc2b58a80e4 100644
--- a/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/ChangeLog
+++ b/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-13 Raja R Harinath <rharinath@novell.com>
-
- * TypeElementTest.cs (Ctors1): Don't expect a null-reference
- exception.
-
2003-05-13 Martin Willemoes Hansen <mwh@sysrq.dk>
* XmlFormatExtensionAttributeTest.cs: Inherits from Assertion and
Assertion. prefixes removed.
diff --git a/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs b/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs
index 92294f4218d..718b48d99a7 100644
--- a/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs
+++ b/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs
@@ -30,7 +30,6 @@
#if NET_2_0
using System;
-using System.Configuration;
using System.Web.Services.Configuration;
using NUnit.Framework;
@@ -72,22 +71,6 @@ namespace MonoTests.System.Web.Services {
el.Type = typeof (string);
Assert.AreEqual (typeof (string), el.Type, "A3");
}
-
- [Test]
- [ExpectedException (typeof (ConfigurationErrorsException))]
- public void PriorityValidator1 ()
- {
- SoapExtensionTypeElement el = new SoapExtensionTypeElement ();
- el.Priority = -1;
- }
-
- [Test]
- public void PriorityValidator2 ()
- {
- SoapExtensionTypeElement el = new SoapExtensionTypeElement ();
- el.Priority = 0;
- el.Priority = Int32.MaxValue;
- }
}
}
diff --git a/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs b/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs
index 78b4d692c11..46722240634 100644
--- a/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs
+++ b/mcs/class/System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs
@@ -33,21 +33,15 @@ using System;
using System.Web.Services.Configuration;
using NUnit.Framework;
-namespace MonoTests.System.Web.Services.Configuration {
+namespace MonoTests.System.Web.Services {
[TestFixture]
public class TypeElementTest
{
[Test]
- public void Ctors1 ()
+ public void Ctors ()
{
TypeElement el = new TypeElement ();
Assert.IsNull (el.Type, "A1");
- }
-
- [Test]
- public void Ctors2 ()
- {
- TypeElement el;
el = new TypeElement (typeof (string));
Assert.AreEqual (typeof (string), el.Type, "A2");
diff --git a/mcs/class/System.Web/ChangeLog b/mcs/class/System.Web/ChangeLog
index 6882b1f3f33..dff52aa9a9b 100644
--- a/mcs/class/System.Web/ChangeLog
+++ b/mcs/class/System.Web/ChangeLog
@@ -1,22 +1,3 @@
-2006-01-19 Raja R Harinath <rharinath@novell.com>
-
- * Makefile (LIBRARY_USE_INTERMEDIATE_FILE) [net_2_0]: Set, so as
- to avoid sharing violations on Windows.
-
-2006-01-18 Chris Toshok <toshok@ximian.com>
-
- * Makefile: Add build foo to handle the System.Web.dll <->
- System.Web.Services.dll cyclic dependencies.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * Makefile (OTHER_LIB_MCS_FLAGS): if we're building net_2_0,
- define CONFIGURATION_2_0 to use the new System.Configuration api.
-
-2006-01-08 Konstantin Triger <kostat@mainsoft.com>
-
- * System.Web.vmwcsproj: fixing compilation.
-
2005-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* System.Web_test.dll.sources: add new file.
diff --git a/mcs/class/System.Web/Makefile b/mcs/class/System.Web/Makefile
index d4f96f0ff21..7b6e0a1c991 100644
--- a/mcs/class/System.Web/Makefile
+++ b/mcs/class/System.Web/Makefile
@@ -2,22 +2,6 @@ thisdir = class/System.Web
SUBDIRS = Test
include ../../build/rules.make
-LIBRARY = System.Web.dll
-
-ifeq (net_2_0, $(PROFILE))
-
-LIBRARY_USE_INTERMEDIATE_FILE = yes
-
-# Because System.Web.dll and System.Web.Services.dll have a cyclic dependency, we need a two-pass build.
-# 1st pass - build System.Web.dll without System.Web.Services.dll reference
-# 2nd pass - build System.Web.dll with System.Web.Services.dll reference
-
-WEBSERVICES_DEP := System.Web.Services.dll
-WEBSERVICES_DEP_FILE := $(wildcard ../lib/$(PROFILE)/$(WEBSERVICES_DEP))
-CYCLIC_DEPS := $(WEBSERVICES_DEP)
-CYCLIC_DEP_FILES := $(WEBSERVICES_DEP_FILE)
-endif
-
RESOURCE_FILES_1= \
resources/WebUIValidation.js
@@ -65,10 +49,11 @@ RESOURCE_FILES_2 = \
OTHER_RES = $(RESOURCE_FILES_1)
ifeq (net_2_0, $(PROFILE))
OTHER_RES += $(RESOURCE_FILES_2)
-OTHER_LIB_MCS_FLAGS = -r:System.Configuration.dll -d:CONFIGURATION_2_0
+OTHER_LIB_MCS_FLAGS = -r:System.Configuration.dll
endif
+LIBRARY = System.Web.dll
LIB_MCS_FLAGS = \
-unsafe \
-nowarn:612,649 \
@@ -81,25 +66,8 @@ LIB_MCS_FLAGS = \
$(OTHER_LIB_MCS_FLAGS) \
$(OTHER_RES:%=/resource:%)
-ifneq ($(CYCLIC_DEPS:%=../lib/$(PROFILE)/%), $(CYCLIC_DEP_FILES))
-NO_SIGN_ASSEMBLY = yes
-NO_INSTALL = yes
-all-local: echo-warning
-.PHONY: echo-warning
-
-ifeq (, $(strip $(CYCLIC_DEP_FILES)))
-echo-warning:
- @echo "** Warning: System.Web.dll built without parts that depend on: $(CYCLIC_DEPS)"
-endif
-endif
-
TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:219 -nowarn:169
EXTRA_DISTFILES = $(RESOURCE_FILES_2) $(RESOURCE_FILES_1)
include ../../build/library.make
-
-ifdef WEBSERVICES_DEP_FILE
-LIB_MCS_FLAGS += -define:WEBSERVICES_DEP -r:$(WEBSERVICES_DEP)
-$(the_lib): $(WEBSERVICES_DEP_FILE)
-endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/AppSettingsExpressionBuilder.cs b/mcs/class/System.Web/System.Web.Compilation/AppSettingsExpressionBuilder.cs
deleted file mode 100644
index c425fa60f7a..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/AppSettingsExpressionBuilder.cs
+++ /dev/null
@@ -1,85 +0,0 @@
-//
-// System.Web.Compilation.AppSettingsExpressionBuilder
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom;
-using System.Web.UI;
-#if notyet
-using System.Web.UI.Design;
-#endif
-
-namespace System.Web.Compilation {
-
-#if notyet
- [ExpressionEditor(typeof (AppSettingsExpressionEditor))]
-#endif
- [ExpressionPrefix("AppSettings")]
- public class AppSettingsExpressionBuilder : ExpressionBuilder {
-
- public AppSettingsExpressionBuilder ()
- {
- }
-
- [MonoTODO]
- public override object EvaluateExpression (object target, BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static object GetAppSetting (string key)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static object GetAppSetting (string key, Type targetType, string propertyName)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override CodeExpression GetCodeExpression (BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- public override bool SupportsEvaluate {
- get { return true; }
- }
- }
-
-}
-
-#endif
-
-
diff --git a/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs b/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs
deleted file mode 100644
index bd6685cdc05..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/AssemblyBuilder.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-//
-// System.Web.Compilation.AssemblyBuilder
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom;
-using System.CodeDom.Compiler;
-using System.IO;
-using System.Reflection;
-
-namespace System.Web.Compilation {
-
- public class AssemblyBuilder {
-
- internal AssemblyBuilder ()
- {
- }
-
- [MonoTODO]
- public void AddAssemblyReference (Assembly a)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void AddCodeCompileUnit (BuildProvider buildProvider, CodeCompileUnit compileUnit)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public TextWriter CreateCodeFile (BuildProvider buildProvider)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public Stream CreateEmbeddedResource (BuildProvider buildProvider, string name)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void GenerateTypeFactory (string typeName)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string GetTempFilePhysicalPath (string extension)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public CodeDomProvider CodeDomProvider {
- get {
- throw new NotImplementedException ();
- }
- }
-
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildDependencySet.cs b/mcs/class/System.Web/System.Web.Compilation/BuildDependencySet.cs
deleted file mode 100644
index a97f10d1ca5..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildDependencySet.cs
+++ /dev/null
@@ -1,61 +0,0 @@
-//
-// System.Web.Compilation.BuildDependencySet
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.Collections;
-
-namespace System.Web.Compilation {
-
- public sealed class BuildDependencySet {
-
- internal BuildDependencySet ()
- {
- }
-
- [MonoTODO]
- public string HashCode {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public IEnumerable VirtualPaths {
- get {
- throw new NotImplementedException ();
- }
- }
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs b/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs
deleted file mode 100644
index 9aa8c1969a1..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs
+++ /dev/null
@@ -1,103 +0,0 @@
-//
-// System.Web.Compilation.BuildManager
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.Collections;
-using System.Reflection;
-using System.Web;
-
-namespace System.Web.Compilation {
- public sealed class BuildManager {
-
- internal BuildManager ()
- {
- }
-
- [MonoTODO]
- public static object CreateInstanceFromVirtualPath (string virtualPath, Type requiredBaseType)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static BuildDependencySet GetCachedBuildDependencySet (HttpContext context, string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static Assembly GetCompiledAssembly (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static string GetCompiledCustomString (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static Type GetCompiledType (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static Type GetType (string typeName, bool throwOnError)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static Type GetType (string typeName, bool throwOnError, bool ignoreCase)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static ICollection GetVirtualPathDependencies (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static IList CodeAssemblies {
- get {
- throw new NotImplementedException ();
- }
- }
-
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventArgs.cs b/mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventArgs.cs
deleted file mode 100644
index ee79de7ca35..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventArgs.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-//
-// System.Web.Compilation.BuildManagerHostUnloadEventArgs
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.Web;
-
-namespace System.Web.Compilation {
-
- public class BuildManagerHostUnloadEventArgs : EventArgs
- {
- ApplicationShutdownReason reason;
-
- public BuildManagerHostUnloadEventArgs (ApplicationShutdownReason reason)
- {
- this.reason = reason;
- }
-
- public ApplicationShutdownReason Reason {
- get { return reason; }
- }
-
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventHandler.cs b/mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventHandler.cs
deleted file mode 100644
index 7e401bbe899..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildManagerHostUnloadEventHandler.cs
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-// System.Web.Compilation.BuildManagerHostUnloadEventHandler
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
- public delegate void BuildManagerHostUnloadEventHandler(object sender, BuildManagerHostUnloadEventArgs e);
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildProvider.cs b/mcs/class/System.Web/System.Web.Compilation/BuildProvider.cs
deleted file mode 100644
index 714712cd390..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildProvider.cs
+++ /dev/null
@@ -1,135 +0,0 @@
-//
-// System.Web.Compilation.BuildProvider
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom.Compiler;
-using System.Collections;
-using System.IO;
-
-namespace System.Web.Compilation {
-
- public abstract class BuildProvider {
- protected BuildProvider()
- {
- }
-
- [MonoTODO]
- public virtual void GenerateCode (AssemblyBuilder assemblyBuilder)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public virtual string GetCustomString (CompilerResults results)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- protected CompilerType GetDefaultCompilerType ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- protected CompilerType GetDefaultCompilerTypeForLanguage (string language)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public virtual Type GetGeneratedType (CompilerResults results)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public virtual BuildProviderResultFlags GetResultFlags (CompilerResults results)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- protected TextReader OpenReader ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- protected TextReader OpenReader (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- protected Stream OpenStream ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- protected Stream OpenStream (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public virtual CompilerType CodeCompilerType {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- protected ICollection ReferencedAssemblies {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- protected internal string VirtualPath {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public virtual ICollection VirtualPathDependencies {
- get {
- throw new NotImplementedException ();
- }
- }
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesTo.cs b/mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesTo.cs
deleted file mode 100644
index 89357f7b936..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesTo.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-//
-// System.Web.Compilation.BuildProviderAppliesTo
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- [Flags]
- public enum BuildProviderAppliesTo
- {
- Web = 1, /* generate code from files in directories *other* than App_Code,
- App_LocalResources, and App_GlobalResources */
- Code = 1 << 1, /* generate code only for App_Code/* */
- Resources = 1 << 2, /* generate code only for App_LocalResources/* and App_GlobalResources/* */
- All = 7 /* generate code for everything. default value for the attribute */
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesToAttribute.cs b/mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesToAttribute.cs
deleted file mode 100644
index b9302aad859..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/BuildProviderAppliesToAttribute.cs
+++ /dev/null
@@ -1,52 +0,0 @@
-//
-// System.Web.Compilation.BuildProviderAppliesToAttribute
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- [AttributeUsage (AttributeTargets.Class)]
- public sealed class BuildProviderAppliesToAttribute : Attribute
- {
- BuildProviderAppliesTo appliesTo;
-
- public BuildProviderAppliesToAttribute (BuildProviderAppliesTo appliesTo)
- {
- this.appliesTo = appliesTo;
- }
-
- public BuildProviderAppliesTo AppliesTo {
- get { return appliesTo; }
- }
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/BuildProviderResultFlags.cs b/mcs/class/System.Web/System.Web.Compilation/BuildProviderResultFlags.cs
index f11f21185ff..3cd3ea5723a 100644
--- a/mcs/class/System.Web/System.Web.Compilation/BuildProviderResultFlags.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/BuildProviderResultFlags.cs
@@ -29,10 +29,9 @@
using System.Resources;
#if NET_2_0
-
namespace System.Web.Compilation
{
- [Flags]
+ [Serializable, Flags]
public enum BuildProviderResultFlags
{
Default = 0,
diff --git a/mcs/class/System.Web/System.Web.Compilation/ClientBuildManager.cs b/mcs/class/System.Web/System.Web.Compilation/ClientBuildManager.cs
deleted file mode 100644
index 0565a3600cf..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ClientBuildManager.cs
+++ /dev/null
@@ -1,222 +0,0 @@
-//
-// System.Web.Compilation.ClientBuildManager
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom;
-using System.CodeDom.Compiler;
-using System.Collections;
-using System.Web;
-using System.Web.Hosting;
-
-namespace System.Web.Compilation {
-
- public sealed class ClientBuildManager : MarshalByRefObject, IDisposable
- {
- [MonoTODO]
- public ClientBuildManager (string appVirtualDir, string appPhysicalSourceDir)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public ClientBuildManager (string appVirtualDir, string appPhysicalSourceDir, string appPhysicalTargetDir)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public ClientBuildManager (string appVirtualDir, string appPhysicalSourceDir, string appPhysicalTargetDir, ClientBuildManagerParameter parameter)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void CompileApplicationDependencies ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void CompileFile (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void CompileFile (string virtualPath, ClientBuildManagerCallback callback)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public IRegisteredObject CreateObject (Type type, bool failIfExists)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string GenerateCode (string virtualPath, string virtualFileString, out IDictionary linePragmasTable)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public CodeCompileUnit GenerateCodeCompileUnit (string virtualPath, string virtualFileString, out Type codeDomProviderType, out CompilerParameters compilerParameters, out IDictionary linePragmasTable)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public CodeCompileUnit GenerateCodeCompileUnit (string virtualPath, out Type codeDomProviderType, out CompilerParameters compilerParameters, out IDictionary linePragmasTable)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string[ ] GetAppDomainShutdownDirectories ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public IDictionary GetBrowserDefinitions ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void GetCodeDirectoryInformation (string virtualCodeDir, out Type codeDomProviderType, out CompilerParameters compilerParameters, out string generatedFilesDir)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public Type GetCompiledType (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void GetCompilerParameters (string virtualPath, out Type codeDomProviderType, out CompilerParameters compilerParameters)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string GetGeneratedFileVirtualPath (string filePath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string GetGeneratedSourceFile (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string[ ] GetTopLevelAssemblyReferences (string virtualPath)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string[ ] GetVirtualCodeDirectories ()
- {
- throw new NotImplementedException ();
- }
-
- public override object InitializeLifetimeService ()
- {
- return null;
- }
-
- [MonoTODO]
- public bool IsCodeAssembly (string assemblyName)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void PrecompileApplication ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void PrecompileApplication (ClientBuildManagerCallback callback)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public void PrecompileApplication (ClientBuildManagerCallback callback, bool forceCleanBuild)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public bool Unload ()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public string CodeGenDir {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public bool IsHostCreated {
- get {
- throw new NotImplementedException ();
- }
- }
-
- public event BuildManagerHostUnloadEventHandler AppDomainShutdown;
- public event EventHandler AppDomainStarted;
- public event BuildManagerHostUnloadEventHandler AppDomainUnloaded;
-
-
- [MonoTODO]
- void IDisposable.Dispose ()
- {
- throw new NotImplementedException ();
- }
-
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerCallback.cs b/mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerCallback.cs
deleted file mode 100644
index e31afb1e3e4..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerCallback.cs
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-// System.Web.Compilation.ClientBuildManagerCallback
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom.Compiler;
-using System.Web;
-
-namespace System.Web.Compilation {
- public class ClientBuildManagerCallback : MarshalByRefObject
- {
- public ClientBuildManagerCallback ()
- {
- }
-
- [MonoTODO]
- public virtual void ReportCompilerError (CompilerError error)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public virtual void ReportParseError (ParserError error)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public virtual void ReportProgress (string message)
- {
- throw new NotImplementedException ();
- }
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerParameter.cs b/mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerParameter.cs
deleted file mode 100644
index a867b2a5bab..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ClientBuildManagerParameter.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-//
-// System.Web.Compilation.ClientBuildManagerParameter
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom.Compiler;
-using System.Web;
-
-namespace System.Web.Compilation {
-
- [Serializable]
- public class ClientBuildManagerParameter
- {
- public ClientBuildManagerParameter ()
- {
- }
-
- [MonoTODO]
- public PrecompilationFlags PrecompilationFlags {
- get {
- throw new NotImplementedException ();
- }
- set {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public string StrongNameKeyContainer {
- get {
- throw new NotImplementedException ();
- }
- set {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public string StrongNameKeyFile {
- get {
- throw new NotImplementedException ();
- }
- set {
- throw new NotImplementedException ();
- }
- }
-
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/CompilerType.cs b/mcs/class/System.Web/System.Web.Compilation/CompilerType.cs
deleted file mode 100644
index 4600ee5d3be..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/CompilerType.cs
+++ /dev/null
@@ -1,75 +0,0 @@
-//
-// System.Web.Compilation.CompilerType
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom.Compiler;
-
-namespace System.Web.Compilation {
-
- public sealed class CompilerType {
-
- internal CompilerType ()
- {
- }
-
- [MonoTODO]
- public override bool Equals(object o)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override int GetHashCode()
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public Type CodeDomProviderType {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public CompilerParameters CompilerParameters {
- get {
- throw new NotImplementedException ();
- }
- }
-
- }
-}
-
-#endif
-
-
diff --git a/mcs/class/System.Web/System.Web.Compilation/ConnectionStringsExpressionBuilder.cs b/mcs/class/System.Web/System.Web.Compilation/ConnectionStringsExpressionBuilder.cs
deleted file mode 100644
index dd93eeef322..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ConnectionStringsExpressionBuilder.cs
+++ /dev/null
@@ -1,91 +0,0 @@
-//
-// System.Web.Compilation.ConnectionStringsExpressionBuilder
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom;
-using System.Web.UI;
-#if notyet
-using System.Web.UI.Design;
-#endif
-
-namespace System.Web.Compilation {
-
-#if notyet
- [ExpressionEditor(typeof (ConnectionStringsExpressionEditor))]
-#endif
- [ExpressionPrefix("ConnectionStrings")]
- public class ConnectionStringsExpressionBuilder : ExpressionBuilder {
-
- public ConnectionStringsExpressionBuilder ()
- {
- }
-
- [MonoTODO]
- public override object EvaluateExpression (object target, BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override CodeExpression GetCodeExpression (BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static string GetConnectionString (string connectionStringName)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static string GetConnectionStringProviderName (string connectionStringName)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override object ParseExpression (string expression, Type propertyType, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- public override bool SupportsEvaluate {
- get { return true; }
- }
- }
-
-}
-
-#endif
-
-
diff --git a/mcs/class/System.Web/System.Web.Compilation/DesignTimeResourceProviderFactoryAttribute.cs b/mcs/class/System.Web/System.Web.Compilation/DesignTimeResourceProviderFactoryAttribute.cs
deleted file mode 100644
index 9204cad1066..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/DesignTimeResourceProviderFactoryAttribute.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-// System.Web.Compilation.DesignTimeResourceProviderFactoryAttribute
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom;
-using System.Web.UI;
-
-namespace System.Web.Compilation {
-
- [AttributeUsage (AttributeTargets.Class)]
- public sealed class DesignTimeResourceProviderFactoryAttribute : Attribute
- {
- string factoryTypeName;
-
- public DesignTimeResourceProviderFactoryAttribute (string factoryTypeName)
- {
- this.factoryTypeName = factoryTypeName;
- }
-
- public DesignTimeResourceProviderFactoryAttribute (System.Type factoryType)
- {
- this.factoryTypeName = factoryType.AssemblyQualifiedName;
- }
-
- public override bool IsDefaultAttribute ()
- {
- return factoryTypeName == null;
- }
-
- public string FactoryTypeName {
- get { return factoryTypeName; }
- }
-
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/Directive.cs b/mcs/class/System.Web/System.Web.Compilation/Directive.cs
index a9fea61240d..7f2262ac328 100644
--- a/mcs/class/System.Web/System.Web.Compilation/Directive.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/Directive.cs
@@ -40,11 +40,7 @@ namespace System.Web.Compilation
static string [] page_atts = { "AspCompat", "AutoEventWireup", "Buffer",
"ClassName", "ClientTarget", "CodePage",
"CompilerOptions", "ContentType", "Culture", "Debug",
- "Description",
-#if NET_2_0
- "EnableEventValidation",
-#endif
- "EnableSessionState", "EnableViewState",
+ "Description", "EnableSessionState", "EnableViewState",
"EnableViewStateMac", "ErrorPage", "Explicit",
"Inherits", "Language", "LCID", "ResponseEncoding",
"Src", "SmartNavigation", "Strict", "Trace",
diff --git a/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilder.cs b/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilder.cs
index 4863f9be199..d8e0d25e3b7 100644
--- a/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilder.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilder.cs
@@ -38,23 +38,18 @@ namespace System.Web.Compilation
{
}
- public abstract CodeExpression GetCodeExpression (BoundPropertyEntry entry, object parsedData,
- ExpressionBuilderContext context);
-
- public virtual object EvaluateExpression (object target, BoundPropertyEntry entry, object parsedData,
- ExpressionBuilderContext context)
- {
- return null;
+ public virtual bool SupportsEvaluate {
+ get { return false; }
}
- public virtual object ParseExpression (string expression, Type propertyType, ExpressionBuilderContext context)
+ public virtual object EvaluateExpression (object target, BoundPropertyEntry entry, object parsedData,
+ ExpressionBuilderContext context)
{
return null;
}
- public virtual bool SupportsEvaluate {
- get { return false; }
- }
+ public abstract CodeExpression GetCodeExpression (BoundPropertyEntry entry, object parsedData,
+ ExpressionBuilderContext context);
}
}
diff --git a/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilderContext.cs b/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilderContext.cs
index 585c2519360..e095dc9e2e1 100644
--- a/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilderContext.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/ExpressionBuilderContext.cs
@@ -33,7 +33,7 @@ using System.Web.UI;
namespace System.Web.Compilation
{
- public sealed class ExpressionBuilderContext {
+ public class ExpressionBuilderContext {
TemplateControl tcontrol;
string vpath;
diff --git a/mcs/class/System.Web/System.Web.Compilation/ExpressionEditorAttribute.cs b/mcs/class/System.Web/System.Web.Compilation/ExpressionEditorAttribute.cs
deleted file mode 100644
index 646cef4c938..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ExpressionEditorAttribute.cs
+++ /dev/null
@@ -1,69 +0,0 @@
-//
-// System.Web.Compilation.ExpressionEditorAttribute
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- [AttributeUsage (AttributeTargets.Class)]
- public sealed class ExpressionEditorAttribute : Attribute
- {
- string typeName;
-
- public ExpressionEditorAttribute (string typeName)
- {
- this.typeName = typeName;
- }
-
- public ExpressionEditorAttribute (Type type)
- {
- this.typeName = type.AssemblyQualifiedName;
- }
-
- public string EditorTypeName {
- get { return typeName; }
- }
-
- [MonoTODO]
- public override bool Equals (object obj)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override int GetHashCode ()
- {
- throw new NotImplementedException ();
- }
-
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/ExpressionPrefixAttribute.cs b/mcs/class/System.Web/System.Web.Compilation/ExpressionPrefixAttribute.cs
deleted file mode 100644
index 47f2732684a..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ExpressionPrefixAttribute.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-//
-// System.Web.Compilation.ExpressionPrefixAttribute
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- [AttributeUsage (AttributeTargets.Class)]
- public sealed class ExpressionPrefixAttribute : Attribute
- {
- string expressionPrefix;
-
- public ExpressionPrefixAttribute (string expressionPrefix)
- {
- this.expressionPrefix = expressionPrefix;
- }
-
- public string ExpressionPrefix {
- get { return expressionPrefix; }
- }
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/IAssemblyPostProcessor.cs b/mcs/class/System.Web/System.Web.Compilation/IAssemblyPostProcessor.cs
deleted file mode 100644
index 9b2797608c4..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/IAssemblyPostProcessor.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// System.Web.Compilation.IAssemblyPostProcessor
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- public interface IAssemblyPostProcessor : IDisposable
- {
- void PostProcessAssembly (string path);
- }
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/IImplicitResourceProvider.cs b/mcs/class/System.Web/System.Web.Compilation/IImplicitResourceProvider.cs
index eb27062de54..3e2c38ff5db 100644
--- a/mcs/class/System.Web/System.Web.Compilation/IImplicitResourceProvider.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/IImplicitResourceProvider.cs
@@ -36,7 +36,7 @@ namespace System.Web.Compilation
public interface IImplicitResourceProvider
{
object GetObject (ImplicitResourceKey key, CultureInfo culture);
- ICollection GetImplicitResourceKeys (string keyPrefix);
+ ICollection GetResources (string keyPrefix);
}
}
#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/IResourceProvider.cs b/mcs/class/System.Web/System.Web.Compilation/IResourceReader.cs
index 212c9e0dd3e..4cdb8b14784 100644
--- a/mcs/class/System.Web/System.Web.Compilation/IResourceProvider.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/IResourceReader.cs
@@ -27,14 +27,12 @@
//
using System.Resources;
-using System.Globalization;
#if NET_2_0
namespace System.Web.Compilation
{
public interface IResourceProvider
{
- object GetObject (string resourceKey, CultureInfo culture);
IResourceReader ResourceReader { get; }
}
}
diff --git a/mcs/class/System.Web/System.Web.Compilation/ImplicitResourceKey.cs b/mcs/class/System.Web/System.Web.Compilation/ImplicitResourceKey.cs
index d829134fd82..ac2bab3c256 100644
--- a/mcs/class/System.Web/System.Web.Compilation/ImplicitResourceKey.cs
+++ b/mcs/class/System.Web/System.Web.Compilation/ImplicitResourceKey.cs
@@ -29,37 +29,15 @@
#if NET_2_0
namespace System.Web.Compilation
{
- public sealed class ImplicitResourceKey
+ public class ImplicitResourceKey
{
- string filter;
- string keyPrefix;
- string property;
-
- public ImplicitResourceKey (string filter, string keyPrefix, string property)
- {
- this.filter = filter;
- this.keyPrefix = keyPrefix;
- this.property = property;
- }
-
public ImplicitResourceKey ()
{
}
- public string Filter {
- get { return filter; }
- set { filter = value; }
- }
-
- public string KeyPrefix {
- get { return keyPrefix; }
- set { keyPrefix = value; }
- }
-
- public string Property {
- get { return property; }
- set { property = value; }
- }
+ public string Filter;
+ public string KeyPrefix;
+ public string Property;
}
}
#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/LinePragmaCodeInfo.cs b/mcs/class/System.Web/System.Web.Compilation/LinePragmaCodeInfo.cs
deleted file mode 100644
index 0e862021e5a..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/LinePragmaCodeInfo.cs
+++ /dev/null
@@ -1,80 +0,0 @@
-//
-// System.Web.Compilation.LinePragmaCodeInfo
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- [Serializable]
- public sealed class LinePragmaCodeInfo {
-
- public LinePragmaCodeInfo ()
- {
- }
-
- [MonoTODO]
- public int CodeLength {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public bool IsCodeNugget {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public int StartColumn {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public int StartGeneratedColumn {
- get {
- throw new NotImplementedException ();
- }
- }
-
- [MonoTODO]
- public int StartLine {
- get {
- throw new NotImplementedException ();
- }
- }
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/PrecompilationFlags.cs b/mcs/class/System.Web/System.Web.Compilation/PrecompilationFlags.cs
deleted file mode 100644
index 5e2981326f9..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/PrecompilationFlags.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-//
-// System.Web.Compilation.IAssemblyPostProcessor
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- [Flags]
- public enum PrecompilationFlags
- {
- Default = 0,
- Updatable = 1,
- OverwriteTarget = 2,
- ForceDebug = 4,
- Clean = 8,
- CodeAnalysis = 16,
- AllowPartiallyTrustedCallers = 32,
- DelaySign = 64,
- FixedNames = 128
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/ResourceExpressionBuilder.cs b/mcs/class/System.Web/System.Web.Compilation/ResourceExpressionBuilder.cs
deleted file mode 100644
index 7245a8e476b..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ResourceExpressionBuilder.cs
+++ /dev/null
@@ -1,85 +0,0 @@
-//
-// System.Web.Compilation.ResourceExpressionBuilder
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-using System;
-using System.CodeDom;
-using System.Web.UI;
-#if notyet
-using System.Web.UI.Design;
-#endif
-
-namespace System.Web.Compilation {
-
-#if notyet
- [ExpressionEditor(typeof (ResourceExpressionEditor))]
-#endif
- [ExpressionPrefix("Resources")]
- public class ResourceExpressionBuilder : ExpressionBuilder {
-
- public ResourceExpressionBuilder ()
- {
- }
-
- [MonoTODO]
- public override object EvaluateExpression (object target, BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override CodeExpression GetCodeExpression (BoundPropertyEntry entry, object parsedData, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public static ResourceExpressionFields ParseExpression (string expression)
- {
- throw new NotImplementedException ();
- }
-
- [MonoTODO]
- public override object ParseExpression (string expression, Type propertyType, ExpressionBuilderContext context)
- {
- throw new NotImplementedException ();
- }
-
- public override bool SupportsEvaluate {
- get { return true; }
- }
- }
-
-}
-
-#endif
-
-
diff --git a/mcs/class/System.Web/System.Web.Compilation/ResourceExpressionFields.cs b/mcs/class/System.Web/System.Web.Compilation/ResourceExpressionFields.cs
deleted file mode 100644
index da9644c2941..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ResourceExpressionFields.cs
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// System.Web.Compilation.ResourceExpressionFields
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- public sealed class ResourceExpressionFields {
-
- internal ResourceExpressionFields ()
- {
- }
-
- [MonoTODO]
- public string ClassKey {
- get {
- throw new NotImplementedException ();
- }
- }
-
-
- [MonoTODO]
- public string ResourceKey {
- get {
- throw new NotImplementedException ();
- }
- }
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Compilation/ResourceProviderFactory.cs b/mcs/class/System.Web/System.Web.Compilation/ResourceProviderFactory.cs
deleted file mode 100644
index 2e97a8c758a..00000000000
--- a/mcs/class/System.Web/System.Web.Compilation/ResourceProviderFactory.cs
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// System.Web.Compilation.ResourceProviderFactory
-//
-// Authors:
-// Chris Toshok (toshok@ximian.com)
-//
-// (C) 2006 Novell, Inc (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if NET_2_0
-
-namespace System.Web.Compilation {
-
- public abstract class ResourceProviderFactory
- {
- protected ResourceProviderFactory() { }
-
- public abstract IResourceProvider CreateGlobalResourceProvider (string classKey);
- public abstract IResourceProvider CreateLocalResourceProvider (string virtualPath);
- }
-
-}
-
-#endif
diff --git a/mcs/class/System.Web/System.Web.Configuration/ChangeLog b/mcs/class/System.Web/System.Web.Configuration/ChangeLog
index e661f1e3c30..72878fdac89 100644
--- a/mcs/class/System.Web/System.Web.Configuration/ChangeLog
+++ b/mcs/class/System.Web/System.Web.Configuration/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-08 Konstantin Triger <kostat@mainsoft.com>
-
- * HttpCapabilitiesBase.cs: TARGET_JVM changes to let the compilation
- pass with csc 1.1.
-
2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* WebConfigurationSettings.cs: patch by Cyrille Colin that sets the
diff --git a/mcs/class/System.Web/System.Web.Configuration/HttpCapabilitiesBase.cs b/mcs/class/System.Web/System.Web.Configuration/HttpCapabilitiesBase.cs
index 10152dd4085..8e413cad69b 100644
--- a/mcs/class/System.Web/System.Web.Configuration/HttpCapabilitiesBase.cs
+++ b/mcs/class/System.Web/System.Web.Configuration/HttpCapabilitiesBase.cs
@@ -35,11 +35,7 @@ namespace System.Web.Configuration
// CAS
[AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
-#if NET_2_0
public partial class HttpCapabilitiesBase
-#else
- public class HttpCapabilitiesBase
-#endif
{
Hashtable capabilities;
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/ChangeLog b/mcs/class/System.Web/System.Web.Configuration_2.0/ChangeLog
index 6a6d83aabed..c1a79fb5ae3 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/ChangeLog
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/ChangeLog
@@ -1,55 +1,3 @@
-2006-01-18 Chris Toshok <toshok@ximian.com>
-
- * SystemWebSectionGroup.cs: wrap System.Web.Services references in
- WEBSERVICES_DEP.
-
-2006-01-16 Chris Toshok <toshok@ximian.com>
-
- * WebConfigurationManager.cs: implement a IConfigurationSystem for
- use with WebConfigurationManager.
- (GetSection): try to load the section
- using GetWebApplicationSection before calling into
- ConfigurationManager.GetSection.
- (GetWebApplicationConfiguration): move common code to here.
- (GetWebApplicationSection): use GetWebApplicationConfiguration.
- (AppSettings): implement.
-
- * WebConfigurationHost.cs (GetWebConfigFileName): add
- "Web.Config", and move to an array/loop implementation. maybe we
- should scan the directory and check ToLower() instead of
- explicitly enumerating?
-
-2006-01-10 Chris Toshok <toshok@ximian.com>
-
- * SystemWebSectionGroup.cs (HostingEnvironment): enable this property.
- (ProcessModel): add the ConfigurationPropertyAttribute.
-
-2006-01-10 Chris Toshok <toshok@ximian.com>
-
- * PagesSection.cs (.cctor): fix the default value for the
- enableSessionState attribute - it's not a bool, but a
- PagesEnableSessionState enum.
-
-2006-01-10 Chris Toshok <toshok@ximian.com>
-
- * MachineKeySection.cs (ValidationKeyBytes, DecryptionKeyBytes,
- DecryptionKey192Bits): if the keys are null, generate them. Fixes
- Page.EnableViewStateMac support.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * RoleManagerSection.cs, SqlCacheDepencendySection.cs,
- SessionStateSection.cs, TraceSection.cs, SecurityPolicySection.cs,
- PagesSection.cs, RulesSettings.cs, UrlMappingSection.cs: fix
- dumper output.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * ExpressionBuilderCollection.cs (.cctor): no need to create a
- collection property here. we're already in the collection.
-
- * CompilationSection.cs: fix typo.
-
2006-01-04 Chris Toshok <toshok@ximian.com>
* MachineKeySection.cs: bring over some more internal methods from
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/CompilationSection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/CompilationSection.cs
index 63b8acba3cc..83537ec919e 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/CompilationSection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/CompilationSection.cs
@@ -63,7 +63,7 @@ namespace System.Web.Configuration
ConfigurationPropertyOptions.None);
assemblyPostProcessorTypeProp = new ConfigurationProperty ("assemblyPostProcessorType", typeof (string), "");
batchProp = new ConfigurationProperty ("batch", typeof (bool), true);
- buildProvidersProp = new ConfigurationProperty ("buildProviders", typeof (BuildProviderCollection), null,
+ buildProvidersProp = new ConfigurationProperty ("buidProviders", typeof (BuildProviderCollection), null,
null, PropertyHelper.DefaultValidator,
ConfigurationPropertyOptions.None);
batchTimeoutProp = new ConfigurationProperty ("batchTimeout", typeof (TimeSpan), new TimeSpan (0, 15, 0),
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/ExpressionBuilderCollection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/ExpressionBuilderCollection.cs
index 00bef969c92..bb7b6322c37 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/ExpressionBuilderCollection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/ExpressionBuilderCollection.cs
@@ -42,6 +42,10 @@ namespace System.Web.Configuration
static ExpressionBuilderCollection ()
{
props = new ConfigurationPropertyCollection ();
+ ConfigurationProperty prop = new ConfigurationProperty ("", typeof (ExpressionBuilderCollection), null,
+ null, PropertyHelper.DefaultValidator,
+ ConfigurationPropertyOptions.IsDefaultCollection);
+ props.Add (prop);
}
public ExpressionBuilderCollection (): base (CaseInsensitiveComparer.DefaultInvariant)
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/MachineKeySection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/MachineKeySection.cs
index 0ba0a10bd74..f5c11d68c67 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/MachineKeySection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/MachineKeySection.cs
@@ -191,27 +191,15 @@ namespace System.Web.Configuration {
}
internal byte [] ValidationKeyBytes {
- get {
- if (validation_key == null)
- SetValidationKey (ValidationKey);
- return validation_key;
- }
+ get { return validation_key; }
}
internal byte [] DecryptionKeyBytes {
- get {
- if (decryption_key == null)
- SetDecryptionKey (DecryptionKey);
- return decryption_key;
- }
+ get { return decryption_key; }
}
internal byte [] DecryptionKey192Bits {
- get {
- if (decryption_key_192bits == null)
- SetDecryptionKey (DecryptionKey);
- return decryption_key_192bits;
- }
+ get { return decryption_key_192bits; }
}
#endregion
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/PagesSection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/PagesSection.cs
index 768f4b1c39d..aba225ea79d 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/PagesSection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/PagesSection.cs
@@ -72,10 +72,9 @@ namespace System.Web.Configuration
ConfigurationPropertyOptions.None);
autoEventWireupProp = new ConfigurationProperty ("autoEventWireup", typeof(bool), true);
bufferProp = new ConfigurationProperty ("buffer", typeof(bool), false);
- controlsProp = new ConfigurationProperty ("controls", typeof(TagPrefixCollection), null,
- null, null, ConfigurationPropertyOptions.None);
+ controlsProp = new ConfigurationProperty ("controls", typeof(TagPrefixCollection), null);
enableEventValidationProp = new ConfigurationProperty ("enableEventValidation", typeof (bool), true);
- enableSessionStateProp = new ConfigurationProperty ("enableSessionState", typeof (PagesEnableSessionState), PagesEnableSessionState.True);
+ enableSessionStateProp = new ConfigurationProperty ("enableSessionState", typeof (PagesEnableSessionState), true);
enableViewStateProp = new ConfigurationProperty ("enableViewState", typeof (bool), true);
enableViewStateMacProp = new ConfigurationProperty ("enableViewStateMac", typeof (bool), true);
maintainScrollPositionOnPostBackProp = new ConfigurationProperty ("maintainScrollPositionOnPostBack", typeof (bool), false);
@@ -84,14 +83,12 @@ namespace System.Web.Configuration
modeProp = new ConfigurationProperty ("compilationMode", typeof (CompilationMode), CompilationMode.Always,
new GenericEnumConverter (typeof (CompilationMode)), PropertyHelper.DefaultValidator,
ConfigurationPropertyOptions.None);
- namespacesProp = new ConfigurationProperty ("namespaces", typeof (NamespaceCollection), null,
- null, null, ConfigurationPropertyOptions.None);
+ namespacesProp = new ConfigurationProperty ("namespacesProp", typeof (NamespaceCollection), null);
pageBaseTypeProp = new ConfigurationProperty ("pageBaseType", typeof (string), "System.Web.UI.Page");
pageParserFilterTypeProp = new ConfigurationProperty ("pageParserFilterType", typeof (string), "");
smartNavigationProp = new ConfigurationProperty ("smartNavigation", typeof (bool), false);
styleSheetThemeProp = new ConfigurationProperty ("styleSheetTheme", typeof (string), "");
- tagMappingProp = new ConfigurationProperty ("tagMapping", typeof (TagMapCollection), null,
- null, null, ConfigurationPropertyOptions.None);
+ tagMappingProp = new ConfigurationProperty ("tagMapping", typeof (TagMapCollection), null);
themeProp = new ConfigurationProperty ("theme", typeof (string), "");
userControlBaseTypeProp = new ConfigurationProperty ("userControlBaseType", typeof (string), "System.Web.UI.UserControl");
validateRequestProp = new ConfigurationProperty ("validateRequest", typeof (bool), true);
@@ -103,7 +100,6 @@ namespace System.Web.Configuration
properties.Add (asyncTimeoutProp);
properties.Add (autoEventWireupProp);
properties.Add (bufferProp);
- properties.Add (controlsProp);
properties.Add (enableEventValidationProp);
properties.Add (enableSessionStateProp);
properties.Add (enableViewStateProp);
@@ -112,12 +108,10 @@ namespace System.Web.Configuration
properties.Add (masterPageFileProp);
properties.Add (maxPageStateFieldLengthProp);
properties.Add (modeProp);
- properties.Add (namespacesProp);
properties.Add (pageBaseTypeProp);
properties.Add (pageParserFilterTypeProp);
properties.Add (smartNavigationProp);
properties.Add (styleSheetThemeProp);
- properties.Add (tagMappingProp);
properties.Add (themeProp);
properties.Add (userControlBaseTypeProp);
properties.Add (validateRequestProp);
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/RoleManagerSection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/RoleManagerSection.cs
index 999296e65bf..5d6c398576e 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/RoleManagerSection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/RoleManagerSection.cs
@@ -85,8 +85,7 @@ namespace System.Web.Configuration {
domainProp = new ConfigurationProperty ("domain", typeof (string));
enabledProp = new ConfigurationProperty ("enabled", typeof (bool), false);
maxCachedResultsProp = new ConfigurationProperty ("maxCachedResults", typeof (int), 25);
- providersProp = new ConfigurationProperty ("providers", typeof (ProviderSettingsCollection), null,
- null, null, ConfigurationPropertyOptions.None);
+ providersProp = new ConfigurationProperty ("providers", typeof (ProviderSettingsCollection));
properties = new ConfigurationPropertyCollection ();
properties.Add (cacheRolesInCookieProp);
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/RuleSettings.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/RuleSettings.cs
index 2c39d986df1..38349d500c0 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/RuleSettings.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/RuleSettings.cs
@@ -60,9 +60,7 @@ namespace System.Web.Configuration {
TypeDescriptor.GetConverter (typeof (int)),
new IntegerValidator (1, Int32.MaxValue),
ConfigurationPropertyOptions.None);
- minIntervalProp = new ConfigurationProperty ("minInterval", typeof (TimeSpan), TimeSpan.FromSeconds (0),
- PropertyHelper.InfiniteTimeSpanConverter, null,
- ConfigurationPropertyOptions.None);
+ minIntervalProp = new ConfigurationProperty ("minInterval", typeof (TimeSpan), TimeSpan.FromSeconds (0));
nameProp = new ConfigurationProperty ("name", typeof (string), "",
TypeDescriptor.GetConverter (typeof (string)),
PropertyHelper.NonEmptyStringValidator,
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/SecurityPolicySection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/SecurityPolicySection.cs
index 694bb3a0067..34aa3f54938 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/SecurityPolicySection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/SecurityPolicySection.cs
@@ -42,8 +42,7 @@ namespace System.Web.Configuration {
static SecurityPolicySection ()
{
- Prop = new ConfigurationProperty ("", typeof (TrustLevelCollection), null,
- null, null, ConfigurationPropertyOptions.IsDefaultCollection);
+ Prop = new ConfigurationProperty ("", typeof (TrustLevelCollection), null, ConfigurationPropertyOptions.IsDefaultCollection);
properties = new ConfigurationPropertyCollection ();
properties.Add (Prop);
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/SessionStateSection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/SessionStateSection.cs
index b0d9d2b0958..c46285128e5 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/SessionStateSection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/SessionStateSection.cs
@@ -64,17 +64,12 @@ namespace System.Web.Configuration {
cookielessProp = new ConfigurationProperty ("cookieless", typeof (string), null);
cookieNameProp = new ConfigurationProperty ("cookieName", typeof (string), "ASP.NET_SessionId");
customProviderProp = new ConfigurationProperty ("customProvider", typeof (string), "");
- modeProp = new ConfigurationProperty ("mode", typeof (SessionStateMode), SessionStateMode.InProc,
- new GenericEnumConverter (typeof (SessionStateMode)), null,
- ConfigurationPropertyOptions.None);
+ modeProp = new ConfigurationProperty ("mode", typeof (SessionStateMode), SessionStateMode.InProc);
partitionResolverTypeProp = new ConfigurationProperty ("partitionResolverType", typeof (string), "");
- providersProp = new ConfigurationProperty ("providers", typeof (ProviderSettingsCollection), null,
- null, null, ConfigurationPropertyOptions.None);
+ providersProp = new ConfigurationProperty ("providers", typeof (ProviderSettingsCollection));
regenerateExpiredSessionIdProp = new ConfigurationProperty ("regenerateExpiredSessionId", typeof (bool), true);
sessionIDManagerTypeProp = new ConfigurationProperty ("sessionIDManagerType", typeof (string), "");
- sqlCommandTimeoutProp = new ConfigurationProperty ("sqlCommandTimeout", typeof (TimeSpan), TimeSpan.FromSeconds (30),
- PropertyHelper.TimeSpanSecondsOrInfiniteConverter, null,
- ConfigurationPropertyOptions.None);
+ sqlCommandTimeoutProp = new ConfigurationProperty ("sqlCommandTimeout", typeof (TimeSpan), TimeSpan.FromSeconds (30));
sqlConnectionStringProp = new ConfigurationProperty ("sqlConnectionString", typeof (string), "data source=localhost;Integrated Security=SSPI");
stateConnectionStringProp = new ConfigurationProperty ("stateConnectionString", typeof (string), "tcpip=loopback:42424");
stateNetworkTimeoutProp = new ConfigurationProperty ("stateNetworkTimeout", typeof (TimeSpan), TimeSpan.FromSeconds (10),
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/SqlCacheDependencySection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/SqlCacheDependencySection.cs
index 4f2772c6e2f..fadc571d209 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/SqlCacheDependencySection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/SqlCacheDependencySection.cs
@@ -46,8 +46,7 @@ namespace System.Web.Configuration {
static SqlCacheDependencySection ()
{
- databasesProp = new ConfigurationProperty ("databases", typeof (SqlCacheDependencyDatabaseCollection), null,
- null, null, ConfigurationPropertyOptions.None);
+ databasesProp = new ConfigurationProperty ("databases", typeof (SqlCacheDependencyDatabaseCollection));
enabledProp = new ConfigurationProperty ("enabled", typeof (bool), true);
pollTimeProp = new ConfigurationProperty ("pollTime", typeof (int), 60000);
properties = new ConfigurationPropertyCollection ();
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/SystemWebSectionGroup.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/SystemWebSectionGroup.cs
index 9d4f9cc76b9..4786664fdb5 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/SystemWebSectionGroup.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/SystemWebSectionGroup.cs
@@ -32,9 +32,6 @@
using System;
using System.Configuration;
-#if WEBSERVICES_DEP
-using System.Web.Services.Configuration;
-#endif
namespace System.Web.Configuration
{
@@ -95,10 +92,12 @@ namespace System.Web.Configuration
get { return (HealthMonitoringSection)Sections ["healthMonitoring"]; }
}
+#if notyet
[ConfigurationProperty ("hostingEnvironment")]
public HostingEnvironmentSection HostingEnvironment {
get { return (HostingEnvironmentSection)Sections ["hostingEnvironment"]; }
}
+#endif
[ConfigurationProperty ("httpCookies")]
public HttpCookiesSection HttpCookies {
@@ -145,7 +144,6 @@ namespace System.Web.Configuration
get { return (PagesSection)Sections ["pages"]; }
}
- [ConfigurationProperty ("processModel")]
public ProcessModelSection ProcessModel {
get { return (ProcessModelSection)Sections ["processModel"]; }
}
@@ -205,7 +203,7 @@ namespace System.Web.Configuration
get { return (WebPartsSection)Sections ["webParts"]; }
}
-#if WEBSERVICES_DEP
+#if notyet
[ConfigurationProperty ("webServices")]
public WebServicesSection WebServices {
get { return (WebServicesSection)Sections ["webServices"]; }
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/TraceSection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/TraceSection.cs
index 9d46a69a1e3..0f15a248486 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/TraceSection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/TraceSection.cs
@@ -58,9 +58,7 @@ namespace System.Web.Configuration {
TypeDescriptor.GetConverter (typeof (int)),
PropertyHelper.IntFromZeroToMaxValidator,
ConfigurationPropertyOptions.None);
- traceModeProp = new ConfigurationProperty ("traceMode", typeof (TraceDisplayMode), TraceDisplayMode.SortByTime,
- new GenericEnumConverter (typeof (TraceDisplayMode)), null,
- ConfigurationPropertyOptions.None);
+ traceModeProp = new ConfigurationProperty ("traceMode", typeof (TraceDisplayMode), TraceDisplayMode.SortByTime);
writeToDiagnosticsTraceProp = new ConfigurationProperty ("writeToDiagnosticsTrace", typeof (bool), false);
properties = new ConfigurationPropertyCollection ();
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/UrlMappingsSection.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/UrlMappingsSection.cs
index e6d6da9c6d5..71f390e6363 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/UrlMappingsSection.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/UrlMappingsSection.cs
@@ -44,8 +44,7 @@ namespace System.Web.Configuration {
static UrlMappingsSection ()
{
enabledProp = new ConfigurationProperty ("enabled", typeof (bool), true);
- urlMappingsProp = new ConfigurationProperty ("", typeof (UrlMappingCollection), null,
- null, null, ConfigurationPropertyOptions.IsDefaultCollection);
+ urlMappingsProp = new ConfigurationProperty ("", typeof (UrlMappingCollection), null, ConfigurationPropertyOptions.IsDefaultCollection);
properties = new ConfigurationPropertyCollection ();
properties.Add (enabledProp);
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationHost.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationHost.cs
index cf4b3faa2bf..a9b92baefeb 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationHost.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationHost.cs
@@ -233,14 +233,12 @@ namespace System.Web.Configuration
string GetWebConfigFileName (string dir)
{
- string[] filenames = new string[] {"Web.Config", "Web.config", "web.config" };
-
- foreach (string fn in filenames) {
- string file = Path.Combine (dir, fn);
- if (File.Exists (file))
- return file;
- }
-
+ string file = Path.Combine (dir, "Web.config");
+ if (File.Exists (file))
+ return file;
+ file = Path.Combine (dir, "web.config");
+ if (File.Exists (file))
+ return file;
return null;
}
diff --git a/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs b/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs
index 76fcb01aa8c..ee96ba12812 100644
--- a/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs
+++ b/mcs/class/System.Web/System.Web.Configuration_2.0/WebConfigurationManager.cs
@@ -178,12 +178,9 @@ namespace System.Web.Configuration {
throw new NotImplementedException ();
}
+ [MonoTODO ("this shouldn't call ConfigurationManager.GetSection")]
public static object GetSection (string sectionName)
{
- object section = GetWebApplicationSection (sectionName);
- if (section != null)
- return section;
-
return ConfigurationManager.GetSection (sectionName);
}
@@ -193,7 +190,8 @@ namespace System.Web.Configuration {
throw new NotImplementedException ();
}
- static _Configuration GetWebApplicationConfiguration ()
+ [MonoTODO]
+ public static object GetWebApplicationSection (string sectionName)
{
_Configuration config;
@@ -204,40 +202,15 @@ namespace System.Web.Configuration {
else
config = OpenWebConfiguration (HttpContext.Current.Request.PhysicalApplicationPath);
- return config;
- }
-
- [MonoTODO]
- public static object GetWebApplicationSection (string sectionName)
- {
- _Configuration config = GetWebApplicationConfiguration ();
-
ConfigurationSection section = config.GetSection (sectionName);
return section;
}
- static _Configuration webConfiguration;
- static NameValueCollection appSettings;
[MonoTODO]
public static NameValueCollection AppSettings {
get {
- if (appSettings == null) {
-
- if (webConfiguration == null)
- webConfiguration = OpenWebConfiguration ("~");
-
- AppSettingsSection section = (AppSettingsSection)webConfiguration.GetSection ("appSettings");
-
- appSettings = new NameValueCollection ();
-
- foreach (string key in section.Settings.AllKeys) {
- KeyValueConfigurationElement ele = section.Settings[key];
- appSettings.Add (ele.Key, ele.Value);
- }
- }
-
- return appSettings;
+ throw new NotImplementedException ();
}
}
@@ -268,99 +241,7 @@ namespace System.Web.Configuration {
path = path.Substring (0, path.Length - 1);
return path;
}
-
-
-#region stuff copied from WebConfigurationSettings
-#if TARGET_J2EE
- static private IConfigurationSystem oldConfig {
- get {
- return (IConfigurationSystem)AppDomain.CurrentDomain.GetData("WebConfigurationManager.oldConfig");
- }
- set {
- AppDomain.CurrentDomain.SetData("WebConfigurationManager.oldConfig", value);
- }
- }
-
- static private Web20DefaultConfig config {
- get {
- return (Web20DefaultConfig)AppDomain.CurrentDomain.GetData("WebConfigurationManager.config");
- }
- set {
- AppDomain.CurrentDomain.SetData("WebConfigurationManager.config", value);
- }
- }
-#else
- static IConfigurationSystem oldConfig;
- static Web20DefaultConfig config;
-#endif
- const BindingFlags privStatic = BindingFlags.NonPublic | BindingFlags.Static;
- static readonly object lockobj = new object ();
-
- public static void Init ()
- {
- lock (lockobj) {
- if (config != null)
- return;
-
- Web20DefaultConfig settings = Web20DefaultConfig.GetInstance ();
- Type t = typeof (ConfigurationSettings);
- MethodInfo changeConfig = t.GetMethod ("ChangeConfigurationSystem",
- privStatic);
-
- if (changeConfig == null)
- throw new ConfigurationException ("Cannot find method CCS");
-
- object [] args = new object [] {settings};
- oldConfig = (IConfigurationSystem) changeConfig.Invoke (null, args);
- config = settings;
-
- config.Init ();
- }
- }
}
-
- class Web20DefaultConfig : IConfigurationSystem
- {
-#if TARGET_J2EE
- static private Web20DefaultConfig instance {
- get {
- Web20DefaultConfig val = (Web20DefaultConfig)AppDomain.CurrentDomain.GetData("Web20DefaultConfig.instance");
- if (val == null) {
- val = new Web20DefaultConfig();
- AppDomain.CurrentDomain.SetData("Web20DefaultConfig.instance", val);
- }
- return val;
- }
- set {
- AppDomain.CurrentDomain.SetData("Web20DefaultConfig.instance", value);
- }
- }
-#else
- static Web20DefaultConfig instance;
-#endif
-
- static Web20DefaultConfig ()
- {
- instance = new Web20DefaultConfig ();
- }
-
- public static Web20DefaultConfig GetInstance ()
- {
- return instance;
- }
-
- public object GetConfig (string sectionName)
- {
- return WebConfigurationManager.GetSection (sectionName);
- }
-
- public void Init ()
- {
- // nothing. We need a context.
- }
- }
-
-#endregion
}
#endif
diff --git a/mcs/class/System.Web/System.Web.Hosting/ChangeLog b/mcs/class/System.Web/System.Web.Hosting/ChangeLog
index 9e807744235..a84dcc8ca33 100644
--- a/mcs/class/System.Web/System.Web.Hosting/ChangeLog
+++ b/mcs/class/System.Web/System.Web.Hosting/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-19 Konstantin Triger <kostat@mainsoft.com>
-
- * ServletWorkerRequest.jvm.cs: refactoring.
-
2005-11-28 Robert Jordan <robertj@gmx.net>
* SimpleWorkerRequest.cs: fixed MapPath () for the case
diff --git a/mcs/class/System.Web/System.Web.Hosting/ServletWorkerRequest.jvm.cs b/mcs/class/System.Web/System.Web.Hosting/ServletWorkerRequest.jvm.cs
index 9128657b2ed..f9e04e56a7d 100644
--- a/mcs/class/System.Web/System.Web.Hosting/ServletWorkerRequest.jvm.cs
+++ b/mcs/class/System.Web/System.Web.Hosting/ServletWorkerRequest.jvm.cs
@@ -33,154 +33,299 @@ using System.Collections;
using System.Web;
using javax.servlet;
using javax.servlet.http;
-using System.Collections.Specialized;
-using System.Globalization;
-namespace System.Web.Hosting {
+namespace System.Web.Hosting
+{
[MonoTODO("Implement security demands on the path usage functions (and review)")]
[ComVisible (false)]
- internal sealed class ServletWorkerRequest : HttpWorkerRequest {
- readonly HttpServlet _HttpServlet;
- readonly HttpServletRequest _HttpServletRequest;
- readonly HttpServletResponse _HttpServletResponse;
-
- static readonly StringDictionary _srvVarsToHeaderMap;
+ internal class ServletWorkerRequest : HttpWorkerRequest
+ {
+ private string _Page;
+ private string _Query;
+ private string _PathInfo = String.Empty;
+ private string _AppVirtualPath;
+ private string _AppPhysicalPath;
+ private string _AppInstallPath;
+ private bool _HasInstallInfo;
+
+ private static string SLASH = "/";
+ private ServletOutputStream _ServletOutputStream;
+ private HttpServlet _HttpServlet;
+ private HttpServletRequest _HttpServletRequest;
+ private HttpServletResponse _HttpServletResponse;
private string [][] unknownHeaders;
private HttpWorkerRequest.EndOfSendNotification _endOfSendCallback;
private object _endOfSendArgs;
- static ServletWorkerRequest() {
- _srvVarsToHeaderMap = new StringDictionary();
- _srvVarsToHeaderMap.Add("HTTP_ACCEPT", "Accept");
- _srvVarsToHeaderMap.Add("HTTP_REFERER", "Referer");
- _srvVarsToHeaderMap.Add("HTTP_ACCEPT_LANGUAGE", "Accept-Language");
- _srvVarsToHeaderMap.Add("HTTP_ACCEPT_ENCODING", "Accept-Encoding");
- _srvVarsToHeaderMap.Add("HTTP_CONNECTION", "Connection");
- _srvVarsToHeaderMap.Add("HTTP_HOST", "Host");
- _srvVarsToHeaderMap.Add("HTTP_USER_AGENT", "User-Agent");
- _srvVarsToHeaderMap.Add("HTTP_SOAPACTION", "SOAPAction");
+
+ private ServletWorkerRequest ()
+ {
}
- public ServletWorkerRequest (HttpServlet servlet, HttpServletRequest req, HttpServletResponse resp) {
+ public ServletWorkerRequest (HttpServlet servlet, HttpServletRequest req, HttpServletResponse resp, ServletOutputStream output)
+ :this(String.Empty, String.Empty ,String.Empty, String.Empty ,null)
+ {
+#if DEBUG
+ Console.WriteLine("Constructor 1 of ServletWorkerRequest!! -->");
+#endif
_HttpServlet = servlet;
_HttpServletRequest = req;
_HttpServletResponse = resp;
+ _ServletOutputStream = output;
+
+ string contextPath = req.getContextPath();
+ string requestURI = req.getRequestURI();
+ if (requestURI.Equals(contextPath) ||
+ ((requestURI.Length - contextPath.Length) == 1) && requestURI[requestURI.Length-1] == '/' && requestURI.StartsWith(contextPath))
+ requestURI = contextPath + req.getServletPath();
+
+ _Page = requestURI.Substring(contextPath.Length);
+
+ if (_Page.StartsWith("/"))
+ _Page = _Page.Substring(1);
+
+ _Query = req.getQueryString();
+ //_PathInfo = req.getPathInfo();
+ _AppVirtualPath = req.getContextPath();
+ _AppPhysicalPath = J2EEUtils.GetApplicationRealPath(servlet.getServletConfig());
+#if DEBUG
+ LogCurrentPageLocation();
+#endif
+ }
+
+ public ServletWorkerRequest (string Page, string Query, ServletOutputStream output)
+ :this(Page, Query)
+ {
+#if DEBUG
+ Console.WriteLine("Constructor 2 of ServletWorkerRequest!! -->");
+#endif
+ //_Page = Page;
+ ParsePathInfo ();
+
+ //_Query = Query;
+ AppDomain current = AppDomain.CurrentDomain;
+ object o = current.GetData (".appPath");
+ if (o == null)
+ throw new HttpException ("Cannot get .appPath");
+ _AppPhysicalPath = (string)current.GetData(IAppDomainConfig.WEB_APP_DIR);
+
+ o = current.GetData (".hostingVirtualPath");
+ if (o == null)
+ throw new HttpException ("Cannot get .hostingVirtualPath");
+ _AppVirtualPath = CheckAndAddVSlash (o.ToString ());
+
+ o = current.GetData (".hostingInstallDir");
+ if (o == null)
+ throw new HttpException ("Cannot get .hostingInstallDir");
+ _AppInstallPath = o.ToString ();
+ _ServletOutputStream = output;
+
+ if (_AppPhysicalPath == null)
+ throw new HttpException ("Invalid app domain");
+
+ _HasInstallInfo = true;
+#if DEBUG
+ LogCurrentPageLocation();
+#endif
+ }
+
+ public ServletWorkerRequest (string AppVirtualPath,
+ string AppPhysicalPath,
+ string Page,
+ string Query,
+ ServletOutputStream output) : this (Page, Query)
+ {
+#if DEBUG
+ Console.WriteLine("Constructor 3 of ServletWorkerRequest!! -->");
+#endif
+ if (AppDomain.CurrentDomain.GetData (".appPath") == null)
+ throw new HttpException ("Invalid app domain");
+
+ //_Page = Page;
+ ParsePathInfo ();
+ //_Query = Query;
+ _AppVirtualPath = AppVirtualPath;
+ _AppPhysicalPath = CheckAndAddSlash (AppPhysicalPath);
+ _ServletOutputStream = output;
+ _HasInstallInfo = false;
+#if DEBUG
+ LogCurrentPageLocation();
+#endif
+ }
+
+ public ServletWorkerRequest (string Page, string Query)
+ {
+ _Page = Page;
+
+ _Query = Query;
+ AppDomain current = AppDomain.CurrentDomain;
+ object o = current.GetData (".appPath");
+ if (o == null)
+ throw new HttpException ("Cannot get .appPath");
+ _AppPhysicalPath = o.ToString ();
+
+ o = current.GetData (".hostingVirtualPath");
+ if (o == null)
+ throw new HttpException ("Cannot get .hostingVirtualPath");
+ _AppVirtualPath = o.ToString ();
+
+ o = current.GetData (".hostingInstallDir");
+ if (o == null)
+ throw new HttpException ("Cannot get .hostingInstallDir");
+ _AppInstallPath = o.ToString ();
+
+ if (_AppPhysicalPath == null)
+ throw new HttpException ("Invalid app domain");
+
+ _HasInstallInfo = true;
+
+ ExtractPagePathInfo();
+ }
+
+ public ServletOutputStream ServletOutputStream
+ {
+ get
+ {
+ return _ServletOutputStream;
+ }
}
- public HttpServlet Servlet {
+ public HttpServlet Servlet
+ {
get {
return _HttpServlet;
}
}
- public HttpServletRequest ServletRequest {
+ public HttpServletRequest ServletRequest
+ {
get{
return _HttpServletRequest;
}
}
- public HttpServletResponse ServletResponse {
+ public HttpServletResponse ServletResponse
+ {
get{
return _HttpServletResponse;
}
}
[MonoTODO("Implement security")]
- public override string MachineInstallDirectory {
+ public override string MachineInstallDirectory
+ {
get {
+ if (_HasInstallInfo)
+ return _AppInstallPath;
+
return ICalls.GetMachineInstallDirectory ();
}
}
- public override string MachineConfigPath {
+ public override string MachineConfigPath
+ {
get { return ICalls.GetMachineConfigPath (); }
}
- public override void EndOfRequest () {
+ public override void EndOfRequest ()
+ {
+ _ServletOutputStream = null;
+ _HttpServlet = null;
+ _HttpServletRequest = null;
+ _HttpServletResponse = null;
if (_endOfSendCallback != null)
_endOfSendCallback(this, _endOfSendArgs);
}
- public override void FlushResponse (bool finalFlush) {
- ServletOutputStream servletOutputStream = _HttpServletResponse.getOutputStream();
- servletOutputStream.flush();
+ public override void FlushResponse (bool finalFlush)
+ {
+ _ServletOutputStream.flush();
if (finalFlush)
- servletOutputStream.close();
+ _ServletOutputStream.close();
}
- public override string GetAppPath () {
- return _HttpServletRequest.getContextPath();
+ public override string GetAppPath ()
+ {
+ return _AppVirtualPath;
}
- public override string GetAppPathTranslated () {
- return J2EEUtils.GetApplicationRealPath(_HttpServlet.getServletConfig());;
+ public override string GetAppPathTranslated ()
+ {
+ return _AppPhysicalPath;
}
- public override string GetFilePath () {
- string uri = GetUriPath();
- string pathInfo = GetPathInfo();
- if (pathInfo != null && pathInfo.Length > 0)
- uri = uri.Substring(0, uri.Length - pathInfo.Length);
-
- return uri;
+ public override string GetFilePath ()
+ {
+ return CreatePath (false);
}
- public override string GetFilePathTranslated () {
- string page = GetFilePath ();
+ public override string GetFilePathTranslated ()
+ {
+ string page = _Page;
if (Path.DirectorySeparatorChar != '/')
- page = page.Replace ('/', Path.DirectorySeparatorChar);
+ page = _Page.Replace ('/', Path.DirectorySeparatorChar);
if (page [0] == Path.DirectorySeparatorChar)
page = page.Substring (1);
- return Path.Combine (GetAppPathTranslated (), page);
+ return (Path.Combine (_AppPhysicalPath, page));
}
- public override string GetHttpVerbName () {
+ public override string GetHttpVerbName ()
+ {
return _HttpServletRequest.getMethod();
}
- public override string GetHttpVersion () {
+ public override string GetHttpVersion ()
+ {
return _HttpServletRequest.getProtocol();
}
- public override string GetLocalAddress () {
- return _HttpServletRequest.getLocalAddr();
+ public override string GetLocalAddress ()
+ {
+ return _HttpServletRequest.getServerName();
}
- public override int GetLocalPort () {
- return _HttpServletRequest.getLocalPort();
+ public override int GetLocalPort ()
+ {
+ return _HttpServletRequest.getServerPort();
}
- public override string GetPathInfo () {
- return _HttpServletRequest.getPathInfo();
+ public override string GetPathInfo ()
+ {
+ return (null != _PathInfo) ? _PathInfo : String.Empty;
}
- public override string GetQueryString () {
- return _HttpServletRequest.getQueryString();
+ public override string GetQueryString ()
+ {
+ return _Query;
}
- public override string GetRawUrl () {
- return _HttpServletRequest.getRequestURL().ToString();
- }
+ public override string GetRawUrl ()
+ {
+ string path = CreatePath (true);
+ if (null != _Query && _Query.Length > 0)
+ return path + "?" + _Query;
- public override string GetRemoteAddress() {
- return _HttpServletRequest.getRemoteAddr();
+ return path;
}
- public override string GetRemoteName() {
- return _HttpServletRequest.getRemoteHost();
+ public override string GetRemoteAddress()
+ {
+ return _HttpServletRequest.getRemoteAddr();
}
-
- public override int GetRemotePort() {
- try {
+ public override int GetRemotePort()
+ {
+ try
+ {
return _HttpServletRequest.getRemotePort();
}
- catch(Exception e) { //should catch also java.lang.Throwable
+ catch(Exception e) //should catch also java.lang.Throwable
+ {
//if servlet API is 2.3 and below - there is no
//method getRemotePort in ServletRequest interface...
//should be described as limitation.
@@ -188,66 +333,42 @@ namespace System.Web.Hosting {
}
}
- public override string GetServerVariable(string name) {
- // FIXME: We need to make a proper mapping between the standard server
- // variables and java equivalent. probably we have to have a configuration file
- // which associates between the two. Pay a special attention on GetUnknownRequestHeader/s
- // while implementing. Ensure that system web "common" code correctly calls each method.
-
-
- string upperName = name.ToUpper();
- string headerName = _srvVarsToHeaderMap[name];
-
- if (headerName != null)
- return _HttpServletRequest.getHeader( headerName );
-
- switch (name.ToUpper(CultureInfo.InvariantCulture)) {
- case "AUTH_TYPE" : return _HttpServletRequest.getAuthType();
- case "CONTENT_LENGTH" : return Convert.ToString(_HttpServletRequest.getContentLength());
- case "CONTENT_TYPE" : return _HttpServletRequest.getContentType();
- case "QUERY_STRING" : return _HttpServletRequest.getQueryString();
- case "REMOTE_ADDR" : return _HttpServletRequest.getRemoteAddr();
- case "REMOTE_HOST" : return _HttpServletRequest.getRemoteHost();
- case "REMOTE_USER" : return _HttpServletRequest.getRemoteUser();
- case "REQUEST_METHOD" : return _HttpServletRequest.getMethod();
- case "REQUEST_URI" : return _HttpServletRequest.getRequestURI();
- case "SCRIPT_NAME" : return GetFilePath ();
- case "SERVER_NAME" : return _HttpServletRequest.getServerName();
- case "SERVER_PORT" : return Convert.ToString(_HttpServletRequest.getServerPort());
- case "SERVER_PROTOCOL" : return _HttpServletRequest.getProtocol();
- case "SERVER_SOFTWARE" : return Servlet.getServletContext().getServerInfo();
- case "PATH_INFO" : return _HttpServletRequest.getPathInfo();
- default : return _HttpServletRequest.getHeader( name );
- }
+ public override string GetServerVariable(string name)
+ {
+ return String.Empty;
}
- public override string GetUriPath() {
- return _HttpServletRequest.getRequestURI();
+ public override string GetUriPath()
+ {
+ return CreatePath (true);
}
- public override IntPtr GetUserToken() {
+ public override IntPtr GetUserToken()
+ {
return IntPtr.Zero;
}
- public override string MapPath (string path) {
- string appVirtualPath = GetAppPath();
- if (path.StartsWith(appVirtualPath)) {
- path = path.Remove(0,appVirtualPath.Length);
+ public override string MapPath (string path)
+ {
+ if (path.StartsWith(_AppVirtualPath))
+ {
+ path = path.Remove(0,_AppVirtualPath.Length);
if (path.StartsWith("/"))
path = path.Remove(0,1);
}
//string realPath = Servlet.getServletContext().getRealPath(path);
- // if (Path.IsPathRooted(path))
- // return path;
- // if (!path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL)&&
- // !path.StartsWith("/") && !path.StartsWith("\\")&& !Path.IsPathRooted(path))
- // return IAppDomainConfig.WAR_ROOT_SYMBOL + "/" + path;
- // else if (!path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL)&& !Path.IsPathRooted(path))
- // return IAppDomainConfig.WAR_ROOT_SYMBOL + path;
- // else
- // return path;
-
- if (path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL)) {
+// if (Path.IsPathRooted(path))
+// return path;
+// if (!path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL)&&
+// !path.StartsWith("/") && !path.StartsWith("\\")&& !Path.IsPathRooted(path))
+// return IAppDomainConfig.WAR_ROOT_SYMBOL + "/" + path;
+// else if (!path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL)&& !Path.IsPathRooted(path))
+// return IAppDomainConfig.WAR_ROOT_SYMBOL + path;
+// else
+// return path;
+
+ if (path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL))
+ {
return path;
}
@@ -261,11 +382,12 @@ namespace System.Web.Hosting {
return retVal;
}
- public override void SendResponseFromFile (IntPtr handle, long offset, long length) {
- throw new NotSupportedException();
+ public override void SendResponseFromFile (IntPtr handle, long offset, long length)
+ {
}
- public override void SendResponseFromFile (string filename, long offset, long length) {
+ public override void SendResponseFromFile (string filename, long offset, long length)
+ {
using (FileStream fs = File.OpenRead (filename)) {
byte [] buffer = new byte [4 * 1024];
@@ -281,44 +403,152 @@ namespace System.Web.Hosting {
}
}
- public override void SendResponseFromMemory (byte [] data, int length) {
+ public override void SendResponseFromMemory (byte [] data, int length)
+ {
sbyte [] sdata = vmw.common.TypeUtils.ToSByteArray(data);
- _HttpServletResponse.getOutputStream().write(sdata, 0 , length);
+ _ServletOutputStream.write(sdata, 0 , length);
+ }
+
+ public override void SendStatus(int statusCode, string statusDescription)
+ {
+ _HttpServletResponse.setStatus(statusCode, statusDescription);
}
- public override void SendStatus(int statusCode, string statusDescription) {
- // setStatus(int, string) is deprecated
- _HttpServletResponse.setStatus(statusCode/*, statusDescription*/);
+ public override void SendUnknownResponseHeader(string name, string value)
+ {
+ _HttpServletResponse.addHeader(name, value);
+ }
+
+ public override bool HeadersSent ()
+ {
+ return false;
}
- public override void SendUnknownResponseHeader(string name, string value) {
+ public override void SendCalculatedContentLength (int contentLength)
+ {
+ //FIXME: Should we ignore this for apache2?
+ SendUnknownResponseHeader ("Content-Length", contentLength.ToString ());
+ }
+
+ public override void SendKnownResponseHeader (int index, string value)
+ {
if (HeadersSent ())
return;
- _HttpServletResponse.addHeader(name, value);
+ string headerName = HttpWorkerRequest.GetKnownResponseHeaderName (index);
+ SendUnknownResponseHeader (headerName, value);
}
+
+ // Create's a path string
+ private string CheckAndAddSlash(string sPath)
+ {
+ if (null == sPath)
+ return null;
+
+ if (String.Empty == sPath)
+ return SLASH;
+
+ if (!sPath.EndsWith ("" + Path.DirectorySeparatorChar))
+ return sPath + Path.DirectorySeparatorChar;
- public override bool HeadersSent () {
- return _HttpServletResponse.isCommitted();
+ return sPath;
}
- public override void SendCalculatedContentLength (int contentLength) {
- _HttpServletResponse.setContentLength(contentLength);
+ // Creates a path string
+ private string CheckAndAddVSlash(string sPath)
+ {
+ if (null == sPath)
+ return null;
+
+ if (!sPath.EndsWith ("/"))
+ return sPath + "/";
+
+ return sPath;
}
- public override void SendKnownResponseHeader (int index, string value) {
- SendUnknownResponseHeader (GetKnownResponseHeaderName (index), value);
+ // Create's a path string
+ private string CreatePath (bool bIncludePathInfo)
+ {
+ string sPath = Path.Combine (_AppVirtualPath, _Page);
+
+ if (bIncludePathInfo && null != _PathInfo)
+ {
+ sPath += _PathInfo;
+ }
+
+ return sPath;
}
- public override string GetKnownRequestHeader (int index) {
- return GetUnknownRequestHeader(GetKnownRequestHeaderName (index));
+ // "The extra path information, as given by the client. In
+ // other words, scripts can be accessed by their virtual
+ // pathname, followed by extra information at the end of this
+ // path. The extra information is sent as PATH_INFO."
+ private void ExtractPagePathInfo ()
+ {
+ if (_Page == null || _Page == String.Empty)
+ return;
+
+ string FullPath = GetFilePathTranslated ();
+ int PathInfoLength = 0;
+ string LastFile = String.Empty;
+
+ while (PathInfoLength < _Page.Length) {
+ if (LastFile.Length > 0) {
+ // increase it by the length of the file plus
+ // a "/"
+ //
+ PathInfoLength += LastFile.Length + 1;
+ }
+
+ if (File.Exists (FullPath) == true)
+ break;
+
+ if (Directory.Exists (FullPath) == true) {
+ PathInfoLength -= (LastFile.Length + 1);
+ break;
+ }
+
+ LastFile = Path.GetFileName (FullPath);
+ FullPath = Path.GetDirectoryName (FullPath);
+ }
+
+ if (PathInfoLength <= 0 || PathInfoLength > _Page.Length)
+ return;
+
+ _PathInfo = _Page.Substring (_Page.Length - PathInfoLength);
+ _Page = _Page.Substring (0, _Page.Length - PathInfoLength);
}
+
+ // Parses out the string after / known as the "path info"
+ private void ParsePathInfo ()
+ {
+ int iPos = _Page.LastIndexOf("/");
+ if (iPos >= 0) {
+ _PathInfo = _Page.Substring (iPos);
+ _Page = _Page.Substring (0, iPos);
+ }
+ }
+
+ public override string GetKnownRequestHeader (int index)
+ {
+ if (_HttpServletRequest == null)
+ return null;
+
+ string headerName = HttpWorkerRequest.GetKnownRequestHeaderName (index);
+
+ return _HttpServletRequest.getHeader(headerName);
+ }
+
+ public override string GetUnknownRequestHeader (string name)
+ {
+ if (_HttpServletRequest == null)
+ return null;
- public override string GetUnknownRequestHeader (string name) {
return _HttpServletRequest.getHeader(name);
}
- public override string [][] GetUnknownRequestHeaders () {
+ public override string [][] GetUnknownRequestHeaders ()
+ {
if (unknownHeaders == null) {
ArrayList pairs = new ArrayList ();
for (java.util.Enumeration he = _HttpServletRequest.getHeaderNames(); he.hasMoreElements() ;) {
@@ -340,30 +570,32 @@ namespace System.Web.Hosting {
return unknownHeaders;
}
- public override int ReadEntityBody (byte [] buffer, int size) {
+ public override int ReadEntityBody (byte [] buffer, int size)
+ {
if (buffer == null || size == 0)
return 0;
- sbyte [] sbuffer = vmw.common.TypeUtils.ToSByteArray(buffer);
- int r = _HttpServletRequest.getInputStream().read(sbuffer, 0, size);
+ sbyte [] sbuffer = new sbyte [size];
+ int r = _HttpServletRequest.getInputStream().read(sbuffer, 0, size);
+ for (int i=0; i < r; i++) buffer[i] = (byte) sbuffer[i];
return (r==-1)?0:r;
}
- public override void SetEndOfSendNotification(System.Web.HttpWorkerRequest.EndOfSendNotification callback, object extraData) {
+ public override void SetEndOfSendNotification(System.Web.HttpWorkerRequest.EndOfSendNotification callback, object extraData)
+ {
_endOfSendCallback = callback;
_endOfSendArgs = extraData;
}
-
- public override string GetProtocol() {
- return _HttpServletRequest.getScheme();
- }
-
- public override string GetServerName() {
- return _HttpServletRequest.getServerName();
- }
-
- public override bool IsSecure() {
- return _HttpServletRequest.isSecure();
+
+ // Prints some stats about the current _Page.
+ private void LogCurrentPageLocation()
+ {
+#if DEBUG
+ Console.WriteLine(" relpath=" + _AppVirtualPath);
+ Console.WriteLine(" physical path=" + _AppPhysicalPath);
+ Console.WriteLine(" page=" + _Page);
+#endif
}
+
}
}
diff --git a/mcs/class/System.Web/System.Web.J2EE/BaseHttpServlet.cs b/mcs/class/System.Web/System.Web.J2EE/BaseHttpServlet.cs
index e620195991f..e44be30e1e0 100644
--- a/mcs/class/System.Web/System.Web.J2EE/BaseHttpServlet.cs
+++ b/mcs/class/System.Web/System.Web.J2EE/BaseHttpServlet.cs
@@ -60,6 +60,8 @@ namespace System.Web.J2EE
try
{
AppDomain servletDomain = createServletDomain(config);
+ if(servletDomain == null)
+ throw new ArgumentException("cannot initialize AppDomain!");
//GH Infromation Initizalization
servletDomain.SetData(J2EEConsts.CLASS_LOADER, vmw.common.TypeUtils.ToClass(this).getClassLoader());
@@ -78,6 +80,11 @@ namespace System.Web.J2EE
{
try
{
+ String pathInfo = req.getRequestURI();
+ String contextPath = req.getContextPath();
+ if (pathInfo.Equals(contextPath) ||
+ ((pathInfo.Length - contextPath.Length) == 1) && pathInfo[pathInfo.Length-1] == '/' && pathInfo.StartsWith(contextPath))
+ pathInfo = contextPath + req.getServletPath();
// Very important - to update Virtual Path!!!
AppDomain servletDomain = (AppDomain)this.getServletContext().getAttribute(J2EEConsts.APP_DOMAIN);
servletDomain.SetData(IAppDomainConfig.APP_VIRT_DIR, req.getContextPath());
@@ -93,10 +100,11 @@ namespace System.Web.J2EE
resp.setHeader("X-Powered-By", "ASP.NET");
resp.setHeader("X-AspNet-Version", "1.1.4322");
-// PageMapper.LoadFileList();
+ ServletOutputStream hos = resp.getOutputStream();
+ PageMapper.LoadFileList();
resp.setContentType("text/html");
- HttpWorkerRequest gwr = new ServletWorkerRequest(this, req, resp);
+ HttpWorkerRequest gwr = new ServletWorkerRequest(this, req, resp, resp.getOutputStream());
HttpRuntime.ProcessRequest(gwr);
}
finally
@@ -138,6 +146,8 @@ namespace System.Web.J2EE
private AppDomain createServletDomain(ServletConfig config)
{
+ try
+ {
string rootPath = J2EEUtils.GetApplicationRealPath(config);
AppDomainSetup domainSetup = new AppDomainSetup();
string name = config.getServletName();//.getServletContextName();
@@ -173,6 +183,13 @@ namespace System.Web.J2EE
//servletDomain.SetData(".hostingVirtualPath", "/");
servletDomain.SetData(".hostingInstallDir", "/");
return servletDomain;
+ }
+ catch(Exception e)
+ {
+ Console.WriteLine("ERROR in createServletDomain {0},{1}",e.GetType(), e.Message);
+ Console.WriteLine(e.StackTrace);
+ return null;
+ }
}
virtual protected vmw.@internal.io.IObjectsDeserializer GetDeserializer()
diff --git a/mcs/class/System.Web/System.Web.J2EE/ChangeLog b/mcs/class/System.Web/System.Web.J2EE/ChangeLog
index c227f95fa10..447ff628597 100644
--- a/mcs/class/System.Web/System.Web.J2EE/ChangeLog
+++ b/mcs/class/System.Web/System.Web.J2EE/ChangeLog
@@ -1,14 +1,3 @@
-2006-01-19 Konstantin Triger <kostat@mainsoft.com>
-
- * BaseHttpServlet.cs: call correct ServletWorkerRequest ctor
-
-2006-01-09 Konstantin Triger <kostat@mainsoft.com>
-
- * BaseHttpServlet.cs: merging main/32, main/33
- * PageMapper.cs: merging main/17-27
- * J2EEUtils.cs: mergind ghutils.cs@@/main/9
- * Added ObjectInputStream.cs, ObjectOutputStream.cs
-
2005-09-08 Eyal Alalouf <eyala@mainsoft.com>
* BaseHttpServlet.cs, PageMapper.cs, BaseStaticHttpServlet.cs,
SessionListener.cs - backward compatibility fixes.
diff --git a/mcs/class/System.Web/System.Web.J2EE/J2EEUtils.cs b/mcs/class/System.Web/System.Web.J2EE/J2EEUtils.cs
index 4742628e482..c5d4d970b94 100644
--- a/mcs/class/System.Web/System.Web.J2EE/J2EEUtils.cs
+++ b/mcs/class/System.Web/System.Web.J2EE/J2EEUtils.cs
@@ -65,7 +65,7 @@ namespace System.Web.J2EE
string path = "";
ServletContext context = config.getServletContext();
string appDir = config.getInitParameter(IAppDomainConfig.APP_DIR_NAME);
-// Console.WriteLine("appdir = {0}", appDir);
+ Console.WriteLine("appdir = {0}", appDir);
if (appDir != null)
{
try
@@ -73,7 +73,7 @@ namespace System.Web.J2EE
java.io.File f = new java.io.File(appDir);
if(f.exists())
{
-// Console.WriteLine("Physical path= {0}", appDir);
+ Console.WriteLine("Physical path= {0}", appDir);
path = appDir;
}
}
@@ -91,7 +91,7 @@ namespace System.Web.J2EE
if (!path.EndsWith ("/") && !path.EndsWith ("\\"))
path += "/";
-// Console.WriteLine("Physical path= {0}", path);
+ Console.WriteLine("Physical path= {0}", path);
return path;
}
diff --git a/mcs/class/System.Web/System.Web.J2EE/ObjectInputStream.cs b/mcs/class/System.Web/System.Web.J2EE/ObjectInputStream.cs
deleted file mode 100755
index e65db690fac..00000000000
--- a/mcs/class/System.Web/System.Web.J2EE/ObjectInputStream.cs
+++ /dev/null
@@ -1,107 +0,0 @@
-//
-// (C) 2005 Mainsoft Corporation (http://www.mainsoft.com)
-//
-// Authors:
-// Vladimir Krasnov <vladimirk@mainsoft.com>
-// Konstantin Triger <kostat@mainsoft.com>
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Web.J2EE
-{
- internal class ObjectInputStream : System.IO.Stream {
- readonly java.io.ObjectInput _javaObjectInput;
-
- public ObjectInputStream(java.io.ObjectInput stream) {
- _javaObjectInput = stream;
- }
-
- public override bool CanRead {
- get {
- return true;
- }
- }
-
- public override bool CanWrite {
- get {
- return false;
- }
- }
-
- public override bool CanSeek {
- get {
- return true;
- }
- }
-
- public override long Length {
- get {
- throw new NotSupportedException();
- }
- }
-
- public override long Position {
- get {
- throw new NotSupportedException();
- }
- set {
- throw new NotSupportedException();
- }
- }
-
- public override void Flush() {
- throw new NotSupportedException();
- }
-
- public override long Seek(long offset, System.IO.SeekOrigin origin) {
- if (origin == System.IO.SeekOrigin.Current)
- return _javaObjectInput.skip(offset);
-
- throw new NotSupportedException();
- }
-
- public override void SetLength(long value) {
- throw new NotSupportedException();
- }
-
- public override int Read(byte[] buffer, int offset, int count) {
- return _javaObjectInput.read(vmw.common.TypeUtils.ToSByteArray(buffer), offset, count);
- }
-
- public override void Write(byte[] buffer, int offset, int count) {
- throw new NotSupportedException();
- }
-
- public override int ReadByte() {
- return _javaObjectInput.read();
- }
-
- public override void Close() {
- _javaObjectInput.close();
- }
-
- public java.io.ObjectInput NativeStream {
- get {return _javaObjectInput;}
- }
- }
-}
diff --git a/mcs/class/System.Web/System.Web.J2EE/ObjectOutputStream.cs b/mcs/class/System.Web/System.Web.J2EE/ObjectOutputStream.cs
deleted file mode 100755
index ecfadb47c8f..00000000000
--- a/mcs/class/System.Web/System.Web.J2EE/ObjectOutputStream.cs
+++ /dev/null
@@ -1,104 +0,0 @@
-//
-// (C) 2005 Mainsoft Corporation (http://www.mainsoft.com)
-//
-// Authors:
-// Vladimir Krasnov <vladimirk@mainsoft.com>
-// Konstantin Triger <kostat@mainsoft.com>
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Web.J2EE
-{
- internal class ObjectOutputStream : System.IO.Stream {
- readonly java.io.ObjectOutput _javaObjectOutput;
-
- public ObjectOutputStream(java.io.ObjectOutput stream) {
- _javaObjectOutput = stream;
- }
-
- public override bool CanRead {
- get {
- return false;
- }
- }
-
- public override bool CanSeek {
- get {
- return false;
- }
- }
-
- public override bool CanWrite {
- get {
- return true;
- }
- }
-
- public override void Close() {
- _javaObjectOutput.close();
- }
-
- public override void Flush() {
- _javaObjectOutput.flush();
- }
-
- public override long Length {
- get {
- throw new NotSupportedException();
- }
- }
-
- public override long Position {
- get {
- throw new NotSupportedException();
- }
- set {
- throw new NotSupportedException();
- }
- }
-
- public override long Seek(long offset, System.IO.SeekOrigin origin) {
- throw new NotSupportedException();
- }
-
- public override void SetLength(long value) {
- throw new NotSupportedException();
- }
-
- public override int Read(byte[] buffer, int offset, int count) {
- throw new NotSupportedException();
- }
-
- public override void Write(byte[] buffer, int offset, int count) {
- _javaObjectOutput.write( vmw.common.TypeUtils.ToSByteArray(buffer), offset, count );
- }
-
- public override void WriteByte(byte value) {
- _javaObjectOutput.write(value);
- }
-
- public java.io.ObjectOutput NativeStream {
- get {return _javaObjectOutput;}
- }
- }
-}
diff --git a/mcs/class/System.Web/System.Web.J2EE/PageMapper.cs b/mcs/class/System.Web/System.Web.J2EE/PageMapper.cs
index 1ea71e5acc9..587ea307f26 100644
--- a/mcs/class/System.Web/System.Web.J2EE/PageMapper.cs
+++ b/mcs/class/System.Web/System.Web.J2EE/PageMapper.cs
@@ -40,37 +40,27 @@ namespace System.Web.J2EE
public class PageMapper
{
private static readonly string _fileListName = "/filelist.xml";
- private static readonly object LOCK_GETASSEMBLIESCACHEDDOCUMENT = new object();
- private static readonly object LOCK_GETFROMMAPPATHCACHE = new object();
public static string GetFromMapPathCache(string key)
{
- Hashtable answer = null;
- lock(LOCK_GETFROMMAPPATHCACHE)
+ Hashtable answer = (Hashtable) AppDomain.CurrentDomain.GetData(J2EEConsts.MAP_PATH_CACHE);
+ if (answer == null)
{
- answer = (Hashtable) AppDomain.CurrentDomain.GetData(J2EEConsts.MAP_PATH_CACHE);
- if (answer == null)
- {
- answer = new Hashtable();
- CachedDocumentTypeStorage storage = (CachedDocumentTypeStorage)GetAssembliesCachedDocument();
- IDictionaryEnumerator e = storage.GetEnumerator();
- e.Reset();
- while (e.MoveNext())
- {
- string currentFile = (string)((DictionaryEntry)e.Current).Key;
- answer[currentFile]= IAppDomainConfig.WAR_ROOT_SYMBOL + currentFile;
- }
- AppDomain.CurrentDomain.SetData(J2EEConsts.MAP_PATH_CACHE,answer);
-
+ answer = new Hashtable();
+ CachedDocumentTypeStorage storage = (CachedDocumentTypeStorage)GetAssembliesCachedDocument();
+ IDictionaryEnumerator e = storage.GetEnumerator();
+ e.Reset();
+ while (e.MoveNext())
+ {
+ string currentFile = (string)((DictionaryEntry)e.Current).Key;
+ answer[currentFile]= IAppDomainConfig.WAR_ROOT_SYMBOL + currentFile;
}
+ AppDomain.CurrentDomain.SetData(J2EEConsts.MAP_PATH_CACHE,answer);
+
}
return (string)answer[key];
}
- // UNUSED METHOD
- //The method was used by runtime to force file names casesensitivity
- // problem. The filelist.xml file should contain correct file names,
- // but currently it is unused
public static void LoadFileList()
{
Hashtable hashTable = (Hashtable) AppDomain.CurrentDomain.GetData(J2EEConsts.FILE_LIST_FILE);
@@ -80,12 +70,6 @@ namespace System.Web.J2EE
try
{
Stream fs = (Stream)IOUtils.getStream(_fileListName);
- if (fs == null)
- {
- AppDomain.CurrentDomain.SetData(J2EEConsts.FILE_LIST_FILE, new Hashtable());
- return;
- }
-
doc = new XmlDocument();
doc.Load(fs);
}
@@ -110,10 +94,11 @@ namespace System.Web.J2EE
}
}
+ private static readonly object LOCK_OBJECT = new object();
private static ICachedXmlDoc GetAssembliesCachedDocument()
{
- lock(LOCK_GETASSEMBLIESCACHEDDOCUMENT)
+ lock(LOCK_OBJECT)
{
ICachedXmlDoc doc = (ICachedXmlDoc) AppDomain.CurrentDomain.GetData(J2EEConsts.ASSEMBLIES_FILE);
if (doc == null)
@@ -144,7 +129,9 @@ namespace System.Web.J2EE
if (url.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL))
url = url.Substring(IAppDomainConfig.WAR_ROOT_SYMBOL.Length);
- Type t = doc.Get(url);
+ string query = url.ToLower();
+
+ Type t = (Type) doc.Get(query);
if (t == null)
throw new HttpException(404,"The requested resource (" + url + ") is not available.");
@@ -155,7 +142,7 @@ namespace System.Web.J2EE
#region ICachedXmlDoc interface
interface ICachedXmlDoc
{
- Type Get(string key);
+ object Get(object key);
//bool ContainsKey(object key);
}
#endregion
@@ -172,16 +159,18 @@ namespace System.Web.J2EE
private CachedDocumentTypeStorage(int initTableSize)
{
- _table = Hashtable.Synchronized(new Hashtable(initTableSize));
+ _table = new Hashtable(initTableSize);
}
public CachedDocumentTypeStorage() :
this(DEFAULT_PAGES_NUMBER)
{}
- Type ICachedXmlDoc.Get(string o)
+ object ICachedXmlDoc.Get(object o)
{
- return GetTypeByURL(o);
+ if(o is string)
+ return GetTypeByURL((string) o);
+ throw new ArgumentException("the key should be a string");
}
internal IDictionaryEnumerator GetEnumerator()
@@ -191,19 +180,14 @@ namespace System.Web.J2EE
public Type GetTypeByURL(string url)
{
- string lwUrl = url.ToLower();
- lock (_table)
+ if (!_table.ContainsKey(url))
{
- object retVal = _table[lwUrl];
- if (retVal == null)
- {
- PageCompiler compiler = new PageCompiler(url);
- retVal = compiler.GetCachedType();
- _table[lwUrl] = retVal;
- }
-
- return (Type)retVal;
+ PageCompiler compiler = new PageCompiler(url);
+ _table[url] = compiler.GetCachedType();
}
+
+
+ return (Type)_table[url];
}
}
#endregion
@@ -245,10 +229,7 @@ namespace System.Web.J2EE
Console.WriteLine(descPath);
#endif
Stream fs = (Stream)IOUtils.getStream("/" + descPath);
- if (fs != null)
- {
- typeName = GetTypeFromDescStream(fs);
- }
+ typeName = GetTypeFromDescStream(fs);
}
catch (Exception ex)
{
@@ -269,17 +250,10 @@ namespace System.Web.J2EE
if (fileName.ToLower() != "global.asax"
&& fileName.ToLower() != "defaultwsdlhelpgenerator.aspx")
{
- string fullFileName = HttpContext.Current.Request.MapPath(_url);
- if ( File.Exists(fullFileName) ) {
- //type not found - run aspxparser
- string[] command = GetParserCmd();
- if (J2EEUtils.RunProc(command) != 0)
- throw GetCompilerError();
- }
- else {
- string message = "The requested resource (" + _url + ") is not available.";
- throw new HttpException(404, message);
- }
+ //type not found - run aspxparser
+ string[] command = GetParserCmd();
+ if (J2EEUtils.RunProc(command) != 0)
+ throw GetCompilerError();
}
//if the desciptor exists in the real app dir - get the type
try
@@ -389,10 +363,15 @@ namespace System.Web.J2EE
if (file != null)
{
- Location loc = new Location(null);
- loc.Filename = file;
- loc.BeginLine = int.Parse(lineInFile);
- return new ParseException(loc,message);
+ try {
+ Location loc = new Location(null);
+ loc.Filename = file;
+ loc.BeginLine = int.Parse(lineInFile);
+ return new ParseException(loc,message);
+ }
+ // If file doesn't exist, or is unreadable just go on and send
+ // the original error message.
+ catch(Exception e) {}
}
if (message.IndexOf(typeof(FileNotFoundException).Name) != -1 &&
@@ -402,3 +381,10 @@ namespace System.Web.J2EE
}
}
}
+
+namespace System.Web.GH
+{
+ public class PageMapper : System.Web.J2EE.PageMapper
+ {
+ }
+}
diff --git a/mcs/class/System.Web/System.Web.Mail/ChangeLog b/mcs/class/System.Web/System.Web.Mail/ChangeLog
index a9cdc2abb08..8e59828b4c1 100644
--- a/mcs/class/System.Web/System.Web.Mail/ChangeLog
+++ b/mcs/class/System.Web/System.Web.Mail/ChangeLog
@@ -1,9 +1,3 @@
-2006-01-08 Konstantin Triger <kostat@mainsoft.com>
-
- * SmtpClient.cs, SmtpMail.cs, MailMessage.cs, MailMessageWrapper.cs,
- MailAttachment.cs: TARGET_JVM changes to let the compilation
- pass with csc 1.1.
-
2005-11-28 Chris Toshok <toshok@ximian.com>
* SmtpClient.cs: ignore warning 618 (obsolete) when compiling an
diff --git a/mcs/class/System.Web/System.Web.Mail/MailAttachment.cs b/mcs/class/System.Web/System.Web.Mail/MailAttachment.cs
index 809524b6fd3..3d6cb364baf 100644
--- a/mcs/class/System.Web/System.Web.Mail/MailAttachment.cs
+++ b/mcs/class/System.Web/System.Web.Mail/MailAttachment.cs
@@ -34,6 +34,9 @@ using System.Security.Permissions;
namespace System.Web.Mail
{
+#if NET_2_0
+#pragma warning disable 618
+#endif
// CAS
[AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
@@ -76,4 +79,7 @@ namespace System.Web.Mail
get { return encoding; }
}
}
+#if NET_2_0
+#pragma warning restore 618
+#endif
}
diff --git a/mcs/class/System.Web/System.Web.Mail/MailMessage.cs b/mcs/class/System.Web/System.Web.Mail/MailMessage.cs
index 144903ba282..abfe72ebbcf 100644
--- a/mcs/class/System.Web/System.Web.Mail/MailMessage.cs
+++ b/mcs/class/System.Web/System.Web.Mail/MailMessage.cs
@@ -35,6 +35,9 @@ using System.Text;
namespace System.Web.Mail
{
+#if NET_2_0
+#pragma warning disable 618
+#endif
// CAS
[AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
@@ -142,4 +145,7 @@ namespace System.Web.Mail
}
#endif
}
+#if NET_2_0
+#pragma warning restore 618
+#endif
}
diff --git a/mcs/class/System.Web/System.Web.Mail/MailMessageWrapper.cs b/mcs/class/System.Web/System.Web.Mail/MailMessageWrapper.cs
index d7ab68663da..159c336def8 100644
--- a/mcs/class/System.Web/System.Web.Mail/MailMessageWrapper.cs
+++ b/mcs/class/System.Web/System.Web.Mail/MailMessageWrapper.cs
@@ -33,6 +33,10 @@ using System.Text;
namespace System.Web.Mail {
+#if NET_2_0
+#pragma warning disable 618
+#endif
+
// wraps a MailMessage to make an easier
// interface to work with collections of
// addresses instead of a single string
@@ -248,4 +252,8 @@ namespace System.Web.Mail {
}
#endif
}
+
+#if NET_2_0
+#pragma warning restore 618
+#endif
}
diff --git a/mcs/class/System.Web/System.Web.Mail/SmtpClient.cs b/mcs/class/System.Web/System.Web.Mail/SmtpClient.cs
index 97a8109200c..271423a4cf5 100644
--- a/mcs/class/System.Web/System.Web.Mail/SmtpClient.cs
+++ b/mcs/class/System.Web/System.Web.Mail/SmtpClient.cs
@@ -36,6 +36,9 @@ using System.Net.Sockets;
using System.Security.Permissions;
namespace System.Web.Mail {
+#if NET_2_0
+#pragma warning disable 618
+#endif
/// represents a conntection to a smtp server
internal class SmtpClient {
@@ -242,4 +245,7 @@ namespace System.Web.Mail {
}
+#if NET_2_0
+#pragma warning restore 618
+#endif
}
diff --git a/mcs/class/System.Web/System.Web.Mail/SmtpMail.cs b/mcs/class/System.Web/System.Web.Mail/SmtpMail.cs
index 7e6042c0268..c074f44e2fb 100644
--- a/mcs/class/System.Web/System.Web.Mail/SmtpMail.cs
+++ b/mcs/class/System.Web/System.Web.Mail/SmtpMail.cs
@@ -36,6 +36,9 @@ using System.Security.Permissions;
namespace System.Web.Mail
{
+#if NET_2_0
+#pragma warning disable 618
+#endif
// CAS
[AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
@@ -119,4 +122,7 @@ namespace System.Web.Mail
Send (message);
}
}
+#if NET_2_0
+#pragma warning restore 618
+#endif
}
diff --git a/mcs/class/System.Web/System.Web.SessionState/ChangeLog b/mcs/class/System.Web/System.Web.SessionState/ChangeLog
index bce20913ac0..6ce96b6165c 100644
--- a/mcs/class/System.Web/System.Web.SessionState/ChangeLog
+++ b/mcs/class/System.Web/System.Web.SessionState/ChangeLog
@@ -1,11 +1,3 @@
-2006-01-18 Konstantin Triger <kostat@mainsoft.com>
-
- * HttpSessionState.jvm.cs: correcting serialization conditions.
-
-2006-01-09 Konstantin Triger <kostat@mainsoft.com>
-
- * HttpSessionState.jvm.cs: merging HttpSessionState.cs@@/main/19-24
-
2005-11-28 Chris Toshok <toshok@ximian.com>
* SessionStateModule.cs: CONFIGURATION_2_0 work.
diff --git a/mcs/class/System.Web/System.Web.SessionState/HttpSessionState.jvm.cs b/mcs/class/System.Web/System.Web.SessionState/HttpSessionState.jvm.cs
index 42239d7a5d2..0524e74bc8c 100644
--- a/mcs/class/System.Web/System.Web.SessionState/HttpSessionState.jvm.cs
+++ b/mcs/class/System.Web/System.Web.SessionState/HttpSessionState.jvm.cs
@@ -55,6 +55,7 @@ public sealed class HttpSessionState : ICollection, IEnumerable, java.io.Externa
internal bool _abandoned;
private object _app;
+ private bool _readFirstTime = true;
private bool _needSessionPersistence = false;
internal HttpSessionState (string id,
@@ -110,10 +111,10 @@ public sealed class HttpSessionState : ICollection, IEnumerable, java.io.Externa
{
output.writeBoolean(_needSessionPersistence);
if (!_needSessionPersistence)
- //indicates that there is nothing to serialize for this object
+ {
return;
-
- System.Web.J2EE.ObjectOutputStream ms = new System.Web.J2EE.ObjectOutputStream(output);
+ }
+ System.IO.MemoryStream ms = new System.IO.MemoryStream();
System.IO.BinaryWriter bw = new System.IO.BinaryWriter(ms);
bw.Write(_id);
_dict.Serialize(bw);
@@ -130,6 +131,7 @@ public sealed class HttpSessionState : ICollection, IEnumerable, java.io.Externa
else
bw.Write(3);
bw.Write(_isReadonly);
+ output.writeObject(vmw.common.TypeUtils.ToSByteArray(ms.GetBuffer()));
}
}
@@ -138,10 +140,17 @@ public sealed class HttpSessionState : ICollection, IEnumerable, java.io.Externa
lock(this)
{
_needSessionPersistence = input.readBoolean();
- if(!_needSessionPersistence) //noting has been written
+ if (!_needSessionPersistence)
+ {
return;
-
- System.Web.J2EE.ObjectInputStream ms = new System.Web.J2EE.ObjectInputStream( input );
+ }
+ sbyte[] array = (sbyte[])input.readObject();
+ if (!_readFirstTime || array == null || array.Length == 0)
+ {
+ return;
+ }
+ _readFirstTime = false;
+ System.IO.MemoryStream ms = new System.IO.MemoryStream((byte[])vmw.common.TypeUtils.ToByteArray(array));
System.IO.BinaryReader br = new System.IO.BinaryReader(ms);
_id = br.ReadString();
_dict = SessionDictionary.Deserialize(br);
diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/BaseValidator.cs b/mcs/class/System.Web/System.Web.UI.WebControls/BaseValidator.cs
index 75968b8414d..b0fadcb89da 100644
--- a/mcs/class/System.Web/System.Web.UI.WebControls/BaseValidator.cs
+++ b/mcs/class/System.Web/System.Web.UI.WebControls/BaseValidator.cs
@@ -253,14 +253,10 @@ namespace System.Web.UI.WebControls {
if (!IsValid)
writer.AddAttribute ("isvalid", "false");
- else
- if (Display == ValidatorDisplay.Static)
- writer.AddStyleAttribute ("visibility", "hidden");
- else
- writer.AddStyleAttribute ("display", "none");
- if (Display != ValidatorDisplay.Static)
- writer.AddAttribute ("display", Display.ToString());
+ if (Display == ValidatorDisplay.Static) {
+ writer.AddStyleAttribute ("visibility", "static");
+ }
}
base.AddAttributesToRender (writer);
diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/Button.cs b/mcs/class/System.Web/System.Web.UI.WebControls/Button.cs
index 3245aaff7fa..f6bd105a978 100644
--- a/mcs/class/System.Web/System.Web.UI.WebControls/Button.cs
+++ b/mcs/class/System.Web/System.Web.UI.WebControls/Button.cs
@@ -189,11 +189,8 @@ namespace System.Web.UI.WebControls {
writer.AddAttribute (HtmlTextWriterAttribute.Value, Text);
if (CausesValidation && Page != null && Page.AreValidatorsUplevel ()) {
- string onclick = Attributes["onclick"];
- if (onclick != null)
- Attributes.Remove("onclick");
ClientScriptManager csm = new ClientScriptManager (Page);
- writer.AddAttribute (HtmlTextWriterAttribute.Onclick, onclick + csm.GetClientValidationEvent ());
+ writer.AddAttribute (HtmlTextWriterAttribute.Onclick, csm.GetClientValidationEvent ());
writer.AddAttribute ("language", "javascript");
}
diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog b/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
index d92fdded1e3..3e82095c5cb 100644
--- a/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
+++ b/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog
@@ -1,11 +1,3 @@
-2006-01-15 Konstantin Triger <kostat@mainsoft.com>
-
- * Button.cs: preserve user logic when adding client validation.
-
-2006-01-15 Konstantin Triger <kostat@mainsoft.com>
-
- * BaseValidator.cs: fixing visibility bahavior
-
2006-01-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* RangeValidator.cs: allow empty data from the control. Patch from Marek
@@ -16,11 +8,6 @@
* Calendar.cs: use the DateTimeFormatInfo from the current thread. Patch
by Cyrille Colin. Closes bug #77184.
-2006-01-08 Konstantin Triger <kostat@mainsoft.com>
-
- * PagedDataSource.cs, DataGrid.cs: TARGET_JVM changes to let the
- compilation pass with csc 1.1.
-
2005-12-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* DropDownList.cs: HtmlEncode the item text. Fixes bug #76949.
diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/DataGrid.cs b/mcs/class/System.Web/System.Web.UI.WebControls/DataGrid.cs
index 8f320673036..6dfda09afc5 100644
--- a/mcs/class/System.Web/System.Web.UI.WebControls/DataGrid.cs
+++ b/mcs/class/System.Web/System.Web.UI.WebControls/DataGrid.cs
@@ -858,29 +858,6 @@ namespace System.Web.UI.WebControls {
class NCollection : ICollection {
int n;
-#if TARGET_JVM
- class SequenceEnumerator : IEnumerator {
- readonly int _max;
- object _current;
- public SequenceEnumerator(int max) {
- _max = max;
- Reset();
- }
-
- public bool MoveNext() {
- _current = (int)_current + 1;
- return (int)_current >= 0 && (int)_current < _max;
- }
-
- public void Reset() {
- _current = -1;
- }
-
- public object Current {
- get { return _current; }
- }
- }
-#endif
public NCollection (int n)
{
@@ -889,12 +866,8 @@ namespace System.Web.UI.WebControls {
public IEnumerator GetEnumerator ()
{
-#if TARGET_JVM
- return new SequenceEnumerator(n);
-#else
for (int i = 0; i < n; i++)
yield return i;
-#endif
}
public int Count {
diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/PagedDataSource.cs b/mcs/class/System.Web/System.Web.UI.WebControls/PagedDataSource.cs
index 9e036145322..6afb4687e49 100644
--- a/mcs/class/System.Web/System.Web.UI.WebControls/PagedDataSource.cs
+++ b/mcs/class/System.Web/System.Web.UI.WebControls/PagedDataSource.cs
@@ -243,81 +243,10 @@ namespace System.Web.UI.WebControls {
return String.Empty; // as documented
}
-#if TARGET_JVM
- internal class ListEnum : IEnumerator
- {
- int start;
- int end;
- int ind;
- IList list;
-
- internal ListEnum(IList list, int start, int end)
- {
- this.list = list;
- this.start = start;
- this.end = end;
- this.ind = start - 1;
- }
-
- public bool MoveNext()
- {
- ind++;
- return (ind < end);
- }
-
- public void Reset() { ind = start - 1; }
- public object Current { get { return list[ind]; }}
- }
-
private IEnumerator GetListEnum (IList list, int start, int end)
{
if (!allow_paging)
end = list.Count;
- return new ListEnum(list, start, end);
- }
-
- internal class EnumeratorEnum : IEnumerator
- {
- int start;
- int end;
- int ind;
- IEnumerator en;
- PagedDataSource parent;
-
- internal EnumeratorEnum(PagedDataSource parent, IEnumerator en, int start, int end)
- {
- this.parent = parent;
- this.en = en;
- this.start = start;
- this.end = end;
- this.ind = start - 1;
- for (int i = 0; i < start; i++)
- en.MoveNext ();
- }
-
- public bool MoveNext()
- {
- ind++;
- return (!parent.allow_paging || ind < end) && en.MoveNext ();
- }
-
- public void Reset()
- {
- throw new NotSupportedException();
- }
-
- public object Current { get { return en.Current; }}
- }
-
- private IEnumerator GetEnumeratorEnum (IEnumerator e, int start, int end)
- {
- return new EnumeratorEnum(this, e, start, end);
- }
-#else
- private IEnumerator GetListEnum (IList list, int start, int end)
- {
- if (!AllowPaging)
- end = list.Count;
else if (start >= list.Count)
yield break;
@@ -332,7 +261,6 @@ namespace System.Web.UI.WebControls {
for (int i = start; (!allow_paging || i < end) && e.MoveNext (); i++)
yield return e.Current;
}
-#endif
}
}
diff --git a/mcs/class/System.Web/System.Web.UI/ChangeLog b/mcs/class/System.Web/System.Web.UI/ChangeLog
index a2639c7e97f..f74ec432b5b 100644
--- a/mcs/class/System.Web/System.Web.UI/ChangeLog
+++ b/mcs/class/System.Web/System.Web.UI/ChangeLog
@@ -1,41 +1,3 @@
-2006-01-18 Konstantin Triger <kostat@mainsoft.com>
-
- * ObjectStateFormatter.cs: preserve emptiness in ColorFormatter.
-
-2006-01-18 Konstantin Triger <kostat@mainsoft.com>
-
- * HtmlTextWriter.cs: perform case insensitive compare;
- return correct key in default case.
-
-2006-01-11 Chris Toshok <toshok@ximian.com>
-
- * ClientScriptManager.cs (RegisterClientScriptResource):
- implement.
-
-2006-01-11 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * ObjectStateFormatter.cs: Removed TARGET_JVM parts in
- TypeFormatter.Read
-
-2006-01-10 Chris Toshok <toshok@ximian.com>
-
- * Page.cs (ValidateCollection): in NET_2_0 if event validation is
- off, return true.
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * Page.cs: fix a lot of indentation, and add the
- EnableEventValidation .net 2.0 property.
-
-2006-01-09 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * ObjectStateFormatter.cs: Merged TARGET_JVM parts in
- TypeFormatter.Read, TypeFormatter.Write from /main/5
-
-2006-01-09 Konstantin Triger <kostat@mainsoft.com>
-
- * Page.cs: make ProcessRequest virtual under TARGET_JVM.
-
2006-01-04 Chris Toshok <toshok@ximian.com>
* TemplateParser.cs (.ctor): kinda gross, but handle the
diff --git a/mcs/class/System.Web/System.Web.UI/ClientScriptManager.cs b/mcs/class/System.Web/System.Web.UI/ClientScriptManager.cs
index 33f5424f37c..0b819f014f6 100644
--- a/mcs/class/System.Web/System.Web.UI/ClientScriptManager.cs
+++ b/mcs/class/System.Web/System.Web.UI/ClientScriptManager.cs
@@ -295,9 +295,10 @@ namespace System.Web.UI
}
#if NET_2_0
+ [MonoTODO]
public void RegisterClientScriptResource (Type type, string resourceName)
{
- RegisterScript (ref scriptIncludes, type, "resource-" + resourceName, GetWebResourceUrl (typeof(Page), "resourceName"), false);
+ throw new NotImplementedException ();
}
[MonoTODO]
diff --git a/mcs/class/System.Web/System.Web.UI/HtmlTextWriter.cs b/mcs/class/System.Web/System.Web.UI/HtmlTextWriter.cs
index 9bb5f4ada08..30cca3967a6 100644
--- a/mcs/class/System.Web/System.Web.UI/HtmlTextWriter.cs
+++ b/mcs/class/System.Web/System.Web.UI/HtmlTextWriter.cs
@@ -204,11 +204,11 @@ namespace System.Web.UI {
// faster than a linear search?
foreach (HtmlAttribute t in htmlattrs) {
- if (String.Compare(t.name, attrName, true, CultureInfo.InvariantCulture) == 0)
+ if (t.name == attrName)
return t.key;
}
- return (HtmlTextWriterAttribute)(-1);
+ return 0;
}
[MonoTODO]
@@ -229,11 +229,11 @@ namespace System.Web.UI {
// faster than a linear search?
foreach (HtmlStyle t in htmlstyles) {
- if (String.Compare(t.name, styleName, true, CultureInfo.InvariantCulture) == 0)
+ if (t.name == styleName)
return t.key;
}
- return (HtmlTextWriterStyle)(-1);
+ return 0;
}
[MonoTODO]
@@ -251,7 +251,7 @@ namespace System.Web.UI {
// faster than a linear search?
foreach (HtmlTag t in tags) {
- if (String.Compare(t.name, tagName, true, CultureInfo.InvariantCulture) == 0)
+ if (t.name == tagName)
return t.key;
}
diff --git a/mcs/class/System.Web/System.Web.UI/ObjectStateFormatter.cs b/mcs/class/System.Web/System.Web.UI/ObjectStateFormatter.cs
index 27081526946..678e939f518 100644
--- a/mcs/class/System.Web/System.Web.UI/ObjectStateFormatter.cs
+++ b/mcs/class/System.Web/System.Web.UI/ObjectStateFormatter.cs
@@ -663,24 +663,19 @@ namespace System.Web.UI {
if (!c.IsKnownColor) {
w.Write (PrimaryId);
- w.Write(c.IsEmpty);
- if (!c.IsEmpty)
- w.Write (c.ToArgb ());
+ w.Write (c.ToArgb ());
} else {
w.Write (SecondaryId);
- w.Write(c.IsEmpty);
- if (!c.IsEmpty)
- w.Write ((int) c.ToKnownColor ());
+ w.Write ((int) c.ToKnownColor ());
}
}
protected override object Read (byte token, BinaryReader r, ReaderContext ctx)
{
- bool isEmpty = r.ReadBoolean();
if (token == PrimaryId)
- return isEmpty ? Color.Empty : Color.FromArgb (r.ReadInt32 ());
+ return Color.FromArgb (r.ReadInt32 ());
else
- return isEmpty ? Color.Empty : Color.FromKnownColor ((KnownColor) r.ReadInt32 ());
+ return Color.FromKnownColor ((KnownColor) r.ReadInt32 ());
}
protected override Type Type {
@@ -726,7 +721,7 @@ namespace System.Web.UI {
} else {
w.Write (PrimaryId);
w.Write (((Type) o).FullName);
-
+
// We should cache the name of the assembly
w.Write (((Type) o).Assembly.FullName);
}
@@ -737,6 +732,7 @@ namespace System.Web.UI {
if (token == PrimaryId) {
string type = r.ReadString ();
string assembly = r.ReadString ();
+
Type t = Assembly.Load (assembly).GetType (type);
ctx.CacheItem (t);
return t;
diff --git a/mcs/class/System.Web/System.Web.UI/Page.cs b/mcs/class/System.Web/System.Web.UI/Page.cs
index 50fe94a3a0e..00c268a2fc3 100644
--- a/mcs/class/System.Web/System.Web.UI/Page.cs
+++ b/mcs/class/System.Web/System.Web.UI/Page.cs
@@ -72,7 +72,6 @@ namespace System.Web.UI
#endif
public class Page : TemplateControl, IHttpHandler
{
- private bool _eventValidation = true;
private bool _viewState = true;
private bool _viewStateMac;
private string _errorPage;
@@ -158,8 +157,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public bool Buffer
{
get { return Response.BufferOutput; }
@@ -184,7 +183,7 @@ public class Page : TemplateControl, IHttpHandler
}
#if NET_2_0
- [EditorBrowsableAttribute (EditorBrowsableState.Advanced)]
+ [EditorBrowsableAttribute (EditorBrowsableState.Advanced)]
#endif
[DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
[Browsable (false), DefaultValue ("")]
@@ -201,8 +200,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public int CodePage
{
get { return Response.ContentEncoding.CodePage; }
@@ -217,8 +216,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public string ContentType
{
get { return Response.ContentType; }
@@ -243,8 +242,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public string Culture
{
get { return Thread.CurrentThread.CurrentCulture.Name; }
@@ -257,13 +256,6 @@ public class Page : TemplateControl, IHttpHandler
}
#endif
-#if NET_2_0
- public virtual bool EnableEventValidation {
- get { return _eventValidation; }
- set { _eventValidation = value;}
- }
-#endif
-
[Browsable (false)]
public override bool EnableViewState
{
@@ -272,8 +264,8 @@ public class Page : TemplateControl, IHttpHandler
}
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
#endif
[EditorBrowsable (EditorBrowsableState.Never)]
protected bool EnableViewStateMac
@@ -341,8 +333,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public int LCID {
get { return Thread.CurrentThread.CurrentCulture.LCID; }
set { Thread.CurrentThread.CurrentCulture = new CultureInfo (value); }
@@ -387,8 +379,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public string ResponseEncoding
{
get { return Response.ContentEncoding.WebName; }
@@ -447,8 +439,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public bool TraceEnabled
{
get { return Trace.IsEnabled; }
@@ -463,8 +455,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public TraceMode TraceModeValue
{
get { return Trace.TraceMode; }
@@ -493,8 +485,8 @@ public class Page : TemplateControl, IHttpHandler
[EditorBrowsable (EditorBrowsableState.Never)]
#if NET_2_0
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public string UICulture
{
get { return Thread.CurrentThread.CurrentUICulture.Name; }
@@ -907,11 +899,7 @@ public class Page : TemplateControl, IHttpHandler
}
[EditorBrowsable (EditorBrowsableState.Never)]
-#if TARGET_JVM
- public virtual void ProcessRequest (HttpContext context)
-#else
public void ProcessRequest (HttpContext context)
-#endif
{
_context = context;
if (clientTarget != null)
@@ -1289,11 +1277,6 @@ public class Page : TemplateControl, IHttpHandler
bool ValidateCollection (ValidatorCollection validators)
{
-#if NET_2_0
- if (!_eventValidation)
- return true;
-#endif
-
if (validators == null || validators.Count == 0)
return true;
@@ -1453,21 +1436,21 @@ public class Page : TemplateControl, IHttpHandler
_form = form;
}
- [BrowsableAttribute (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
public Page PreviousPage {
get { return previousPage; }
}
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public bool IsCallback {
get { return _requestValueCollection != null && _requestValueCollection [CallbackArgumentID] != null; }
}
- [BrowsableAttribute (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
public bool IsCrossPagePostBack {
get { return _requestValueCollection != null && isCrossPagePostBack; }
}
@@ -1486,8 +1469,8 @@ public class Page : TemplateControl, IHttpHandler
return target.RaiseCallbackEvent (callbackArgument);
}
- [BrowsableAttribute (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
public HtmlHead Header {
get { return htmlHeader; }
}
@@ -1497,14 +1480,14 @@ public class Page : TemplateControl, IHttpHandler
htmlHeader = header;
}
- [DefaultValueAttribute ("")]
+ [DefaultValueAttribute ("")]
public string MasterPageFile {
get { return masterPageFile; }
set { masterPageFile = value; masterPage = null; }
}
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [BrowsableAttribute (false)]
+ [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
+ [BrowsableAttribute (false)]
public MasterPage Master {
get {
if (masterPage == null)
diff --git a/mcs/class/System.Web/System.Web.Util/AltSerialization.cs b/mcs/class/System.Web/System.Web.Util/AltSerialization.cs
index a36237a93b3..98116fb897f 100644
--- a/mcs/class/System.Web/System.Web.Util/AltSerialization.cs
+++ b/mcs/class/System.Web/System.Web.Util/AltSerialization.cs
@@ -71,12 +71,8 @@ namespace System.Web.Util {
int i = types.IndexOf (type);
if (i == -1) {
w.Write (15); // types.Count
-#if TARGET_J2EE
- ((System.Web.J2EE.ObjectOutputStream)w.BaseStream).NativeStream.writeObject(value);
-#else
BinaryFormatter bf = new BinaryFormatter ();
bf.Serialize (w.BaseStream, value);
-#endif
return;
}
@@ -130,12 +126,8 @@ namespace System.Web.Util {
internal static object DeserializeFromIndex (int index, BinaryReader r)
{
if (index == 15){
-#if TARGET_J2EE
- return ((System.Web.J2EE.ObjectInputStream)r.BaseStream).NativeStream.readObject();
-#else
BinaryFormatter bf = new BinaryFormatter ();
return bf.Deserialize (r.BaseStream);
-#endif
}
object value = null;
diff --git a/mcs/class/System.Web/System.Web.Util/ChangeLog b/mcs/class/System.Web/System.Web.Util/ChangeLog
index b47d9ad5a00..b3730d9ffe2 100644
--- a/mcs/class/System.Web/System.Web.Util/ChangeLog
+++ b/mcs/class/System.Web/System.Web.Util/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-09 Konstantin Triger <kostat@mainsoft.com>
-
- AltSerialization.cs: under TARGET_JVM: merging /main/4
-
2005-11-28 Chris Toshok <toshok@ximian.com>
* WebEncoding.cs (FileEncoding, ResponseEncoding,
diff --git a/mcs/class/System.Web/System.Web.dll.sources b/mcs/class/System.Web/System.Web.dll.sources
index 47c95d39731..7f8f02d3be2 100644
--- a/mcs/class/System.Web/System.Web.dll.sources
+++ b/mcs/class/System.Web/System.Web.dll.sources
@@ -15,48 +15,25 @@ System.Web.Caching/CachedVaryBy.cs
System.Web.Caching/OutputCacheModule.cs
System.Web/CapabilitiesLoader.cs
System.Web/BrowserCapabilities.cs
-System.Web.Compilation/AppSettingsExpressionBuilder.cs
System.Web.Compilation/AspComponentFoundry.cs
System.Web.Compilation/AspGenerator.cs
System.Web.Compilation/AspParser.cs
System.Web.Compilation/AspTokenizer.cs
-System.Web.Compilation/AssemblyBuilder.cs
System.Web.Compilation/BaseCompiler.cs
-System.Web.Compilation/BuildDependencySet.cs
-System.Web.Compilation/BuildManager.cs
-System.Web.Compilation/BuildManagerHostUnloadEventArgs.cs
-System.Web.Compilation/BuildManagerHostUnloadEventHandler.cs
-System.Web.Compilation/BuildProviderAppliesToAttribute.cs
-System.Web.Compilation/BuildProviderAppliesTo.cs
System.Web.Compilation/BuildProviderResultFlags.cs
-System.Web.Compilation/BuildProvider.cs
System.Web.Compilation/CachingCompiler.cs
-System.Web.Compilation/ClientBuildManagerCallback.cs
-System.Web.Compilation/ClientBuildManagerParameter.cs
-System.Web.Compilation/ClientBuildManager.cs
System.Web.Compilation/CompilationException.cs
-System.Web.Compilation/CompilerType.cs
-System.Web.Compilation/ConnectionStringsExpressionBuilder.cs
-System.Web.Compilation/DesignTimeResourceProviderFactoryAttribute.cs
System.Web.Compilation/Directive.cs
System.Web.Compilation/ExpressionBuilderContext.cs
System.Web.Compilation/ExpressionBuilder.cs
-System.Web.Compilation/ExpressionEditorAttribute.cs
-System.Web.Compilation/ExpressionPrefixAttribute.cs
System.Web.Compilation/GlobalAsaxCompiler.cs
-System.Web.Compilation/IAssemblyPostProcessor.cs
System.Web.Compilation/IImplicitResourceProvider.cs
System.Web.Compilation/ILocation.cs
System.Web.Compilation/ImplicitResourceKey.cs
-System.Web.Compilation/IResourceProvider.cs
-System.Web.Compilation/LinePragmaCodeInfo.cs
+System.Web.Compilation/IResourceReader.cs
System.Web.Compilation/Location.cs
System.Web.Compilation/PageCompiler.cs
System.Web.Compilation/ParseException.cs
-System.Web.Compilation/PrecompilationFlags.cs
-System.Web.Compilation/ResourceExpressionBuilder.cs
-System.Web.Compilation/ResourceExpressionFields.cs
-System.Web.Compilation/ResourceProviderFactory.cs
System.Web.Compilation/TagAttributes.cs
System.Web.Compilation/TagType.cs
System.Web.Compilation/TemplateControlCompiler.cs
diff --git a/mcs/class/System.Web/System.Web.vmwcsproj b/mcs/class/System.Web/System.Web.vmwcsproj
index eddde05e89b..fa5264cfccd 100644
--- a/mcs/class/System.Web/System.Web.vmwcsproj
+++ b/mcs/class/System.Web/System.Web.vmwcsproj
@@ -8,25 +8,25 @@
<Config Name="Release_Java" AllowUnsafeBlocks="false" BaseAddress="285212672" CheckForOverflowUnderflow="false" ConfigurationOverrideFile="" DefineConstants="NET_1_1;TARGET_J2EE;TARGET_JVM;GH_ONLY;ONLY_1_1" DocumentationFile="" DebugSymbols="true" FileAlignment="4096" IncrementalBuild="false" NoStdLib="false" NoWarn="1595,169,649,67,168,219" Optimize="true" OutputPath="bin\Release_Java\" RegisterForComInterop="false" RemoveIntegerChecks="false" TreatWarningsAsErrors="false" WarningLevel="4"/>
</Settings>
<References>
- <Reference Name="J2EE.Helpers" AssemblyName="J2EE.Helpers" HintPath="..\lib\J2EE.Helpers.dll" Private="False"/>
- <Reference Name="J2SE.Helpers" AssemblyName="J2SE.Helpers" HintPath="..\lib\J2SE.Helpers.dll" Private="False"/>
- <Reference Name="rt" AssemblyName="rt" HintPath="..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\jre5\rt.dll" Private="False"/>
- <Reference Name="System" AssemblyName="System" HintPath="..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll"/>
- <Reference Name="System.Data" AssemblyName="System.Data" HintPath="..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Data.dll"/>
- <Reference Name="System.Xml" AssemblyName="System.Xml" HintPath="..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Xml.dll"/>
- <Reference Name="System.Drawing" AssemblyName="System.Drawing" HintPath="..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Drawing.dll"/>
- <Reference Name="j2ee" AssemblyName="j2ee" HintPath="..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\tomcat\j2ee.dll" Private="False"/>
+ <Reference Name="System.EnterpriseServices" AssemblyName="System.EnterpriseServices" Private="False"/>
+ <Reference Name="System.Xml" AssemblyName="System.Xml" HintPath="..\lib\System.Xml.dll" Private="False"/>
+ <Reference Name="SystemDll" AssemblyName="System" HintPath="..\lib\System.dll" Private="True"/>
+ <Reference Name="System.Drawing" AssemblyName="System.Drawing" HintPath="..\lib\System.Drawing.dll" Private="True"/>
+ <Reference Name="J2EE.Helpers" AssemblyName="J2EE.Helpers" HintPath="..\lib\J2EE.Helpers.dll" Private="True"/>
+ <Reference Name="J2SE.Helpers" AssemblyName="J2SE.Helpers" HintPath="..\lib\J2SE.Helpers.dll" Private="True"/>
+ <Reference Name="System.Data" AssemblyName="System.Data" HintPath="..\lib\System.Data.dll" Private="False"/>
+ <Reference Name="rt" AssemblyName="rt" HintPath="..\lib\j2sdk1.4.1\rt.dll" Private="False"/>
+ <Reference Name="j2ee" AssemblyName="j2ee" HintPath="..\lib\j2ee.dll"/>
</References>
</Build>
<Files>
<Include>
- <File RelPath="browscap.ini" Link="..\..\..\mono\data\browscap.ini" BuildAction="EmbeddedResource"/>
<File RelPath="jar.resources" BuildAction="None"/>
<File RelPath="Locale.cs" Link="..\..\build\common\Locale.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="Consts.cs" Link="..\..\build\common\Consts.cs.in" SubType="Code" BuildAction="Compile"/>
<File RelPath="MonoTODOAttribute.cs" Link="..\..\build\common\MonoTODOAttribute.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Mail\ChangeLog" BuildAction="None"/>
<File RelPath="Assembly\AssemblyInfo.cs" SubType="Code" BuildAction="Compile"/>
- <File RelPath="resources\WebUIValidation.js" BuildAction="EmbeddedResource"/>
<File RelPath="System.Web\ApplicationShutdownReason.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\BeginEventHandler.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\BrowserCapabilities.cs" SubType="Code" BuildAction="Compile"/>
@@ -76,10 +76,8 @@
<File RelPath="System.Web\IHttpHandlerFactory.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\IHttpMapPath.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\IHttpModule.cs" SubType="Code" BuildAction="Compile"/>
- <File RelPath="System.Web\InputFilterStream.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\MimeTypes.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\NoParamsInvoker.cs" SubType="Code" BuildAction="Compile"/>
- <File RelPath="System.Web\OutputFilterStream.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\ParserError.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\ParserErrorCollection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web\ProcessInfo.cs" SubType="Code" BuildAction="Compile"/>
@@ -117,14 +115,30 @@
<File RelPath="System.Web.Compilation\ILocation.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Compilation\Location.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Compilation\ParseException.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\AdapterDictionary.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\AnonymousIdentificationSection.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\AssemblyCollection.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\AssemblyInfo.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\AuthConfig.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\AuthenticationConfigHandler.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\AuthenticationMode.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\AuthenticationSection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\AuthorizationConfig.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\AuthorizationConfigHandler.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\AuthorizationRuleAction.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\BuildProvider.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\BuildProviderAppliesTo.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\BuildProviderCollection.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\CodeSubDirectoriesCollection.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\CodeSubDirectory.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\CompilationSection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\Compiler.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\CustomErrorsConfigHandler.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\CustomErrorsMode.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\ExpressionBuilder.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\ExpressionBuilderCollection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\FormsAuthPasswordFormat.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\FormsAuthenticationConfiguration.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\FormsProtectionEnum.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\GlobalizationConfiguration.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\GlobalizationConfigurationHandler.cs" SubType="Code" BuildAction="Compile"/>
@@ -135,14 +149,30 @@
<File RelPath="System.Web.Configuration\HttpModulesConfigurationHandler.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\HttpRuntimeConfig.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\HttpRuntimeConfigurationHandler.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\IRemoteWebConfigurationHostServer.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\InternalSection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\MachineKeyConfig.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\MachineKeyConfigHandler.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\MachineKeyValidation.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\MembershipSection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\ModulesConfiguration.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\PagesConfiguration.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\PagesConfigurationHandler.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\PagesEnableSessionState.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\PagesToCountAction.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\ProcessModelComAuthenticationLevel.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\ProcessModelComImpersonationLevel.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\ProcessModelLogLevel.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\SerializationMode.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\SiteMapSection.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\TraceConfig.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\TraceConfigurationHandler.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\TraceDisplayMode.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\VirtualDirectoryMapping.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\VirtualDirectoryMappingCollection.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\WebConfigurationFileMap.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\WebConfigurationHost.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Configuration\WebConfigurationManager.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\WebConfigurationSettings.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Configuration\WebControlsSectionHandler.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Handlers\AssemblyResourceLoader.cs" SubType="Code" BuildAction="Compile"/>
@@ -163,8 +193,6 @@
<File RelPath="System.Web.J2EE\BaseStaticHttpServlet.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.J2EE\J2EEConsts.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.J2EE\J2EEUtils.cs" SubType="Code" BuildAction="Compile"/>
- <File RelPath="System.Web.J2EE\ObjectInputStream.cs" SubType="Code" BuildAction="Compile"/>
- <File RelPath="System.Web.J2EE\ObjectOutputStream.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.J2EE\PageMapper.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.J2EE\SessionListener.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Mail\Base64AttachmentEncoder.cs" SubType="Code" BuildAction="Compile"/>
@@ -868,6 +896,7 @@
<File RelPath="System.Web.Util\StrUtils.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Util\TimeUtil.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Util\TransactedCallback.cs" SubType="Code" BuildAction="Compile"/>
+ <File RelPath="System.Web.Util\Transactions.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Util\UrlUtils.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Util\WebEncoding.cs" SubType="Code" BuildAction="Compile"/>
<File RelPath="System.Web.Util\WebTrace.cs" SubType="Code" BuildAction="Compile"/>
@@ -875,6 +904,6 @@
<File RelPath="System.Web.Util\WorkItemCallback.cs" SubType="Code" BuildAction="Compile"/>
</Include>
</Files>
- <UserProperties project.AppServerType="tomcat" REFS.JarPath.System.Xml="..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\vmw4j2ee_110\System.Xml.jar" REFS.JarPath.vmwutils="..\lib\vmwutils.jar" REFS.JarPath.System.Data="..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\vmw4j2ee_110\System.Data.jar" REFS.JarPath.rt="..\lib\rt.jar" REFS.JarPath.j2ee="C:\Program Files\Mainsoft\Visual MainWin for J2EE\jakarta-tomcat\server\lib\catalina.jar;C:\Program Files\Mainsoft\Visual MainWin for J2EE\jakarta-tomcat\common\lib\servlet-api.jar" REFS.JarPath.System="..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\vmw4j2ee_110\System.jar" project.JDKType="1.5.0_05" REFS.JarPath.j2se.helpers="..\lib\J2SE.Helpers.jar" REFS.JarPath.j2ee.helpers="..\lib\J2EE.Helpers.jar" REFS.JarPath.System.Drawing="..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\vmw4j2ee_110\System.Drawing.jar;..\..\..\..\..\Program Files\Mainsoft\Visual MainWin for J2EE\jgac\vmw4j2ee_110\jai_imageio.jar"/>
+ <UserProperties REFS.JarPath.System.Drawing="..\lib\System.Drawing.jar" REFS.JarPath.j2ee.helpers="..\lib\J2EE.Helpers.jar" REFS.JarPath.j2se.helpers="..\lib\J2SE.Helpers.jar" project.JDKType="1.4.2_05" REFS.JarPath.System="..\lib\System.jar" REFS.JarPath.j2ee="..\lib\j2ee.jar" REFS.JarPath.rt="..\lib\rt.jar" REFS.JarPath.System.Data="..\lib\System.Data.jar" REFS.JarPath.vmwutils="..\lib\vmwutils.jar" REFS.JarPath.System.Xml="..\lib\System.Xml.jar" jarserver="ip2"/>
</CSHARP>
- <VisualMainWin><Project Prop2023="1.5.0_05" Prop2024="" Prop2026="" Prop2015="" Version="1.7.0" ProjectType="2" ApplicationServerType="tomcat" AppServerDefaultName="localhost:8080"/><References/><Configs><Config Prop2000="1" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="0" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="0" Prop2012="0" Prop2013="" Prop2014="0" Prop2016="" Prop2027="" Prop2019="0" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="-1" Name="Release"/><Config Prop2000="0" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="3" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="0" Prop2012="-1" Prop2013="yen" Prop2014="8009" Prop2016="" Prop2027="" Prop2019="0" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="1" Name="Debug_Java"/><Config Prop2000="0" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="3" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="0" Prop2012="-1" Prop2013="yen" Prop2014="8007" Prop2016="" Prop2027="" Prop2019="0" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="0" Name="Release_Java"/><Config Prop2000="1" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="0" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="-1" Prop2012="0" Prop2013="" Prop2014="8000" Prop2016="" Prop2027="" Prop2019="-1" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="-1" Name="Debug"/></Configs></VisualMainWin></VisualStudioProject>
+ <VisualMainWin><Project Prop2023="1.4.2_05" Prop2024="" Prop2026="" Prop2015="" Version="1.6.0" ProjectType="1"/><References/><Configs><Config Prop2000="0" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="3" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="0" Prop2012="-1" Prop2013="yen" Prop2014="8009" Prop2016="" Prop2027="" Prop2019="0" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="0" Name="Debug_Java"/><Config Prop2000="0" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="3" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="0" Prop2012="-1" Prop2013="yen" Prop2014="8007" Prop2016="" Prop2027="" Prop2019="0" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="-1" Name="Release_Java"/><Config Prop2000="1" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="0" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="0" Prop2012="0" Prop2013="" Prop2014="0" Prop2016="" Prop2027="" Prop2019="0" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="-1" Name="Release"/><Config Prop2000="1" Prop2001="0" Prop2002="0" Prop2003="0" Prop2004="0" Prop2005="0" Prop2006="" Prop2007="" Prop2008="" Prop2009="" Prop2010="" Prop2011="-1" Prop2012="0" Prop2013="" Prop2014="8000" Prop2016="" Prop2027="" Prop2019="-1" Prop2020="285212672" Prop2021="4096" Prop2022="0" Prop2017="0" Prop2018="-1" Name="Debug"/></Configs></VisualMainWin></VisualStudioProject>
diff --git a/mcs/class/System.Web/System.Web/BrowserCapabilities.cs b/mcs/class/System.Web/System.Web/BrowserCapabilities.cs
index d4b95f660fa..1e219c54be9 100644
--- a/mcs/class/System.Web/System.Web/BrowserCapabilities.cs
+++ b/mcs/class/System.Web/System.Web/BrowserCapabilities.cs
@@ -33,7 +33,6 @@ using System.Collections;
using System.Globalization;
using System.Web.Configuration;
using System.Web.UI;
-using System.Security.Permissions;
#if NET_2_0
namespace System.Web.Configuration {
@@ -41,9 +40,7 @@ namespace System.Web.Configuration {
#else
namespace System.Web {
- [AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
- [AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
- public class HttpBrowserCapabilities : HttpCapabilitiesBase
+ public partial class HttpBrowserCapabilities : HttpCapabilitiesBase
#endif
{
const int HaveActiveXControls = 1;
@@ -99,12 +96,6 @@ namespace System.Web {
Version [] clrVersions;
internal string useragent;
-#if !NET_2_0
- public HttpBrowserCapabilities ()
- {
- }
-#endif
-
public bool ActiveXControls {
get {
if (!Get (HaveActiveXControls)) {
diff --git a/mcs/class/System.Web/System.Web/CapabilitiesLoader.cs b/mcs/class/System.Web/System.Web/CapabilitiesLoader.cs
index b2daf7fecf7..f6e1f03dfd4 100644
--- a/mcs/class/System.Web/System.Web/CapabilitiesLoader.cs
+++ b/mcs/class/System.Web/System.Web/CapabilitiesLoader.cs
@@ -184,11 +184,7 @@ namespace System.Web
#if TARGET_J2EE
string filepath = "browscap.ini";
#else
-#if CONFIGURATION_2_0
- string dir = Path.GetDirectoryName (WebConfigurationManager.OpenMachineConfiguration().FilePath);
-#else
string dir = Path.GetDirectoryName (WebConfigurationSettings.MachineConfigPath);
-#endif
string filepath = Path.Combine (dir, "browscap.ini");
if (!File.Exists (filepath)) {
// try removing the trailing version directory
@@ -214,13 +210,7 @@ namespace System.Web
AppDomain.CurrentDomain.GetData("GH_ContextClassLoader");
if (cl == null)
return null;
-
- string custom = String.Concat("browscap/", filename);
-
- java.io.InputStream inputStream = cl.getResourceAsStream(custom);
- if (inputStream == null)
- inputStream = cl.getResourceAsStream(filename);
-
+ java.io.InputStream inputStream = cl.getResourceAsStream(filename);
s = (Stream)vmw.common.IOUtils.getStream(inputStream);
}
catch (Exception e)
diff --git a/mcs/class/System.Web/System.Web/ChangeLog b/mcs/class/System.Web/System.Web/ChangeLog
index 5a0807eeb52..dd9416eb28a 100644
--- a/mcs/class/System.Web/System.Web/ChangeLog
+++ b/mcs/class/System.Web/System.Web/ChangeLog
@@ -1,19 +1,3 @@
-2006-01-19 Konstantin Triger <kostat@mainsoft.com>
-
- * HttpApplication.jvm.cs: merge HttpApplication.cs changes.
-
-2006-01-17 Chris Toshok <toshok@ximian.com>
-
- * CapabilitiesLoader.cs (Init): use WebConfigurationManager in the
- CONFIGURATION_2_0 case.
-
- * HttpRuntime.cs (MachineConfigurationDirectory): same.
-
-2006-01-16 Chris Toshok <toshok@ximian.com>
-
- * HttpApplicationFactory.cs: call WebConfigurationManager.Init in
- the CONFIGURATION_2_0 case.
-
2006-01-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* HttpWriter.cs: made Write (char) less memory hungry. Thanks to Mike
@@ -25,16 +9,6 @@
2006-01-11 Vladimir Krasnov <vladimirk@mainsoft.com>
- * HttpResponse.cs: removed TARGET_JVM block from End
- * GetJavaTextReader: Merged TARGET_JVM block from LoadFile
- to GetJavaTextReader
-
-2006-01-11 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * HttpRequest.cs: removed TARGET_JVM block from MapPath
-
-2006-01-11 Vladimir Krasnov <vladimirk@mainsoft.com>
-
* HttpRequest.cs: little fix in MapPath(), virtualPath.Replace
return value wasnt stored.
@@ -49,23 +23,6 @@
can still be retrieved through HttpContext.Current.blah). Fixes
bug #77162.
-2006-01-09 Vladimir Krasnov <vladimirk@mainsoft.com>
-
- * CapabilitiesLoader.cs: Merged TARGET_JVM parts in LoadFile
- from /main/9
- * HttpException.cs: Merged TARGET_JVM parts in GetHtmlizedErrorMessage
- from /main/13
- * HttpRequest.cs: Merged TARGET_JVM parts in MapPath from /main/29
- * HttpResponse.cs: Merged TARGET_JVM parts in End() from /main/30
- * StaticFileHandler.cs: Merged TARGET_JVM parts in ProcessRequest
- from /main/7
-
-2006-01-08 Konstantin Triger <kostat@mainsoft.com>
-
- * BrowserCapabilities.cs, HttpBrowserCapabilities.cs,
- HttpResponseStream.cs: TARGET_JVM changes to let the compilation
- pass with csc 1.1.
-
2006-01-04 Chris Toshok <toshok@ximian.com>
* HttpContext.cs (IsCustomErrorEnabled): add CONFIGURATION_2_0
diff --git a/mcs/class/System.Web/System.Web/HttpApplication.jvm.cs b/mcs/class/System.Web/System.Web/HttpApplication.jvm.cs
index 7bbb189bc54..98bd4c07efe 100644
--- a/mcs/class/System.Web/System.Web/HttpApplication.jvm.cs
+++ b/mcs/class/System.Web/System.Web/HttpApplication.jvm.cs
@@ -143,33 +143,19 @@ namespace System.Web {
if (modcoll != null)
return;
-#if CONFIGURATION_2_0
- HttpModulesSection modules;
- modules = (HttpModulesSection) WebConfigurationManager.GetWebApplicationSection ("system.web/httpModules");
-#else
ModulesConfiguration modules;
-
modules = (ModulesConfiguration) HttpContext.GetAppConfig ("system.web/httpModules");
-#endif
modcoll = modules.LoadModules (this);
if (full_init)
HttpApplicationFactory.AttachEvents (this);
-#if CONFIGURATION_2_0
- GlobalizationSection cfg;
- cfg = (GlobalizationSection) WebConfigurationManager.GetWebApplicationSection ("system.web/globalization");
- app_culture = cfg.GetCulture();
- appui_culture = cfg.GetUICulture();
-#else
- GlobalizationConfiguration cfg;
- cfg = GlobalizationConfiguration.GetInstance (null);
+ GlobalizationConfiguration cfg = GlobalizationConfiguration.GetInstance (null);
if (cfg != null) {
app_culture = cfg.Culture;
appui_culture = cfg.UICulture;
}
-#endif
}
}
@@ -224,10 +210,6 @@ namespace System.Web {
get {
if (context == null)
throw new HttpException (Locale.GetText ("No context is available."));
-
- if (false == HttpApplicationFactory.ContextAvailable)
- throw new HttpException (Locale.GetText ("Request is not available in this context."));
-
return context.Request;
}
}
@@ -238,10 +220,6 @@ namespace System.Web {
get {
if (context == null)
throw new HttpException (Locale.GetText ("No context is available."));
-
- if (false == HttpApplicationFactory.ContextAvailable)
- throw new HttpException (Locale.GetText ("Response is not available in this context."));
-
return context.Response;
}
}
@@ -546,10 +524,6 @@ namespace System.Web {
stop_processing = true;
}
- internal bool RequestCompleted {
- set { stop_processing = value; }
- }
-
public virtual void Dispose ()
{
if (modcoll != null) {
@@ -589,9 +563,6 @@ namespace System.Web {
if (Error != null){
try {
Error (this, EventArgs.Empty);
- } catch (ThreadAbortException ee){
- // This happens on Redirect() or End()
- Thread.ResetAbort ();
} catch (Exception ee){
context.AddError (ee);
}
@@ -606,12 +577,15 @@ namespace System.Web {
void Tick ()
{
try {
- if (pipeline.MoveNext ()){
- if ((bool)pipeline.Current)
+ // FIXME: We should use 'if' instead of 'while'!!
+ while (pipeline.MoveNext ()){
+ if ((bool)pipeline.Current) {
PipelineDone ();
+ break;
+ }
}
} catch (Exception e) {
- Console.WriteLine ("Tick caught an exception that has not been propagated:\n" + e);
+ Console.WriteLine ("Tick caught an exception that has not been propagated:\n" + e.GetType().FullName + e.Message + e.StackTrace);
}
}
@@ -652,14 +626,13 @@ namespace System.Web {
Resume ();
}
-
+
//
// This enumerator yields whether processing must be stopped:
// true: processing of the pipeline must be stopped
// false: processing of the pipeline must not be stopped
//
-#if TARGET_JVM && !NET_2_0
- class RunHooksEnumerator : IEnumerable, IEnumerator
+ internal class RunHooksEnumerator : IEnumerable, IEnumerator
{
Delegate [] delegates;
int currentStep = 0;
@@ -749,62 +722,6 @@ namespace System.Web {
{
return new RunHooksEnumerator(this, list);
}
-#else
- IEnumerable RunHooks (Delegate list)
- {
- Delegate [] delegates = list.GetInvocationList ();
-
- foreach (EventHandler d in delegates){
- if (d.Target != null && (d.Target is AsyncInvoker)){
- current_ai = (AsyncInvoker) d.Target;
-
- try {
- must_yield = true;
- in_begin = true;
- context.BeginTimeoutPossible ();
- current_ai.begin (this, EventArgs.Empty, async_callback_completed_cb, current_ai.data);
- } catch (ThreadAbortException taex){
- object obj = taex.ExceptionState;
- Thread.ResetAbort ();
- stop_processing = true;
- if (obj is StepTimeout)
- ProcessError (new HttpException ("The request timed out."));
- } catch (Exception e){
- ProcessError (e);
- } finally {
- in_begin = false;
- context.EndTimeoutPossible ();
- }
-
- //
- // If things are still moving forward, yield this
- // thread now
- //
- if (must_yield)
- yield return stop_processing;
- else if (stop_processing)
- yield return true;
- } else {
- try {
- context.BeginTimeoutPossible ();
- d (this, EventArgs.Empty);
- } catch (ThreadAbortException taex){
- object obj = taex.ExceptionState;
- Thread.ResetAbort ();
- stop_processing = true;
- if (obj is StepTimeout)
- ProcessError (new HttpException ("The request timed out."));
- } catch (Exception e){
- ProcessError (e);
- } finally {
- context.EndTimeoutPossible ();
- }
- if (stop_processing)
- yield return true;
- }
- }
- }
-#endif
static void FinalErrorWrite (HttpResponse response, string error)
{
@@ -899,12 +816,8 @@ namespace System.Web {
PostDone ();
}
- //
- // Events fired as described in `Http Runtime Support, HttpModules,
- // Handling Public Events'
- //
-#if TARGET_JVM && !NET_2_0
- class PipeLineEnumerator : IEnumerator {
+ class PipeLineEnumerator : IEnumerator
+ {
HttpApplication app;
IEnumerator currentEnumerator = null;
int currentStep = 0;
@@ -1110,164 +1023,6 @@ namespace System.Web {
{
return new PipeLineEnumerator(this);
}
-#else
- IEnumerator Pipeline ()
- {
- if (stop_processing)
- yield return true;
-
- if (BeginRequest != null)
- foreach (bool stop in RunHooks (BeginRequest))
- yield return stop;
-
- if (AuthenticateRequest != null)
- foreach (bool stop in RunHooks (AuthenticateRequest))
- yield return stop;
-
- if (DefaultAuthentication != null)
- foreach (bool stop in RunHooks (DefaultAuthentication))
- yield return stop;
-
-#if NET_2_0
- if (PostAuthenticateRequest != null)
- foreach (bool stop in RunHooks (AuthenticateRequest))
- yield return stop;
-#endif
- if (AuthorizeRequest != null)
- foreach (bool stop in RunHooks (AuthorizeRequest))
- yield return stop;
-#if NET_2_0
- if (PostAuthorizeRequest != null)
- foreach (bool stop in RunHooks (PostAuthorizeRequest))
- yield return stop;
-#endif
-
- if (ResolveRequestCache != null)
- foreach (bool stop in RunHooks (ResolveRequestCache))
- yield return stop;
-
- // Obtain the handler for the request.
- IHttpHandler handler = null;
- try {
- handler = GetHandler (context);
- } catch (FileNotFoundException fnf){
- if (context.Request.IsLocal)
- ProcessError (new HttpException (404, String.Format ("File not found {0}", fnf.FileName), fnf));
- else
- ProcessError (new HttpException (404, "File not found", fnf));
- } catch (DirectoryNotFoundException dnf){
- ProcessError (new HttpException (404, "Directory not found", dnf));
- } catch (Exception e) {
- ProcessError (e);
- }
-
- if (stop_processing)
- yield return true;
-
-#if NET_2_0
- if (PostResolveRequestCache != null)
- foreach (bool stop in RunHooks (PostResolveRequestCache))
- yield return stop;
-
- if (PostMapRequestHandler != null)
- foreach (bool stop in RunHooks (PostMapRequestHandler))
- yield return stop;
-
-#endif
- if (AcquireRequestState != null){
- foreach (bool stop in RunHooks (AcquireRequestState))
- yield return stop;
- }
-
-#if NET_2_0
- if (PostAcquireRequestState != null){
- foreach (bool stop in RunHooks (PostAcquireRequestState))
- yield return stop;
- }
-#endif
-
- //
- // From this point on, we need to ensure that we call
- // ReleaseRequestState, so the code below jumps to
- // `release:' to guarantee it rather than yielding.
- //
- if (PreRequestHandlerExecute != null)
- foreach (bool stop in RunHooks (PreRequestHandlerExecute))
- if (stop)
- goto release;
-
- try {
- context.BeginTimeoutPossible ();
- if (handler != null){
- IHttpAsyncHandler async_handler = handler as IHttpAsyncHandler;
-
- if (async_handler != null){
- must_yield = true;
- in_begin = true;
- async_handler.BeginProcessRequest (context, async_handler_complete_cb, handler);
- } else {
- must_yield = false;
- handler.ProcessRequest (context);
- }
- }
- } catch (ThreadAbortException taex){
- object obj = taex.ExceptionState;
- Thread.ResetAbort ();
- stop_processing = true;
- if (obj is StepTimeout)
- ProcessError (new HttpException ("The request timed out."));
- } catch (Exception e){
- ProcessError (e);
- } finally {
- in_begin = false;
- context.EndTimeoutPossible ();
- }
- if (must_yield)
- yield return stop_processing;
- else if (stop_processing)
- goto release;
-
- // These are executed after the application has returned
-
- if (PostRequestHandlerExecute != null)
- foreach (bool stop in RunHooks (PostRequestHandlerExecute))
- if (stop)
- goto release;
-
- release:
- if (ReleaseRequestState != null){
- foreach (bool stop in RunHooks (ReleaseRequestState)){
- //
- // Ignore the stop signal while release the state
- //
-
- }
- }
-
- if (stop_processing)
- yield return true;
-
-#if NET_2_0
- if (PostReleaseRequestState != null)
- foreach (bool stop in RunHooks (PostReleaseRequestState))
- yield return stop;
-#endif
-
- if (context.Error == null)
- context.Response.DoFilter (true);
-
- if (UpdateRequestCache != null)
- foreach (bool stop in RunHooks (UpdateRequestCache))
- yield return stop;
-
-#if NET_2_0
- if (PostUpdateRequestCache != null)
- foreach (bool stop in RunHooks (PostUpdateRequestCache))
- yield return stop;
-#endif
- PipelineDone ();
- }
-#endif
void PreStart ()
{
@@ -1314,6 +1069,7 @@ namespace System.Web {
{
InitOnce (true);
PreStart ();
+ stop_processing = false;
pipeline = Pipeline ();
Tick ();
}
@@ -1325,16 +1081,10 @@ namespace System.Web {
string verb = request.RequestType;
string url = request.FilePath;
- IHttpHandler handler = null;
-#if CONFIGURATION_2_0
- HttpHandlersSection section = (HttpHandlersSection) WebConfigurationManager.GetWebApplicationSection ("system.web/httpHandlers");
- object o = section.LocateHandler (verb, url);
-#else
HandlerFactoryConfiguration factory_config = (HandlerFactoryConfiguration) HttpContext.GetAppConfig ("system.web/httpHandlers");
object o = factory_config.LocateHandler (verb, url);
-#endif
-
factory = o as IHttpHandlerFactory;
+ IHttpHandler handler;
if (factory == null) {
handler = (IHttpHandler) o;
@@ -1377,15 +1127,7 @@ namespace System.Web {
done.Reset ();
begin_iar = new AsyncRequestState (done, cb, extraData);
-#if TARGET_JVM
- if (true)
-#else
- if (Thread.CurrentThread.IsThreadPoolThread)
-#endif
- Start (null);
- else
- ThreadPool.QueueUserWorkItem (new WaitCallback (Start), null);
-
+ Start (null);
return begin_iar;
}
@@ -1426,14 +1168,10 @@ namespace System.Web {
if (!context.IsCustomErrorEnabled)
return false;
-#if CONFIGURATION_2_0
- CustomErrorsSection config = (CustomErrorsSection)WebConfigurationManager.GetWebApplicationSection ("system.web/customErrors");
-#else
CustomErrorsConfig config = null;
try {
config = (CustomErrorsConfig) context.GetConfig ("system.web/customErrors");
} catch { }
-#endif
if (config == null) {
if (context.ErrorPage != null)
@@ -1442,12 +1180,7 @@ namespace System.Web {
return false;
}
-#if CONFIGURATION_2_0
- CustomError err = config.Errors [context.Response.StatusCode.ToString()];
- string redirect = err == null ? null : err.Redirect;
-#else
string redirect = config [context.Response.StatusCode];
-#endif
if (redirect == null) {
redirect = context.ErrorPage;
if (redirect == null)
diff --git a/mcs/class/System.Web/System.Web/HttpApplicationFactory.cs b/mcs/class/System.Web/System.Web/HttpApplicationFactory.cs
index ec0b8ae1fbd..d7912a01026 100644
--- a/mcs/class/System.Web/System.Web/HttpApplicationFactory.cs
+++ b/mcs/class/System.Web/System.Web/HttpApplicationFactory.cs
@@ -364,9 +364,7 @@ namespace System.Web {
if (!File.Exists (app_file))
app_file = Path.Combine (physical_app_path, "global.asax");
-#if CONFIGURATION_2_0
- WebConfigurationManager.Init ();
-#else
+#if !CONFIGURATION_2_0
WebConfigurationSettings.Init (context);
#endif
diff --git a/mcs/class/System.Web/System.Web/HttpBrowserCapabilities.cs b/mcs/class/System.Web/System.Web/HttpBrowserCapabilities.cs
index 3276fe904cd..72acd00f89f 100644
--- a/mcs/class/System.Web/System.Web/HttpBrowserCapabilities.cs
+++ b/mcs/class/System.Web/System.Web/HttpBrowserCapabilities.cs
@@ -27,7 +27,6 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-#if NET_2_0
using System.Security.Permissions;
using System.Web.Configuration;
using System.Web.UI;
@@ -41,12 +40,16 @@ namespace System.Web
// CAS
[AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
- public class HttpBrowserCapabilities : HttpCapabilitiesBase, IFilterResolutionService
+ public partial class HttpBrowserCapabilities : HttpCapabilitiesBase
+#if NET_2_0
+ , IFilterResolutionService
+#endif
{
public HttpBrowserCapabilities ()
{
}
+#if NET_2_0
bool IFilterResolutionService.EvaluateFilter (string filterName)
{
throw new NotImplementedException ();
@@ -56,7 +59,7 @@ namespace System.Web
{
throw new NotImplementedException ();
}
+#endif
}
}
-#endif
diff --git a/mcs/class/System.Web/System.Web/HttpException.cs b/mcs/class/System.Web/System.Web/HttpException.cs
index e8d4c55b176..2beb0fb6216 100644
--- a/mcs/class/System.Web/System.Web/HttpException.cs
+++ b/mcs/class/System.Web/System.Web/HttpException.cs
@@ -35,7 +35,9 @@ using System.Runtime.InteropServices;
using System.Security.Permissions;
using System.Text;
using System.Web.Util;
+#if !TARGET_J2EE
using System.Web.Compilation;
+#endif
namespace System.Web
{
@@ -162,7 +164,42 @@ namespace System.Web
string res = HttpUtility.HtmlEncode (s);
return res.Replace ("\r\n", "<br />");
}
+#if TARGET_J2EE
+ string GetHtmlizedErrorMessage ()
+ {
+ StringBuilder builder = new StringBuilder ("<html>\r\n<title>");
+ HtmlizedException exc = (HtmlizedException) this.InnerException;
+ builder.Append (exc.Title);
+ builder.AppendFormat ("</title><body bgcolor=\"white\">" +
+ "<h1><font color=\"red\">Server Error in '{0}' " +
+ "Application</font></h1><hr>\r\n",
+ HttpRuntime.AppDomainAppVirtualPath);
+
+ builder.AppendFormat ("<h2><font color=\"maroon\"><i>{0}</i></font></h2>\r\n", exc.Title);
+ builder.AppendFormat ("<b>Description: </b>{0}\r\n<p>\r\n", HtmlEncode (exc.Description));
+ builder.AppendFormat ("<b>Error message: </b>{0}\r\n<p>\r\n", HtmlEncode (exc.ErrorMessage));
+ if (exc.FileName != null)
+ builder.AppendFormat ("<b>File name: </b> {0}", HtmlEncode (exc.FileName));
+
+ if (exc.FileText != null) {
+ if (exc.SourceFile != exc.FileName)
+ builder.AppendFormat ("<p><b>Source File: </b>{0}", exc.SourceFile);
+
+ builder.Append ("\r\n<p>\r\n");
+
+ builder.Append ("<table summary=\"Source file\" width=\"100%\" " +
+ "bgcolor=\"#ffffc\">\r\n<tr><td>");
+ WriteSource (builder, exc);
+ builder.Append ("</td></tr>\r\n</table>\r\n<p>\r\n");
+ }
+
+ builder.Append ("<hr>\r\n</body>\r\n</html>\r\n");
+ builder.AppendFormat ("<!--\r\n{0}\r\n-->\r\n", HtmlEncode (exc.ToString ()));
+ builder.AppendFormat ("<!--\r\n{0}\r\n-->\r\n", HtmlEncode (exc.StackTrace));
+ return builder.ToString ();
+ }
+#else
string GetHtmlizedErrorMessage ()
{
StringBuilder builder = new StringBuilder ("<html>\r\n<title>");
@@ -207,12 +244,9 @@ namespace System.Web
builder.Append ("<hr>\r\n</body>\r\n</html>\r\n");
builder.AppendFormat ("<!--\r\n{0}\r\n-->\r\n", HtmlEncode (exc.ToString ()));
-#if TARGET_JVM
- builder.AppendFormat ("<!--\r\n{0}\r\n-->\r\n", HtmlEncode (exc.StackTrace));
-#endif
return builder.ToString ();
}
-
+#endif
static void WriteTextAsCode (StringBuilder builder, string text)
{
builder.Append ("<code><pre>\r\n");
diff --git a/mcs/class/System.Web/System.Web/HttpRequest.cs b/mcs/class/System.Web/System.Web/HttpRequest.cs
index 4bbcf48e2e7..13d2c417b39 100644
--- a/mcs/class/System.Web/System.Web/HttpRequest.cs
+++ b/mcs/class/System.Web/System.Web/HttpRequest.cs
@@ -1060,10 +1060,6 @@ namespace System.Web {
throw new ArgumentNullException (
String.Format ("MapPath: Invalid path '{0}', only virtual paths are accepted", virtualPath));
-#if TARGET_J2EE
- if (virtualPath.StartsWith(vmw.common.IAppDomainConfig.WAR_ROOT_SYMBOL))
- return virtualPath;
-#endif
if (System.IO.Path.DirectorySeparatorChar != '/')
virtualPath = virtualPath.Replace (System.IO.Path.DirectorySeparatorChar, '/');
diff --git a/mcs/class/System.Web/System.Web/HttpResponse.cs b/mcs/class/System.Web/System.Web/HttpResponse.cs
index 6c8f7e8a8a1..397fee05a86 100644
--- a/mcs/class/System.Web/System.Web/HttpResponse.cs
+++ b/mcs/class/System.Web/System.Web/HttpResponse.cs
@@ -827,11 +827,7 @@ namespace System.Web {
Flush ();
}
-#if TARGET_JVM
- public void WriteFile (IntPtr fileHandle, long offset, long size) {
- throw new NotSupportedException("IntPtr not supported");
- }
-#else
+#if !TARGET_JVM
public void WriteFile (IntPtr fileHandle, long offset, long size)
{
if (offset < 0)
diff --git a/mcs/class/System.Web/System.Web/HttpResponseStream.cs b/mcs/class/System.Web/System.Web/HttpResponseStream.cs
index ac06d1d8cd4..2be06d8b365 100644
--- a/mcs/class/System.Web/System.Web/HttpResponseStream.cs
+++ b/mcs/class/System.Web/System.Web/HttpResponseStream.cs
@@ -75,70 +75,93 @@ namespace System.Web {
}
}
#if TARGET_JVM
+ class Chunk
+ {
+ public byte[] data;
+ public int size;
+ public const int Length = 32 * 1024;
+
+ public Chunk Next, Prev;
- class BlockManager {
- const int PreferredLength = 16 * 1024;
- static readonly byte[] EmptyBuffer = new byte[0];
-
- byte[] buffer = EmptyBuffer;
- int position;
-
- public BlockManager () {
+ public Chunk ()
+ {
+ data = new byte[Length];
+ size = Length;
}
-
- public int Position {
- get { return position; }
+
+ public void Dispose ()
+ {
}
+
+ public static Chunk Unlink (ref Chunk head, Chunk b)
+ {
+ if (head == b)
+ head = head.Next;
+ if (b.Prev != null)
+ b.Prev.Next = b.Next;
+ if (b.Next != null)
+ b.Next.Prev = b.Prev;
- void EnsureCapacity (int capacity) {
- if (buffer.Length >= capacity)
- return;
-
- capacity += PreferredLength;
- capacity = (capacity / PreferredLength) * PreferredLength;
- byte[] temp = new byte[capacity];
- Array.Copy(buffer, 0, temp, 0, buffer.Length);
- buffer = temp;
+ b.Next = b.Prev = null;
+ return b;
}
-
- public void Write (byte [] buffer, int offset, int count) {
- if (count == 0)
- return;
-
- EnsureCapacity (position + count);
- Array.Copy(buffer, offset, this.buffer, position, count);
- position += count;
+
+ public static Chunk Link (Chunk head, Chunk b)
+ {
+ b.Next = head;
+ if (head != null)
+ head.Prev = b;
+ return b;
}
- public void Send (HttpWorkerRequest wr, int start, int end) {
- int length = end - start;
- if (length <= 0)
- return;
-
- if (length > buffer.Length - start)
- length = buffer.Length - start;
-
- if (start > 0) {
- byte[] temp = new byte[length];
- Array.Copy(buffer, start, temp, 0, length);
- buffer = temp;
- }
- wr.SendResponseFromMemory(buffer, length);
+ public static void Copy(byte[] buff, int offset, Chunk c, int pos, int len)
+ {
+ Array.Copy(buff, offset, c.data, pos, len);
}
- public void Send (Stream stream, int start, int end) {
- int length = end - start;
- if (length <= 0)
- return;
-
- if (length > buffer.Length - start)
- length = buffer.Length - start;
-
- stream.Write(buffer, start, length);
+ public static void Copy(Chunk c, int pos, byte[] buff, int offset, int len)
+ {
+ Array.Copy(c.data, pos, buff, offset, len);
}
+ }
- public void Dispose () {
- buffer = null;
+ sealed class BufferManager {
+ static Chunk filled;
+ static Chunk empty;
+
+ public static Chunk GetChunk (int cb)
+ {
+ Chunk c;
+ if (empty == null)
+ empty = new Chunk (cb);
+
+ c = empty;
+ filled = Chunk.Link (filled, Chunk.Unlink (ref empty, c));
+ return c;
+ }
+
+ public static void DisposeChunk (Chunk c)
+ {
+ empty = Chunk.Link (empty, Chunk.Unlink (ref filled, c));
+ }
+
+ public static void DisposeEmptyChunks ()
+ {
+ for (Chunk c = empty; c != null; c = c.Next)
+ c.Dispose ();
+ empty = null;
+ }
+
+
+ public static void PrintState ()
+ {
+ Console.WriteLine ("Filled blocks:");
+ for (Chunk c = filled; c != null; c = c.Next)
+ Console.WriteLine ("\t{0}", c);
+ Console.WriteLine ("Empty blocks:");
+ for (Chunk c = empty; c != null; c = c.Next)
+ Console.WriteLine ("\t{0}", c);
+
}
}
@@ -482,24 +505,13 @@ namespace System.Web {
}
}
-#if TARGET_JVM
- void UnsafeWrite (HttpWorkerRequest wr, byte [] buffer, int offset, int count)
- {
- if (count <= 0)
- return;
-
- byte[] copy = new byte[count];
- Array.Copy(buffer, offset, copy, 0, count);
- wr.SendResponseFromMemory (copy, count);
- }
-#else
unsafe void UnsafeWrite (HttpWorkerRequest wr, byte [] buffer, int offset, int count)
{
fixed (byte *ptr = buffer) {
wr.SendResponseFromMemory ((IntPtr) (ptr + offset), count);
}
}
-#endif
+
void AppendBuffer (byte [] buffer, int offset, int count)
{
if (!(cur_bucket is ByteBucket))
diff --git a/mcs/class/System.Web/System.Web/HttpRuntime.cs b/mcs/class/System.Web/System.Web/HttpRuntime.cs
index 5ac1e3b1240..41700354f1c 100644
--- a/mcs/class/System.Web/System.Web/HttpRuntime.cs
+++ b/mcs/class/System.Web/System.Web/HttpRuntime.cs
@@ -205,11 +205,7 @@ namespace System.Web {
public static string MachineConfigurationDirectory {
get {
-#if CONFIGURATION_2_0
- string dirname = Path.GetDirectoryName (WebConfigurationManager.OpenMachineConfiguration().FilePath);
-#else
string dirname = Path.GetDirectoryName (WebConfigurationSettings.MachineConfigPath);
-#endif
if ((dirname != null) && (dirname.Length > 0) && SecurityManager.SecurityEnabled) {
new FileIOPermission (FileIOPermissionAccess.PathDiscovery, dirname).Demand ();
}
diff --git a/mcs/class/System.Web/System.Web/StaticFileHandler.cs b/mcs/class/System.Web/System.Web/StaticFileHandler.cs
index ae127d350fc..d309319a1d7 100644
--- a/mcs/class/System.Web/System.Web/StaticFileHandler.cs
+++ b/mcs/class/System.Web/System.Web/StaticFileHandler.cs
@@ -54,21 +54,7 @@ namespace System.Web
try {
if (strHeader != null) {
DateTime dtIfModifiedSince = DateTime.ParseExact (strHeader, "r", null);
- DateTime ftime;
-#if TARGET_JVM
- try
- {
- ftime = fi.LastWriteTime.ToUniversalTime ();
- }
- catch (NotSupportedException)
- {
- // The file is in a WAR, it was not modified.
- response.StatusCode = 304;
- return;
- }
-#else
- ftime = fi.LastWriteTime.ToUniversalTime ();
-#endif
+ DateTime ftime = fi.LastWriteTime.ToUniversalTime ();
if (ftime <= dtIfModifiedSince) {
response.StatusCode = 304;
return;
diff --git a/mcs/class/System.Web/Test/System.Web.UI/ChangeLog b/mcs/class/System.Web/Test/System.Web.UI/ChangeLog
index 9394061344d..0b8bb79b811 100644
--- a/mcs/class/System.Web/Test/System.Web.UI/ChangeLog
+++ b/mcs/class/System.Web/Test/System.Web.UI/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-18 Konstantin Triger <kostat@mainsoft.com>
-
- * HtmlTextWriterTest.cs: Added tests enduring case insensitivity of
- attributes and correctness of HtmlTextWriterAttribute
-
2005-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* ControlTest.cs: new tests to prove that Control uses its own
diff --git a/mcs/class/System.Web/Test/System.Web.UI/HtmlTextWriterTest.cs b/mcs/class/System.Web/Test/System.Web.UI/HtmlTextWriterTest.cs
index 5425864f364..fce8924f087 100644
--- a/mcs/class/System.Web/Test/System.Web.UI/HtmlTextWriterTest.cs
+++ b/mcs/class/System.Web/Test/System.Web.UI/HtmlTextWriterTest.cs
@@ -352,34 +352,5 @@ namespace MonoTests.System.Web.UI {
Assert.AreEqual ("<div>\n\n</div>", sw.ToString ());
}
-
- class MyHttpTextWriter : HtmlTextWriter {
- int i = 0;
- public MyHttpTextWriter(TextWriter tw) : base(tw) {
-
- }
- protected override bool OnAttributeRender(string name, string value, HtmlTextWriterAttribute key) {
- switch (i++) {
- case 0:
- case 1: Assert.AreEqual(HtmlTextWriterAttribute.Border, key);
- break;
- case 2: Assert.AreEqual((HtmlTextWriterAttribute)(-1), key);
- break;
- }
- return base.OnAttributeRender (name, value, key);
- }
-
- }
-
- [Test]
- public void TestOnAttributeRender() {
- MyHttpTextWriter myw = new MyHttpTextWriter (sw);
-
- myw.AddAttribute ("border", "0");
- myw.AddAttribute ("BoRDeR", "0");
- myw.AddAttribute ("error", "0");
- myw.RenderBeginTag ("div");
- myw.RenderEndTag ();
- }
}
}
diff --git a/mcs/class/System.Configuration/Test/dumper/dumper.cs b/mcs/class/System.Web/Test/standalone/configuration/dumper.cs
index 8c690b227d6..689641cad83 100644
--- a/mcs/class/System.Configuration/Test/dumper/dumper.cs
+++ b/mcs/class/System.Web/Test/standalone/configuration/dumper.cs
@@ -1,28 +1,9 @@
-/*
-** 1. compile using:
-** gmcs dumper.cs -r:System.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll
-**
-** 2. run it on windows:
-** > dumper.exe > dumper.out.microsoft
-**
-** 3. transfer that file to linux and do:
-** $ dos2unix dumper.out.microsoft && sort dumper.out.microsoft > foo && mv foo dumper.out.microsoft
-**
-** 4. run dumper on linux:
-** $ mono dumper.exe > dumper.out.linux && sort dumper.out.linux > foo && mv foo dumper.out.linux
-**
-** 5. diff the results:
-** $ diff -u dumper.out.linux dumper.out.microsoft | grep ^[-+]
-*/
-
using System;
using System.Collections;
using System.Configuration;
-using System.Net;
using System.Reflection;
using System.Web.Configuration;
-using System.Web.Services.Configuration;
public class Dumper {
object[] things = {
@@ -117,42 +98,6 @@ public class Dumper {
new WebPartsPersonalization (),
new WebPartsSection (),
new XhtmlConformanceSection (),
-
- /* System.Configuration stuff */
- new AppSettingsSection (),
- new IgnoreSection (),
- new ConnectionStringSettings (),
- new ConnectionStringSettingsCollection (),
- new ProtectedProviderSettings (),
-
- /* System.Web.Services stuff */
- new DiagnosticsElement (),
- new ProtocolElementCollection (),
- new ProtocolElement (),
- new SoapEnvelopeProcessingElement (),
- new SoapExtensionTypeElementCollection (),
- new SoapExtensionTypeElement (),
- new TypeElementCollection (),
- new TypeElement (),
- new WebServicesSection (),
- new WsdlHelpGeneratorElement (),
- new WsiProfilesElementCollection (),
- new WsiProfilesElement (),
-
- /* System.Net stuff */
- //new AuthenticationModuleElement (),
- //new AuthenticationModuleElementCollection (),
- //new AuthenticationModulesSection (),
- //new BypassElement (),
- //new BypassElementCollection (),
- //new ConnectionManagementElement (),
- //new ConnectionManagementElementCollection (),
- //new ConnectionManagementSection (),
- //new DefaultProxySection (),
- //new HttpCachePolicyElement (),
- //new Ipv6Element (),
- //new ModuleElement (),
- //new ModuleElementCollection (),
};
public Dumper ()
@@ -170,7 +115,6 @@ public class Dumper {
ConfigurationPropertyCollection col = (ConfigurationPropertyCollection)pinfo.GetValue (o, null);
foreach (ConfigurationProperty p in col) {
- Console.WriteLine ("{0}.{1} (Type) = {2}", type, p.Name, p.Type);
if (p.Validator != null && p.Validator.GetType () != typeof (DefaultValidator))
Console.WriteLine ("{0}.{1} (Validator) = {2} ", type, p.Name, p.Validator);
}
diff --git a/mcs/class/System.Web/Test/standalone/configuration/dumper.out.microsoft b/mcs/class/System.Web/Test/standalone/configuration/dumper.out.microsoft
new file mode 100644
index 00000000000..2f5e69cd83d
--- /dev/null
+++ b/mcs/class/System.Web/Test/standalone/configuration/dumper.out.microsoft
@@ -0,0 +1,486 @@
+ hash[clientScriptsLocation] = /aspnet_client/{0}/{1}/
+System.Web.Configuration.AnonymousIdentificationSection.cookieless (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookieName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookieName (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.AnonymousIdentificationSection.cookiePath (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookiePath (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.AnonymousIdentificationSection.cookieProtection (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookieRequireSSL (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookieSlidingExpiration (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookieTimeout (Converter) = System.Configuration.TimeSpanMinutesOrInfiniteConverter
+System.Web.Configuration.AnonymousIdentificationSection.cookieTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.AnonymousIdentificationSection.domain (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.AnonymousIdentificationSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AnonymousIdentificationSection.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.AnonymousIdentificationSection.GetRuntimeObject() = System.Web.Configuration.AnonymousIdentificationSection (True)
+System.Web.Configuration.AssemblyCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AssemblyInfo.assembly (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.AssemblyInfo.assembly (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.AssemblyInfo.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AuthenticationSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AuthenticationSection.GetRuntimeObject() = System.Web.Configuration.AuthenticationSection (True)
+System.Web.Configuration.AuthenticationSection.mode (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.AuthorizationRuleCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AuthorizationRule.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AuthorizationRule.roles (Converter) = System.Configuration.CommaDelimitedStringCollectionConverter
+System.Web.Configuration.AuthorizationRule.users (Converter) = System.Configuration.CommaDelimitedStringCollectionConverter
+System.Web.Configuration.AuthorizationRule.verbs (Converter) = System.Configuration.CommaDelimitedStringCollectionConverter
+System.Web.Configuration.AuthorizationSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.AuthorizationSection.GetRuntimeObject() = System.Web.Configuration.AuthorizationSection (True)
+System.Web.Configuration.BufferModesCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.BufferModeSettings.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.BufferModeSettings.maxBufferSize (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.BufferModeSettings.maxBufferSize (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.BufferModeSettings.maxBufferThreads (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.BufferModeSettings.maxBufferThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.BufferModeSettings.maxFlushSize (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.BufferModeSettings.maxFlushSize (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.BufferModeSettings.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.BufferModeSettings.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.BufferModeSettings.regularFlushInterval (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.BufferModeSettings.regularFlushInterval (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.BufferModeSettings.urgentFlushInterval (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.BufferModeSettings.urgentFlushThreshold (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.BufferModeSettings.urgentFlushThreshold (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.BuildProviderCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.BuildProvider.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.BuildProvider.extension (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.BuildProvider.extension (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.BuildProvider.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.BuildProvider.type (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.CacheSection.disableExpiration (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CacheSection.disableMemoryCollection (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CacheSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CacheSection.GetRuntimeObject() = System.Web.Configuration.CacheSection (True)
+System.Web.Configuration.CacheSection.percentagePhysicalMemoryUsedLimit (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.CacheSection.percentagePhysicalMemoryUsedLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.CacheSection.privateBytesLimit (Converter) = System.ComponentModel.Int64Converter
+System.Web.Configuration.CacheSection.privateBytesLimit (Validator) = System.Configuration.LongValidator
+System.Web.Configuration.CacheSection.privateBytesPollTime (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.CacheSection.privateBytesPollTime (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.ClientTarget.alias (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ClientTarget.alias (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.ClientTargetCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ClientTarget.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ClientTargetSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ClientTargetSection.GetRuntimeObject() = System.Web.Configuration.ClientTargetSection (True)
+System.Web.Configuration.ClientTarget.userAgent (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ClientTarget.userAgent (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.CodeSubDirectoriesCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CodeSubDirectory.directoryName (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.CodeSubDirectory.directoryName (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.CodeSubDirectory.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CompilationSection.assemblyPostProcessorType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.CompilationSection.batch (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CompilationSection.batchTimeout (Converter) = System.Configuration.TimeSpanSecondsOrInfiniteConverter
+System.Web.Configuration.CompilationSection.batchTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.CompilationSection.debug (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CompilationSection.defaultLanguage (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.CompilationSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CompilationSection.explicit (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CompilationSection.GetRuntimeObject() = System.Web.Configuration.CompilationSection (True)
+System.Web.Configuration.CompilationSection.maxBatchGeneratedFileSize (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.CompilationSection.maxBatchSize (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.CompilationSection.numRecompilesBeforeAppRestart (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.CompilationSection.strict (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CompilationSection.tempDirectory (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.CompilationSection.urlLinePragmas (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.CompilerCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.Compiler.compilerOptions (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.Compiler.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.Compiler.extension (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.Compiler.language (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.Compiler.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.Compiler.warningLevel (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.Compiler.warningLevel (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.CustomErrorCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CustomError.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CustomError.redirect (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.CustomError.redirect (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.CustomErrorsSection.defaultRedirect (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.CustomErrorsSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.CustomErrorsSection.GetRuntimeObject() = System.Web.Configuration.CustomErrorsSection (True)
+System.Web.Configuration.CustomErrorsSection.mode (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.CustomError.statusCode (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.CustomError.statusCode (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.DeploymentSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.DeploymentSection.GetRuntimeObject() = System.Web.Configuration.DeploymentSection (True)
+System.Web.Configuration.DeploymentSection.retail (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.EventMappingSettingsCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.EventMappingSettings.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.EventMappingSettings.endEventCode (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.EventMappingSettings.endEventCode (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.EventMappingSettings.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.EventMappingSettings.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.EventMappingSettings.startEventCode (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.EventMappingSettings.startEventCode (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.EventMappingSettings.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ExpressionBuilderCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ExpressionBuilder.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ExpressionBuilder.expressionPrefix (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ExpressionBuilder.expressionPrefix (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.ExpressionBuilder.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ExpressionBuilder.type (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.FormsAuthenticationConfiguration.cookieless (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.defaultUrl (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.defaultUrl (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.FormsAuthenticationConfiguration.domain (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.FormsAuthenticationConfiguration.enableCrossAppRedirects (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.loginUrl (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.loginUrl (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.FormsAuthenticationConfiguration.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.FormsAuthenticationConfiguration.path (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.path (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.FormsAuthenticationConfiguration.protection (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.requireSSL (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.slidingExpiration (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.timeout (Converter) = System.Configuration.TimeSpanMinutesConverter
+System.Web.Configuration.FormsAuthenticationConfiguration.timeout (Validator) = System.Configuration.TimeSpanValidator
+System.Web.Configuration.FormsAuthenticationCredentials.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.FormsAuthenticationCredentials.passwordFormat (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.FormsAuthenticationUserCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.FormsAuthenticationUser.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.FormsAuthenticationUser.name (Converter) = System.Web.Configuration.LowerCaseStringConverter
+System.Web.Configuration.FormsAuthenticationUser.password (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.culture (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.GlobalizationSection.enableBestFitResponseEncoding (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.GlobalizationSection.enableClientBasedCulture (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.GlobalizationSection.fileEncoding (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.GetRuntimeObject() = System.Web.Configuration.GlobalizationSection (True)
+System.Web.Configuration.GlobalizationSection.requestEncoding (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.resourceProviderFactoryType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.responseEncoding (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.responseHeaderEncoding (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.GlobalizationSection.uiCulture (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HealthMonitoringSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HealthMonitoringSection.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HealthMonitoringSection.GetRuntimeObject() = System.Web.Configuration.HealthMonitoringSection (True)
+System.Web.Configuration.HealthMonitoringSection.heartbeatInterval (Converter) = System.Configuration.TimeSpanSecondsConverter
+System.Web.Configuration.HealthMonitoringSection.heartbeatInterval (Validator) = System.Configuration.TimeSpanValidator
+System.Web.Configuration.HostingEnvironmentSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HostingEnvironmentSection.GetRuntimeObject() = System.Web.Configuration.HostingEnvironmentSection (True)
+System.Web.Configuration.HostingEnvironmentSection.idleTimeout (Converter) = System.Configuration.TimeSpanMinutesOrInfiniteConverter
+System.Web.Configuration.HostingEnvironmentSection.idleTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.HostingEnvironmentSection.shadowCopyBinAssemblies (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HostingEnvironmentSection.shutdownTimeout (Converter) = System.Configuration.TimeSpanSecondsConverter
+System.Web.Configuration.HostingEnvironmentSection.shutdownTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.HttpCookiesSection.domain (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HttpCookiesSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpCookiesSection.GetRuntimeObject() = System.Web.Configuration.HttpCookiesSection (True)
+System.Web.Configuration.HttpCookiesSection.httpOnlyCookies (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpCookiesSection.requireSSL (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpHandlerActionCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpHandlerAction.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpHandlerAction.path (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HttpHandlerAction.path (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.HttpHandlerAction.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HttpHandlerAction.type (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.HttpHandlerAction.validate (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpHandlerAction.verb (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HttpHandlerAction.verb (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.HttpHandlersSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpHandlersSection.GetRuntimeObject() = System.Web.Configuration.HttpHandlersSection (True)
+System.Web.Configuration.HttpModuleActionCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpModuleAction.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.HttpModuleAction.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HttpModuleAction.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.HttpModuleAction.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.HttpModulesSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpModulesSection.GetRuntimeObject() = System.Web.Configuration.HttpModulesSection (True)
+System.Web.Configuration.HttpRuntimeSection.apartmentThreading (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.appRequestQueueLimit (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.appRequestQueueLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.HttpRuntimeSection.delayNotificationTimeout (Converter) = System.Configuration.TimeSpanSecondsConverter
+System.Web.Configuration.HttpRuntimeSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.HttpRuntimeSection.enable (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.enableHeaderChecking (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.enableKernelOutputCache (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.enableVersionHeader (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.executionTimeout (Converter) = System.Configuration.TimeSpanSecondsConverter
+System.Web.Configuration.HttpRuntimeSection.executionTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.HttpRuntimeSection.GetRuntimeObject() = System.Web.Configuration.HttpRuntimeSection (True)
+System.Web.Configuration.HttpRuntimeSection.maxRequestLength (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.maxRequestLength (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.HttpRuntimeSection.maxWaitChangeNotification (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.maxWaitChangeNotification (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.HttpRuntimeSection.minFreeThreads (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.minFreeThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.HttpRuntimeSection.minLocalRequestFreeThreads (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.minLocalRequestFreeThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.HttpRuntimeSection.requestLengthDiskThreshold (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.requestLengthDiskThreshold (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.HttpRuntimeSection.requireRootedSaveAsPath (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.sendCacheControlHeader (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.shutdownTimeout (Converter) = System.Configuration.TimeSpanSecondsConverter
+System.Web.Configuration.HttpRuntimeSection.useFullyQualifiedRedirectUrl (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.HttpRuntimeSection.waitChangeNotification (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.HttpRuntimeSection.waitChangeNotification (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.IdentitySection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.IdentitySection.GetRuntimeObject() = System.Web.Configuration.IdentitySection (True)
+System.Web.Configuration.IdentitySection.impersonate (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.IdentitySection.password (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.IdentitySection.userName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.MachineKeySection.decryption (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.MachineKeySection.decryptionKey (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.MachineKeySection.decryptionKey (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.MachineKeySection.decryption (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.MachineKeySection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.MachineKeySection.GetRuntimeObject() = System.Web.Configuration.MachineKeySection (True)
+System.Web.Configuration.MachineKeySection.validation (Converter) = System.Web.Configuration.MachineKeyValidationConverter
+System.Web.Configuration.MachineKeySection.validationKey (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.MachineKeySection.validationKey (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.MembershipSection.defaultProvider (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.MembershipSection.defaultProvider (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.MembershipSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.MembershipSection.GetRuntimeObject() = System.Web.Configuration.MembershipSection (True)
+System.Web.Configuration.MembershipSection.hashAlgorithmType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.MembershipSection.userIsOnlineTimeWindow (Converter) = System.Configuration.TimeSpanMinutesConverter
+System.Web.Configuration.MembershipSection.userIsOnlineTimeWindow (Validator) = System.Configuration.TimeSpanValidator
+System.Web.Configuration.NamespaceCollection.autoImportVBNamespace (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.NamespaceCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.NamespaceInfo.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.NamespaceInfo.namespace (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.NamespaceInfo.namespace (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.OutputCacheProfileCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.OutputCacheProfile.duration (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.OutputCacheProfile.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.OutputCacheProfile.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.OutputCacheProfile.location (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.OutputCacheProfile.name (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.OutputCacheProfile.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.OutputCacheProfile.noStore (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.OutputCacheProfile.sqlDependency (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.OutputCacheProfile.varyByControl (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.OutputCacheProfile.varyByCustom (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.OutputCacheProfile.varyByHeader (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.OutputCacheProfile.varyByParam (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.OutputCacheSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.OutputCacheSection.enableFragmentCache (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.OutputCacheSection.enableOutputCache (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.OutputCacheSection.GetRuntimeObject() = System.Web.Configuration.OutputCacheSection (True)
+System.Web.Configuration.OutputCacheSection.omitVaryStar (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.OutputCacheSection.sendCacheControlHeader (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.OutputCacheSettingsSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.OutputCacheSettingsSection.GetRuntimeObject() = System.Web.Configuration.OutputCacheSettingsSection (True)
+System.Web.Configuration.PagesSection.asyncTimeout (Converter) = System.Configuration.TimeSpanSecondsConverter
+System.Web.Configuration.PagesSection.asyncTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.PagesSection.autoEventWireup (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.buffer (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.compilationMode (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.PagesSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.PagesSection.enableEventValidation (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.enableSessionState (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.enableViewState (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.enableViewStateMac (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.GetRuntimeObject() = System.Web.Configuration.PagesSection (True)
+System.Web.Configuration.PagesSection.maintainScrollPositionOnPostBack (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.masterPageFile (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.maxPageStateFieldLength (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.PagesSection.pageBaseType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.pageParserFilterType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.smartNavigation (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.styleSheetTheme (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.theme (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.userControlBaseType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.PagesSection.validateRequest (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.PagesSection.viewStateEncryptionMode (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.PassportAuthentication.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.PassportAuthentication.redirectUrl (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProcessModelSection.autoConfig (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.ProcessModelSection.clientConnectedCheck (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.comAuthenticationLevel (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.ProcessModelSection.comImpersonationLevel (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.ProcessModelSection.cpuMask (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProcessModelSection.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.ProcessModelSection.enable (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.ProcessModelSection.GetRuntimeObject() = System.Web.Configuration.ProcessModelSection (True)
+System.Web.Configuration.ProcessModelSection.idleTimeout (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.logLevel (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.ProcessModelSection.maxAppDomains (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProcessModelSection.maxAppDomains (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.maxIoThreads (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProcessModelSection.maxIoThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.maxWorkerThreads (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProcessModelSection.maxWorkerThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.memoryLimit (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProcessModelSection.minIoThreads (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProcessModelSection.minIoThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.minWorkerThreads (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProcessModelSection.minWorkerThreads (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.password (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProcessModelSection.pingFrequency (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.pingTimeout (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.requestLimit (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.ProcessModelSection.requestLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.requestQueueLimit (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.ProcessModelSection.requestQueueLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.responseDeadlockInterval (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.responseDeadlockInterval (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.ProcessModelSection.responseRestartDeadlockInterval (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.restartQueueLimit (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.ProcessModelSection.restartQueueLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProcessModelSection.serverErrorMessageFile (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProcessModelSection.shutdownTimeout (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.shutdownTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.ProcessModelSection.timeout (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProcessModelSection.userName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProcessModelSection.webGarden (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.ProfileGroupSettingsCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ProfileGroupSettings.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ProfileGroupSettings.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfileGroupSettings.name (Validator) = System.Web.Configuration.ProfilePropertyNameValidator
+System.Web.Configuration.ProfilePropertySettings.allowAnonymous (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.ProfilePropertySettingsCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ProfilePropertySettings.customProviderData (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfilePropertySettings.defaultValue (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfilePropertySettings.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ProfilePropertySettings.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfilePropertySettings.name (Validator) = System.Web.Configuration.ProfilePropertyNameValidator
+System.Web.Configuration.ProfilePropertySettings.provider (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfilePropertySettings.readOnly (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.ProfilePropertySettings.serializeAs (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.ProfilePropertySettings.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfileSettingsCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ProfileSettings.custom (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfileSettings.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.ProfileSettings.maxLimit (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.ProfileSettings.maxLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProfileSettings.minInstances (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.ProfileSettings.minInstances (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.ProfileSettings.minInterval (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.ProfileSettings.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.ProfileSettings.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.RoleManagerSection.cacheRolesInCookie (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.RoleManagerSection.cookieName (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.RoleManagerSection.cookieName (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.RoleManagerSection.cookiePath (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.RoleManagerSection.cookiePath (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.RoleManagerSection.cookieProtection (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.RoleManagerSection.cookieRequireSSL (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.RoleManagerSection.cookieSlidingExpiration (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.RoleManagerSection.cookieTimeout (Converter) = System.Configuration.TimeSpanMinutesOrInfiniteConverter
+System.Web.Configuration.RoleManagerSection.cookieTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.RoleManagerSection.createPersistentCookie (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.RoleManagerSection.defaultProvider (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.RoleManagerSection.defaultProvider (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.RoleManagerSection.domain (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.RoleManagerSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.RoleManagerSection.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.RoleManagerSection.GetRuntimeObject() = System.Web.Configuration.RoleManagerSection (True)
+System.Web.Configuration.RoleManagerSection.maxCachedResults (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.RootProfilePropertySettingsCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.RuleSettingsCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.RuleSettings.custom (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.RuleSettings.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.RuleSettings.eventName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.RuleSettings.maxLimit (Converter) = System.Configuration.InfiniteIntConverter
+System.Web.Configuration.RuleSettings.maxLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.RuleSettings.minInstances (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.RuleSettings.minInstances (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.RuleSettings.minInterval (Converter) = System.Configuration.InfiniteTimeSpanConverter
+System.Web.Configuration.RuleSettings.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.RuleSettings.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.RuleSettings.profile (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.RuleSettings.provider (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SecurityPolicySection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.SecurityPolicySection.GetRuntimeObject() = System.Web.Configuration.SecurityPolicySection (True)
+System.Web.Configuration.SessionPageStateSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.SessionPageStateSection.GetRuntimeObject() = System.Web.Configuration.SessionPageStateSection (True)
+System.Web.Configuration.SessionPageStateSection.historySize (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.SessionPageStateSection.historySize (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.SessionStateSection.allowCustomSqlDatabase (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.SessionStateSection.cookieless (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.cookieName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.customProvider (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.SessionStateSection.GetRuntimeObject() = System.Web.Configuration.SessionStateSection (True)
+System.Web.Configuration.SessionStateSection.mode (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.SessionStateSection.partitionResolverType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.regenerateExpiredSessionId (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.SessionStateSection.sessionIDManagerType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.sqlCommandTimeout (Converter) = System.Configuration.TimeSpanSecondsOrInfiniteConverter
+System.Web.Configuration.SessionStateSection.sqlConnectionString (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.stateConnectionString (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SessionStateSection.stateNetworkTimeout (Converter) = System.Configuration.TimeSpanSecondsOrInfiniteConverter
+System.Web.Configuration.SessionStateSection.stateNetworkTimeout (Validator) = System.Configuration.PositiveTimeSpanValidator
+System.Web.Configuration.SessionStateSection.timeout (Converter) = System.Configuration.TimeSpanMinutesOrInfiniteConverter
+System.Web.Configuration.SessionStateSection.timeout (Validator) = System.Configuration.TimeSpanValidator
+System.Web.Configuration.SessionStateSection.useHostingIdentity (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.SqlCacheDependencyDatabaseCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.SqlCacheDependencyDatabase.connectionStringName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SqlCacheDependencyDatabase.connectionStringName (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.SqlCacheDependencyDatabase.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.SqlCacheDependencyDatabase.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.SqlCacheDependencyDatabase.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.SqlCacheDependencyDatabase.pollTime (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.SqlCacheDependencySection.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.SqlCacheDependencySection.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.SqlCacheDependencySection.GetRuntimeObject() = System.Web.Configuration.SqlCacheDependencySection (True)
+System.Web.Configuration.SqlCacheDependencySection.pollTime (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.TagMapCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TagMapInfo.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TagMapInfo.mappedTagType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagMapInfo.mappedTagType (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TagMapInfo.tagType (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagMapInfo.tagType (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TagPrefixCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TagPrefixInfo.assembly (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagPrefixInfo.ElementProperty (Validator) = System.Configuration.CallbackValidator (True)
+System.Web.Configuration.TagPrefixInfo.namespace (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagPrefixInfo.src (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagPrefixInfo.tagName (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagPrefixInfo.tagPrefix (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TagPrefixInfo.tagPrefix (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TraceSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TraceSection.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.TraceSection.GetRuntimeObject() = System.Web.Configuration.TraceSection (True)
+System.Web.Configuration.TraceSection.localOnly (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.TraceSection.mostRecent (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.TraceSection.pageOutput (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.TraceSection.requestLimit (Converter) = System.ComponentModel.Int32Converter
+System.Web.Configuration.TraceSection.requestLimit (Validator) = System.Configuration.IntegerValidator
+System.Web.Configuration.TraceSection.traceMode (Converter) = System.Configuration.GenericEnumConverter
+System.Web.Configuration.TraceSection.writeToDiagnosticsTrace (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.TransformerInfoCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TransformerInfo.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TransformerInfo.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TransformerInfo.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TransformerInfo.type (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TransformerInfo.type (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TrustLevelCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TrustLevel.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TrustLevel.name (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TrustLevel.name (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TrustLevel.policyFile (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TrustSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.TrustSection.GetRuntimeObject() = System.Web.Configuration.TrustSection (True)
+System.Web.Configuration.TrustSection.level (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TrustSection.level (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.TrustSection.originUrl (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.TrustSection.processRequestInApplicationTrust (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.UrlMappingCollection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.UrlMapping.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.UrlMapping.mappedUrl (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.UrlMapping.mappedUrl (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.UrlMappingsSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.UrlMappingsSection.enabled (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.UrlMappingsSection.GetRuntimeObject() = System.Web.Configuration.UrlMappingsSection (True)
+System.Web.Configuration.UrlMapping.url (Converter) = System.Configuration.WhiteSpaceTrimStringConverter
+System.Web.Configuration.UrlMapping.url (Validator) = System.Configuration.CallbackValidator
+System.Web.Configuration.WebControlsSection.clientScriptsLocation (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.WebControlsSection.clientScriptsLocation (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.WebControlsSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.WebControlsSection.GetRuntimeObject() = System.Collections.Hashtable (False)
+System.Web.Configuration.WebPartsPersonalizationAuthorization.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.WebPartsPersonalization.defaultProvider (Converter) = System.ComponentModel.StringConverter
+System.Web.Configuration.WebPartsPersonalization.defaultProvider (Validator) = System.Configuration.StringValidator
+System.Web.Configuration.WebPartsPersonalization.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.WebPartsSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.WebPartsSection.enableExport (Converter) = System.ComponentModel.BooleanConverter
+System.Web.Configuration.WebPartsSection.GetRuntimeObject() = System.Web.Configuration.WebPartsSection (True)
+System.Web.Configuration.XhtmlConformanceSection.ElementProperty (Validator) = System.Configuration.DefaultValidator (True)
+System.Web.Configuration.XhtmlConformanceSection.GetRuntimeObject() = System.Web.Configuration.XhtmlConformanceSection (True)
+System.Web.Configuration.XhtmlConformanceSection.mode (Converter) = System.Configuration.GenericEnumConverter
diff --git a/mcs/class/System.Web/jar.resources b/mcs/class/System.Web/jar.resources
deleted file mode 100644
index fd256ba939d..00000000000
--- a/mcs/class/System.Web/jar.resources
+++ /dev/null
@@ -1,5 +0,0 @@
-<resources>
- <add key="browscap.ini" value="/browscap.ini" />
- <add key="WebUIValidation.js" value="/WebUIValidation.js" />
-</resources>
-
diff --git a/mcs/class/System.XML/System.Xml.Serialization/ChangeLog b/mcs/class/System.XML/System.Xml.Serialization/ChangeLog
index 0083d639418..663274672ba 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/ChangeLog
+++ b/mcs/class/System.XML/System.Xml.Serialization/ChangeLog
@@ -1,12 +1,3 @@
-2006-01-08 Gert Driesen <drieseng@users.sourceforge.net>
-
- * XmlSchemaImporter.cs: Fixed line endings (to CRLF).
-
-2006-01-07 Gert Driesen <drieseng@users.sourceforge.net>
-
- * XmlTypeMapping.cs: Fixed line endings.
- * TypeTranslator.cs: Fixed line endings.
-
2005-12-07 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializationReaderInterpreter.cs: When deserializing a "flat"
diff --git a/mcs/class/System.XML/System.Xml.Serialization/TypeTranslator.cs b/mcs/class/System.XML/System.Xml.Serialization/TypeTranslator.cs
index 9bad3e92c72..58b2b29c1da 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/TypeTranslator.cs
+++ b/mcs/class/System.XML/System.Xml.Serialization/TypeTranslator.cs
@@ -44,25 +44,25 @@ namespace System.Xml.Serialization
static Hashtable primitiveTypes;
static Hashtable primitiveArrayTypes;
-#if TARGET_JVM
- const string AppDomainCacheName = "System.Xml.Serialization.TypeTranslator.AppDomainCache";
- static Hashtable AppDomainCache {
- get {
- Hashtable res = (Hashtable)AppDomain.CurrentDomain.GetData(AppDomainCacheName);
-
- if(res == null) {
- lock(AppDomainCacheName) {
- res = (Hashtable)AppDomain.CurrentDomain.GetData(AppDomainCacheName);
- if (res == null) {
- res = new Hashtable();
- AppDomain.CurrentDomain.SetData(AppDomainCacheName, res);
- }
- }
- }
-
- return res;
- }
- }
+#if TARGET_JVM
+ const string AppDomainCacheName = "System.Xml.Serialization.TypeTranslator.AppDomainCache";
+ static Hashtable AppDomainCache {
+ get {
+ Hashtable res = (Hashtable)AppDomain.CurrentDomain.GetData(AppDomainCacheName);
+
+ if(res == null) {
+ lock(AppDomainCacheName) {
+ res = (Hashtable)AppDomain.CurrentDomain.GetData(AppDomainCacheName);
+ if (res == null) {
+ res = new Hashtable();
+ AppDomain.CurrentDomain.SetData(AppDomainCacheName, res);
+ }
+ }
+ }
+
+ return res;
+ }
+ }
#endif
static TypeTranslator ()
@@ -85,7 +85,7 @@ namespace System.Xml.Serialization
nameCache.Add (typeof (decimal), new TypeData (typeof (decimal), "decimal", true));
nameCache.Add (typeof (XmlQualifiedName), new TypeData (typeof (XmlQualifiedName), "QName", true));
nameCache.Add (typeof (string), new TypeData (typeof (string), "string", true));
- XmlSchemaPatternFacet guidFacet = new XmlSchemaPatternFacet();
+ XmlSchemaPatternFacet guidFacet = new XmlSchemaPatternFacet();
guidFacet.Value = "[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}";
nameCache.Add (typeof (Guid), new TypeData (typeof (Guid), "guid", true, (TypeData)nameCache[typeof (string)], guidFacet));
nameCache.Add (typeof (byte), new TypeData (typeof (byte), "unsignedByte", true));
@@ -168,10 +168,10 @@ namespace System.Xml.Serialization
TypeData typeData = nameCache[type] as TypeData;
if (typeData != null) return typeData;
-#if TARGET_JVM
- Hashtable dynamicCache = AppDomainCache;
- typeData = dynamicCache[type] as TypeData;
- if (typeData != null) return typeData;
+#if TARGET_JVM
+ Hashtable dynamicCache = AppDomainCache;
+ typeData = dynamicCache[type] as TypeData;
+ if (typeData != null) return typeData;
#endif
string name;
diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaImporter.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaImporter.cs
index eecf0efc2e8..64f7e4f058c 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaImporter.cs
+++ b/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaImporter.cs
@@ -7,27 +7,27 @@
//
// Copyright (C) Tim Coleman, 2002
//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
using System.Xml;
using System.Xml.Schema;
@@ -196,8 +196,8 @@ namespace System.Xml.Serialization
}
else
{
- if (!LocateElement (name, out qname, out stype))
- return null;
+ if (!LocateElement (name, out qname, out stype))
+ return null;
}
XmlTypeMapping map = GetRegisteredTypeMapping (qname);
@@ -211,14 +211,14 @@ namespace System.Xml.Serialization
return map;
}
- map = CreateTypeMapping (qname, SchemaTypes.Class, name);
+ map = CreateTypeMapping (qname, SchemaTypes.Class, name);
if (stype != null) {
- map.Documentation = GetDocumentation (stype);
- RegisterMapFixup (map, qname, (XmlSchemaComplexType)stype);
- } else {
- ClassMap cmap = new ClassMap ();
- CodeIdentifiers classIds = new CodeIdentifiers ();
- map.ObjectMap = cmap;
+ map.Documentation = GetDocumentation (stype);
+ RegisterMapFixup (map, qname, (XmlSchemaComplexType)stype);
+ } else {
+ ClassMap cmap = new ClassMap ();
+ CodeIdentifiers classIds = new CodeIdentifiers ();
+ map.ObjectMap = cmap;
AddTextMember (qname, cmap, classIds);
}
@@ -414,10 +414,10 @@ namespace System.Xml.Serialization
{
XmlQualifiedName qname;
XmlSchemaType stype;
- if (!LocateElement (name, out qname, out stype)) return null;
-
- if (stype == null) {
- // Importing a primitive type
+ if (!LocateElement (name, out qname, out stype)) return null;
+
+ if (stype == null) {
+ // Importing a primitive type
TypeData td = TypeTranslator.GetPrimitiveTypeData (qname.Name);
return ReflectType (td.Type, name.Namespace);
}
@@ -450,7 +450,7 @@ namespace System.Xml.Serialization
}
else
{
- if (elem.SchemaTypeName.IsEmpty) return false;
+ if (elem.SchemaTypeName.IsEmpty) return false;
object type = schemas.Find (elem.SchemaTypeName, typeof (XmlSchemaComplexType));
if (type == null) type = schemas.Find (elem.SchemaTypeName, typeof (XmlSchemaSimpleType));
@@ -1140,12 +1140,12 @@ namespace System.Xml.Serialization
if (CanBeEnum (st))
return ImportType (qname, null, true).TypeData;
- if (st.Content is XmlSchemaSimpleTypeRestriction) {
- XmlSchemaSimpleTypeRestriction rest = (XmlSchemaSimpleTypeRestriction) st.Content;
- XmlQualifiedName bn = GetContentBaseType (rest);
- if (bn == XmlQualifiedName.Empty && rest.BaseType != null)
- return FindBuiltInType (qname, rest.BaseType);
- else
+ if (st.Content is XmlSchemaSimpleTypeRestriction) {
+ XmlSchemaSimpleTypeRestriction rest = (XmlSchemaSimpleTypeRestriction) st.Content;
+ XmlQualifiedName bn = GetContentBaseType (rest);
+ if (bn == XmlQualifiedName.Empty && rest.BaseType != null)
+ return FindBuiltInType (qname, rest.BaseType);
+ else
return FindBuiltInType (bn);
}
else if (st.Content is XmlSchemaSimpleTypeList) {
@@ -1783,11 +1783,10 @@ namespace System.Xml.Serialization
}
return grp;
- }
-
- XmlTypeMapping ReflectType (Type type, string ns)
- {
- if (!encodedFormat)
+ }
+
+ XmlTypeMapping ReflectType (Type type, string ns)
+ { if (!encodedFormat)
{
if (auxXmlRefImporter == null) auxXmlRefImporter = new XmlReflectionImporter ();
return auxXmlRefImporter.ImportTypeMapping (type, ns);
@@ -1825,4 +1824,4 @@ namespace System.Xml.Serialization
#endregion // Methods
}
-}
+}
diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs
index 7352955ea63..c772e60ff86 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs
+++ b/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs
@@ -7,32 +7,32 @@
//
// (C) 2002 John Donagher
//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
using System.Xml;
using System;
using System.Collections;
-using System.Globalization;
+using System.Globalization;
using System.Xml.Schema;
namespace System.Xml.Serialization
@@ -170,31 +170,31 @@ namespace System.Xml.Serialization
}
}
-
- // Mapping info for XmlSerializable
- internal class XmlSerializableMapping : XmlTypeMapping
- {
- XmlSchema _schema;
-
- internal XmlSerializableMapping(string elementName, string ns, TypeData typeData, string xmlType, string xmlTypeNamespace)
- : base(elementName, ns, typeData, xmlType, xmlTypeNamespace)
- {
- IXmlSerializable serializable = (IXmlSerializable)Activator.CreateInstance(typeData.Type);
- _schema = serializable.GetSchema();
- if (_schema != null)
- {
- if (_schema.Id == null || _schema.Id.Length == 0)
- throw new InvalidOperationException("Schema Id is missing. The schema returned from " + typeData.Type.FullName + ".GetSchema() must have an Id.");
- }
- }
-
- internal XmlSchema Schema
- {
- get { return _schema; }
- }
- }
-
-
+
+ // Mapping info for XmlSerializable
+ internal class XmlSerializableMapping : XmlTypeMapping
+ {
+ XmlSchema _schema;
+
+ internal XmlSerializableMapping(string elementName, string ns, TypeData typeData, string xmlType, string xmlTypeNamespace)
+ : base(elementName, ns, typeData, xmlType, xmlTypeNamespace)
+ {
+ IXmlSerializable serializable = (IXmlSerializable)Activator.CreateInstance(typeData.Type);
+ _schema = serializable.GetSchema();
+ if (_schema != null)
+ {
+ if (_schema.Id == null || _schema.Id.Length == 0)
+ throw new InvalidOperationException("Schema Id is missing. The schema returned from " + typeData.Type.FullName + ".GetSchema() must have an Id.");
+ }
+ }
+
+ internal XmlSchema Schema
+ {
+ get { return _schema; }
+ }
+ }
+
+
// Mapping info for classes and structs
internal class ClassMap: ObjectMap
@@ -281,9 +281,9 @@ namespace System.Xml.Serialization
if (_elements.ContainsKey (key))
throw new InvalidOperationException ("The XML element named '" + elem.ElementName + "' from namespace '" + elem.Namespace + "' is already present in the current scope. Use XML attributes to specify another XML name or namespace for the element.");
_elements.Add (key, elem);
- }
-
- if (member.TypeData.IsListType && member.TypeData.Type != null && !member.TypeData.Type.IsArray) {
+ }
+
+ if (member.TypeData.IsListType && member.TypeData.Type != null && !member.TypeData.Type.IsArray) {
if (_listMembers == null) _listMembers = new ArrayList ();
_listMembers.Add (member);
}
@@ -399,12 +399,12 @@ namespace System.Xml.Serialization
public ArrayList MembersWithDefault
{
get { return _membersWithDefault; }
- }
-
+ }
+
public ArrayList ListMembers
{
get { return _listMembers; }
- }
+ }
public XmlTypeMapMember XmlTextCollector
{
@@ -452,8 +452,8 @@ namespace System.Xml.Serialization
{
XmlTypeMapElementInfoList _itemInfo;
bool _gotNestedMapping;
- XmlTypeMapping _nestedArrayMapping;
- string _choiceMember;
+ XmlTypeMapping _nestedArrayMapping;
+ string _choiceMember;
public bool IsMultiArray
{
@@ -463,12 +463,12 @@ namespace System.Xml.Serialization
}
}
- public string ChoiceMember
- {
- get { return _choiceMember; }
- set { _choiceMember = value; }
- }
-
+ public string ChoiceMember
+ {
+ get { return _choiceMember; }
+ set { _choiceMember = value; }
+ }
+
public XmlTypeMapping NestedArrayMapping
{
get
@@ -505,16 +505,16 @@ namespace System.Xml.Serialization
{
if (_itemInfo.Count == 1)
return (XmlTypeMapElementInfo) _itemInfo[0];
- else if (_choiceMember != null && index != -1)
- {
- Array values = (Array) XmlTypeMapMember.GetValue (ob, _choiceMember);
- if (values == null || index >= values.Length)
- throw new InvalidOperationException ("Invalid or missing choice enum value in member '" + _choiceMember + "'.");
- object val = values.GetValue (index);
- foreach (XmlTypeMapElementInfo elem in _itemInfo)
- if (elem.ChoiceValue != null && elem.ChoiceValue.Equals (val))
- return elem;
- }
+ else if (_choiceMember != null && index != -1)
+ {
+ Array values = (Array) XmlTypeMapMember.GetValue (ob, _choiceMember);
+ if (values == null || index >= values.Length)
+ throw new InvalidOperationException ("Invalid or missing choice enum value in member '" + _choiceMember + "'.");
+ object val = values.GetValue (index);
+ foreach (XmlTypeMapElementInfo elem in _itemInfo)
+ if (elem.ChoiceValue != null && elem.ChoiceValue.Equals (val))
+ return elem;
+ }
else
{
if (memberValue == null) return null;
diff --git a/mcs/class/System.XML/System.Xml.XPath/ChangeLog b/mcs/class/System.XML/System.Xml.XPath/ChangeLog
index ad30973bd0b..b33e228bf3b 100644
--- a/mcs/class/System.XML/System.Xml.XPath/ChangeLog
+++ b/mcs/class/System.XML/System.Xml.XPath/ChangeLog
@@ -1,14 +1,3 @@
-2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
-
- * Iterator.cs : Nowadays removal of cloning of the argument list
- in ListIterator is safe. Thanks to Joshua Tauberer for the hint.
-
-2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
-
- * Iterator.cs : (DescendantOrSelfIterator/DescendantIterator) the
- error message is for blaming custom XPathNavigator
- implementation, not us ;-) (see also #77194)
-
2006-01-06 Atsushi Enomoto <atsushi@ximian.com>
* XPathNavigator.cs : use WriteNode(XPathNavigator, bool)
diff --git a/mcs/class/System.XML/System.Xml.XPath/Iterator.cs b/mcs/class/System.XML/System.Xml.XPath/Iterator.cs
index eb42e055c57..cb137a19c37 100644
--- a/mcs/class/System.XML/System.Xml.XPath/Iterator.cs
+++ b/mcs/class/System.XML/System.Xml.XPath/Iterator.cs
@@ -522,7 +522,7 @@ namespace System.Xml.XPath
return true;
}
if (!_nav.MoveToParent ()) // should NEVER fail!
- throw new XPathException ("There seems some bugs on the XPathNavigator implementation class: " + _nav.GetType ());
+ throw new XPathException ("There seems some bugs on the XPathNavigator implementation class.");
_depth --;
}
_finished = true;
@@ -569,7 +569,7 @@ namespace System.Xml.XPath
return true;
}
if (!_nav.MoveToParent ()) // should NEVER fail!
- throw new XPathException ("There seems some bugs on the XPathNavigator implementation class: " + _nav.GetType ());
+ throw new XPathException ("There seems some bugs on the XPathNavigator implementation class.");
_depth --;
}
_finished = true;
@@ -1057,17 +1057,22 @@ namespace System.Xml.XPath
public ListIterator (BaseIterator iter, IList list) : base (iter.NamespaceManager)
{
+ if (!(list is ICloneable))
+ throw new ArgumentException ("Target enumerator must be cloneable.");
_list = list;
}
public ListIterator (IList list, NSResolver nsm) : base (nsm)
{
+ if (!(list is ICloneable))
+ throw new ArgumentException ("Target enumerator must be cloneable.");
_list = list;
}
private ListIterator (ListIterator other) : base (other)
{
- _list = other._list;
+ ICloneable listClone = other._list as ICloneable;
+ _list = (IList) listClone.Clone ();
}
public override XPathNodeIterator Clone () { return new ListIterator (this); }
diff --git a/mcs/class/System.XML/System.Xml/ChangeLog b/mcs/class/System.XML/System.Xml/ChangeLog
index 70a14159908..809c2d8899e 100644
--- a/mcs/class/System.XML/System.Xml/ChangeLog
+++ b/mcs/class/System.XML/System.Xml/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * XmlConvert.cs : handle Ticks. Fixed bug #77252.
-
2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
* XmlTextWriter.cs : Fixed bug #77082.
diff --git a/mcs/class/System.XML/System.Xml/XmlConvert.cs b/mcs/class/System.XML/System.Xml/XmlConvert.cs
index c9ede090a06..31673868956 100644
--- a/mcs/class/System.XML/System.Xml/XmlConvert.cs
+++ b/mcs/class/System.XML/System.Xml/XmlConvert.cs
@@ -439,12 +439,8 @@ namespace System.Xml {
builder.Append (value.Minutes).Append ('M');
if (value.Seconds > 0 || value.Milliseconds > 0) {
builder.Append (value.Seconds);
- long ticks = value.Ticks % TimeSpan.TicksPerMillisecond;
- if (ticks > 0)
- builder.Append ('.').AppendFormat ("{0:0000000}", value.Ticks % TimeSpan.TicksPerSecond);
- else if (value.Milliseconds > 0)
+ if (value.Milliseconds > 0)
builder.Append ('.').AppendFormat ("{0:000}", value.Milliseconds);
-
builder.Append ('S');
}
}
@@ -546,7 +542,7 @@ namespace System.Xml {
int hours = 0;
int minutes = 0;
int seconds = 0;
- long ticks = 0;
+ int milliseconds = 0;
int parsedDigits = 0;
bool error = false;
@@ -567,10 +563,10 @@ namespace System.Xml {
parsedDigits = i - start;
int value = int.Parse (s.Substring (start, i - start), CultureInfo.InvariantCulture);
if (parseStep == 7) {
- // adjust to 7 digits so that it makes sense as millisecond digits
- for (; parsedDigits > 7; parsedDigits--)
+ // adjust to 3 digits so that it makes sense as millisecond digits
+ for (; parsedDigits > 3; parsedDigits--)
value /= 10;
- for (; parsedDigits < 7; parsedDigits++)
+ for (; parsedDigits < 3; parsedDigits++)
value *= 10;
}
switch (s [i]) {
@@ -608,7 +604,7 @@ namespace System.Xml {
break;
case 'S':
if (parseStep == 7)
- ticks = value;
+ milliseconds = value;
else
seconds = value;
if (!isTime || parseStep > 7)
@@ -633,8 +629,7 @@ namespace System.Xml {
}
if (error)
throw new ArgumentException ("Invalid format string for duration schema datatype.");
- TimeSpan ts = new TimeSpan (days, hours, minutes, seconds);
- ts = ts.Add (TimeSpan.FromTicks (ticks));
+ TimeSpan ts = new TimeSpan (days, hours, minutes, seconds, milliseconds);
return minusValue ? -ts : ts;
}
diff --git a/mcs/class/System.XML/System.Xml_test.dll.sources b/mcs/class/System.XML/System.Xml_test.dll.sources
index 6c13ea47063..58842945d46 100644
--- a/mcs/class/System.XML/System.Xml_test.dll.sources
+++ b/mcs/class/System.XML/System.Xml_test.dll.sources
@@ -57,8 +57,6 @@ System.Xml.Serialization/SoapAttributeAttributeTests.cs
System.Xml.Serialization/SoapElementAttributeTests.cs
System.Xml.Serialization/SoapEnumAttributeTests.cs
System.Xml.Serialization/SoapIncludeAttributeTests.cs
-System.Xml.Serialization/SoapSchemaExporterTests.cs
-System.Xml.Serialization/SoapReflectionImporterTests.cs
System.Xml.Serialization/SoapSchemaMemberTests.cs
System.Xml.Serialization/SoapTypeAttributeTests.cs
System.Xml.Serialization/XmlAnyElementAttributeTests.cs
@@ -73,7 +71,6 @@ System.Xml.Serialization/XmlIncludeAttributeTests.cs
System.Xml.Serialization/XmlReflectionImporterTests.cs
System.Xml.Serialization/XmlRootAttributeTests.cs
System.Xml.Serialization/XmlSchemaExporterTests.cs
-System.Xml.Serialization/XmlSchemaImporterTests.cs
System.Xml.Serialization/XmlSerializationWriterTests.cs
System.Xml.Serialization/XmlTextAttributeTests.cs
System.Xml.Serialization/XmlTypeAttributeTests.cs
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog b/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog
index 8a8a49edeb1..e4f27de1c65 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog
@@ -1,12 +1,3 @@
-2006-01-07 Gert Driesen <drieseng@users.sourceforge.net>
-
- * XmlReflectionImporterTests.cs: Added numerous tests. No longer
- derive from Assertion.
- * SoapReflectionImporterTests.cs: Added numerous tests.
- * XmlSchemaImporterTests.cs: Added numerous tests.
- * XmlSchemaExporterTests.cs: Added numerous tests.
- * SoapSchemaExporterTests.cs: Added numerous tests.
-
2005-12-29 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSchemaExporterTests.cs: Added tests for exporting structs, and
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/SoapReflectionImporterTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/SoapReflectionImporterTests.cs
deleted file mode 100644
index 35d3c3d9b52..00000000000
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/SoapReflectionImporterTests.cs
+++ /dev/null
@@ -1,1494 +0,0 @@
-//
-// System.Xml.Serialization.SoapReflectionImporterTests
-//
-// Author:
-// Gert Driesen (drieseng@users.sourceforge.net)
-//
-// (C) 2005 Novell
-//
-
-using System;
-using System.Collections;
-using System.Xml;
-using System.Xml.Schema;
-using System.Xml.Serialization;
-
-using NUnit.Framework;
-
-using MonoTests.System.Xml.TestClasses;
-
-namespace MonoTests.System.XmlSerialization
-{
- [TestFixture]
- public class SoapReflectionImporterTests
- {
- private const string SomeNamespace = "some:urn";
- private const string AnotherNamespace = "another:urn";
-
- // these Map methods re-create the SoapReflectionImporter at every call.
-
- private XmlTypeMapping Map(Type t)
- {
- SoapReflectionImporter ri = new SoapReflectionImporter();
- XmlTypeMapping tm = ri.ImportTypeMapping(t);
-
- return tm;
- }
-
- private XmlTypeMapping Map(Type t, string ns)
- {
- SoapReflectionImporter ri = new SoapReflectionImporter(ns);
- XmlTypeMapping tm = ri.ImportTypeMapping(t);
-
- return tm;
- }
-
- private XmlTypeMapping Map(Type t, SoapAttributeOverrides overrides)
- {
- SoapReflectionImporter ri = new SoapReflectionImporter(overrides);
- XmlTypeMapping tm = ri.ImportTypeMapping(t);
-
- return tm;
- }
-
- private XmlMembersMapping MembersMap (Type t, SoapAttributeOverrides overrides,
- XmlReflectionMember [] members, bool inContainer, bool writeAccessors)
- {
- SoapReflectionImporter ri = new SoapReflectionImporter(overrides);
- XmlMembersMapping mm = ri.ImportMembersMapping(null, null, members,
- inContainer, writeAccessors);
-
- return mm;
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestIntTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (int));
- Assert.AreEqual ("int", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Int32", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int32", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestIntTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (int[]));
- Assert.AreEqual ("ArrayOfInt", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfInt32", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Int32[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Int32[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (int[][]));
- Assert.AreEqual ("ArrayOfArrayOfInt", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfInt32", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Int32[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Int32[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (int[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfInt", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfInt32", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Int32[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Int32[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestStringTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (string));
- Assert.AreEqual ("string", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("String", tm.TypeName, "#3");
- Assert.AreEqual ("System.String", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestStringTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (string[]));
- Assert.AreEqual ("ArrayOfString", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfString", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("String[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.String[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (string[][]));
- Assert.AreEqual ("ArrayOfArrayOfString", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfString", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("String[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.String[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (string[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfString", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfString", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("String[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.String[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestObjectTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (object));
- Assert.AreEqual ("anyType", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Object", tm.TypeName, "#3");
- Assert.AreEqual ("System.Object", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestObjectTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (object[]));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfObject", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Object[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Object[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (object[][]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfObject", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Object[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Object[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (object[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfObject", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Object[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Object[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestByteTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (byte));
- Assert.AreEqual ("unsignedByte", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Byte", tm.TypeName, "#3");
- Assert.AreEqual ("System.Byte", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestByteTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (byte[]));
- Assert.AreEqual ("base64Binary", tm.ElementName, "#A1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#A2");
- Assert.AreEqual ("Byte[]", tm.TypeName, "#A3");
- Assert.AreEqual ("System.Byte[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (byte[][]));
- Assert.AreEqual ("ArrayOfBase64Binary", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfByte", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Byte[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Byte[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (byte[][][]));
- Assert.AreEqual ("ArrayOfArrayOfBase64Binary", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfByte", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Byte[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Byte[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestBoolTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (bool));
- Assert.AreEqual ("boolean", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Boolean", tm.TypeName, "#3");
- Assert.AreEqual ("System.Boolean", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestShortTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (short));
- Assert.AreEqual ("short", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Int16", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int16", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestUnsignedShortTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (ushort));
- Assert.AreEqual ("unsignedShort", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("UInt16", tm.TypeName, "#3");
- Assert.AreEqual ("System.UInt16", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestUIntTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (uint));
- Assert.AreEqual ("unsignedInt", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("UInt32", tm.TypeName, "#3");
- Assert.AreEqual ("System.UInt32", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestLongTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (long));
- Assert.AreEqual ("long", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Int64", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int64", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestULongTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (ulong));
- Assert.AreEqual ("unsignedLong", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("UInt64", tm.TypeName, "#3");
- Assert.AreEqual ("System.UInt64", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestFloatTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (float));
- Assert.AreEqual ("float", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Single", tm.TypeName, "#3");
- Assert.AreEqual ("System.Single", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestDoubleTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (double));
- Assert.AreEqual ("double", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Double", tm.TypeName, "#3");
- Assert.AreEqual ("System.Double", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestDateTimeTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (DateTime));
- Assert.AreEqual ("dateTime", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("DateTime", tm.TypeName, "#3");
- Assert.AreEqual ("System.DateTime", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestDateTimeTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (DateTime[]));
- Assert.AreEqual ("ArrayOfDateTime", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfDateTime", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("DateTime[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.DateTime[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (DateTime[][]));
- Assert.AreEqual ("ArrayOfArrayOfDateTime", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfDateTime", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("DateTime[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.DateTime[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (DateTime[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfDateTime", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfDateTime", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("DateTime[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.DateTime[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestGuidTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (Guid));
- Assert.AreEqual ("guid", tm.ElementName, "#1");
- Assert.AreEqual ("http://microsoft.com/wsdl/types/", tm.Namespace, "#2");
- Assert.AreEqual ("Guid", tm.TypeName, "#3");
- Assert.AreEqual ("System.Guid", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestGuidTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (Guid[]));
- Assert.AreEqual ("ArrayOfGuid", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfGuid", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Guid[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Guid[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (Guid[][]));
- Assert.AreEqual ("ArrayOfArrayOfGuid", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfGuid", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Guid[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Guid[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (Guid[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfGuid", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfGuid", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Guid[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Guid[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestDecimalTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (decimal));
- Assert.AreEqual ("decimal", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Decimal", tm.TypeName, "#3");
- Assert.AreEqual ("System.Decimal", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestXmlQualifiedNameTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (XmlQualifiedName));
- Assert.AreEqual ("QName", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("XmlQualifiedName", tm.TypeName, "#3");
- Assert.AreEqual ("System.Xml.XmlQualifiedName", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestSByteTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (sbyte));
- Assert.AreEqual ("byte", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("SByte", tm.TypeName, "#3");
- Assert.AreEqual ("System.SByte", tm.TypeFullName, "#4");
- }
-
-
- [Test]
- [Category ("NotWorking")]
- public void TestCharTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (char));
- Assert.AreEqual ("char", tm.ElementName, "#1");
- Assert.AreEqual ("http://microsoft.com/wsdl/types/", tm.Namespace, "#2");
- Assert.AreEqual ("Char", tm.TypeName, "#3");
- Assert.AreEqual ("System.Char", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestCharTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (char[]));
- Assert.AreEqual ("ArrayOfChar", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfChar", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Char[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Char[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (char[][]));
- Assert.AreEqual ("ArrayOfArrayOfChar", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfChar", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Char[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Char[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (char[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfChar", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfChar", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Char[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Char[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (NotSupportedException))] // The type System.Xml.XmlNode may not be serialized with SOAP-encoded messages.
- public void TestXmlNodeTypeMapping ()
- {
- Map (typeof (XmlNode));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (NotSupportedException))] // The type System.Xml.XmlElement may not be serialized with SOAP-encoded messages.
- public void TestXmlElementTypeMapping ()
- {
- Map (typeof (XmlElement));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (NotSupportedException))] // The type System.Xml.XmlNotation may not be serialized with SOAP-encoded messages.
- public void TestXmlNotationTypeMapping ()
- {
- Map (typeof (XmlNotation));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (NotSupportedException))]
- public void TestXmlSerializableTypeMapping ()
- {
- Map (typeof (Employee));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (NotSupportedException))]
- public void TestClassTypeMapping_NestedStruct ()
- {
- Map (typeof (NestedStruct));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (ArgumentNullException))]
- public void TestNullTypeMapping()
- {
- Map(null);
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestIntTypeMappingWithDefaultNamespaces()
- {
- XmlTypeMapping tm = Map (typeof (int), SomeNamespace);
- Assert.AreEqual ("int", tm.ElementName, "#1");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", tm.Namespace, "#2");
- Assert.AreEqual ("Int32", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int32", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestStructTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (TimeSpan));
- Assert.AreEqual ("TimeSpan", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("TimeSpan", tm.TypeName, "#3");
- Assert.AreEqual ("System.TimeSpan", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (NotSupportedException))] // Arrays of structs are not supported with encoded SOAP.
- public void TestStructTypeMapping_Array ()
- {
- Map (typeof (TimeSpan[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestEnumTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (AttributeTargets));
- Assert.AreEqual ("AttributeTargets", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("AttributeTargets", tm.TypeName, "#3");
- Assert.AreEqual ("System.AttributeTargets", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestEnumTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (AttributeTargets[]));
- Assert.AreEqual ("ArrayOfAttributeTargets", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfAttributeTargets", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("AttributeTargets[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.AttributeTargets[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (AttributeTargets[][]));
- Assert.AreEqual ("ArrayOfArrayOfAttributeTargets", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfAttributeTargets", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("AttributeTargets[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.AttributeTargets[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (AttributeTargets[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAttributeTargets", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAttributeTargets", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("AttributeTargets[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.AttributeTargets[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestClassTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClass));
- Assert.AreEqual ("SimpleClass", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClass", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestClassTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClass[]));
- Assert.AreEqual ("ArrayOfSimpleClass", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClass", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClass[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClass[][]));
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClass[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClass[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClass[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_SimpleClass ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassEnumerable));
- Assert.AreEqual ("ArrayOfSimpleClass", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassEnumerable", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerable", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassEnumerable[]));
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassEnumerable", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassEnumerable[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerable[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassEnumerable[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassEnumerable", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassEnumerable[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerable[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassEnumerable[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassEnumerable", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassEnumerable[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerable[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_Object ()
- {
- XmlTypeMapping tm = Map (typeof (ObjectEnumerable));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("ObjectEnumerable", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectEnumerable", tm.TypeFullName, "#4");
-
- tm = Map (typeof (ObjectEnumerable[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfObjectEnumerable", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("ObjectEnumerable[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectEnumerable[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (ObjectEnumerable[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfObjectEnumerable", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("ObjectEnumerable[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectEnumerable[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (ObjectEnumerable[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfObjectEnumerable", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("ObjectEnumerable[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectEnumerable[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_IEnumarable_Object_NoMatchingAddMethod ()
- {
- Map (typeof (ObjectEnumerableNoMatchingAddMethod));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_IEnumarable_Object_NoMatchingAddMethod_Array ()
- {
- Map (typeof (ObjectEnumerableNoMatchingAddMethod[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_SimpleClass_PrivateCurrent ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassEnumerablePrivateCurrent));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateCurrent", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateCurrent[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassEnumerablePrivateCurrent", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateCurrent[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateCurrent[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassEnumerablePrivateCurrent", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateCurrent[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateCurrent[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassEnumerablePrivateCurrent", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateCurrent[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
-#if ONLY_1_1
- [Category ("NotDotNet")] // results in NullReferenceException in .NET 1.1 (SP1)
-#endif
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_SimpleClass_PrivateGetEnumerator ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoMatchingAddMethod ()
- {
- Map (typeof (ObjectCollectionNoMatchingAddMethod));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoMatchingAddMethod_Array ()
- {
- Map (typeof (ObjectCollectionNoMatchingAddMethod[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoMatchingAddMethod ()
- {
- Map (typeof (SimpleClassCollectionNoMatchingAddMethod));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoMatchingAddMethod_Array ()
- {
- Map (typeof (SimpleClassCollectionNoMatchingAddMethod[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_ICollection_SimpleClass ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassCollection));
- Assert.AreEqual ("ArrayOfSimpleClass", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassCollection", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassCollection", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassCollection[]));
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassCollection", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassCollection[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassCollection[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassCollection[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassCollection", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassCollection[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassCollection[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassCollection[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassCollection", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassCollection[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.SimpleClassCollection[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_ICollection_Object ()
- {
- XmlTypeMapping tm = Map (typeof (ObjectCollection));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("ObjectCollection", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectCollection", tm.TypeFullName, "#4");
-
- tm = Map (typeof (ObjectCollection[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfObjectCollection", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("ObjectCollection[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectCollection[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (ObjectCollection[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfObjectCollection", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("ObjectCollection[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectCollection[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (ObjectCollection[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfObjectCollection", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("ObjectCollection[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.SoapReflectionImporterTests.ObjectCollection[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoIntIndexer ()
- {
- Map (typeof (ObjectCollectionNoIntIndexer));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoIntIndexer_Array ()
- {
- Map (typeof (ObjectCollectionNoIntIndexer[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoIntIndexer ()
- {
- Map (typeof (SimpleClassCollectionNoIntIndexer));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoIntIndexer_Array ()
- {
- Map (typeof (SimpleClassCollectionNoIntIndexer[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestImportMembersMapping()
- {
- Type type = typeof (SimpleClass);
- SoapAttributes attrs = new SoapAttributes ();
- SoapAttributeOverrides overrides = new SoapAttributeOverrides ();
- overrides.Add (typeof (SimpleClass), attrs);
-
- XmlReflectionMember[] members = new XmlReflectionMember[0];
- XmlMembersMapping mm;
- try
- {
- mm = MembersMap(type, overrides, members, true, true);
- Assert.Fail("Should not be able to fetch an empty XmlMembersMapping");
- }
- catch (Exception)
- {
- }
-
- XmlReflectionMember rm = new XmlReflectionMember();
- rm.IsReturnValue = false;
- rm.MemberName = "something";
- rm.MemberType = typeof(string);
- members = new XmlReflectionMember[1];
- members[0] = rm;
-
- mm = MembersMap(type, overrides, members, false, false);
-
- Equals(mm.Count, 1);
-
- XmlMemberMapping smm = mm[0];
- Assert.IsFalse (smm.Any, "#1");
- Assert.AreEqual ("something", smm.ElementName, "#2");
- Assert.AreEqual ("something", smm.MemberName, "#3");
- Assert.IsNull (smm.Namespace, "#4");
- Assert.AreEqual ("System.String", smm.TypeFullName, "#5");
- Assert.AreEqual ("string", smm.TypeName, "#6");
- Assert.AreEqual ("http://www.w3.org/2001/XMLSchema", smm.TypeNamespace, "#7");
-
-
- rm = new XmlReflectionMember();
- rm.IsReturnValue = false;
- rm.MemberName = "nothing";
- rm.MemberType = typeof(string);
- members = new XmlReflectionMember[1];
- members[0] = rm;
-
- mm = MembersMap(type, overrides, members, false, false);
- Assert.AreEqual (1 , mm.Count, "#8");
- }
-
- public class Employee : IXmlSerializable
- {
- private string _firstName;
- private string _lastName;
- private string _address;
-
- public XmlSchema GetSchema ()
- {
- return null;
- }
-
- public void WriteXml (XmlWriter writer)
- {
- writer.WriteStartElement ("employee", "urn:devx-com");
- writer.WriteAttributeString ("firstName", _firstName);
- writer.WriteAttributeString ("lastName", _lastName);
- writer.WriteAttributeString ("address", _address);
- writer.WriteEndElement ();
- }
-
- public void ReadXml (XmlReader reader)
- {
- XmlNodeType type = reader.MoveToContent ();
- if (type == XmlNodeType.Element && reader.LocalName == "employee") {
- _firstName = reader["firstName"];
- _lastName = reader["lastName"];
- _address = reader["address"];
- }
- }
- }
-
- public class NestedStruct
- {
- public TimeSpan Period = TimeSpan.MaxValue;
- }
-
- public class ObjectEnumerable : IEnumerable
- {
- public void Add (int value)
- {
- }
-
- public void Add (object value)
- {
- }
-
- public IEnumerator GetEnumerator ()
- {
- return new ArrayList ().GetEnumerator ();
- }
- }
-
- public class SimpleClassEnumerable : IEnumerable
- {
- public void Add (int value)
- {
- }
-
- public void Add (object value)
- {
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (new ArrayList ());
- }
- }
-
- public class SimpleClassEnumerablePrivateGetEnumerator : IEnumerable
- {
- public void Add (object value)
- {
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return new ArrayList ().GetEnumerator ();
- }
- }
-
- public class SimpleClassEnumerablePrivateCurrent : IEnumerable
- {
- public void Add (object value)
- {
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public NoCurrentEnumerator GetEnumerator ()
- {
- return new NoCurrentEnumerator (new ArrayList ());
- }
- }
-
- // GetEnumerator().Current returns object, but there's no corresponding
- // Add (System.Object) method
- public class ObjectEnumerableNoMatchingAddMethod : IEnumerable
- {
- public void Add (int value)
- {
- }
-
- public IEnumerator GetEnumerator ()
- {
- return new ArrayList ().GetEnumerator ();
- }
- }
-
- // GetEnumerator().Current returns SimpleClass, but there's no
- // corresponding Add (SimpleClass) method
- public class SimpleClassCollectionNoMatchingAddMethod : ICollection
- {
- public SimpleClass this[int index] {
- get {
- return (SimpleClass) _list[index];
- }
- }
-
- public int Count {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (_list);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- // GetEnumerator().Current returns object, but there's no corresponding
- // Add (System.Object) method
- public class ObjectCollectionNoMatchingAddMethod : ICollection
- {
- public object this[int index] {
- get {
- return _list[index];
- }
- }
-
- public int Count {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _list.GetEnumerator ();
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- // Does not have int indexer.
- public class SimpleClassCollectionNoIntIndexer : ICollection
- {
- public SimpleClass this[string name] {
- get {
- return new SimpleClass ();
- }
- }
-
- public int Count {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (_list);
- }
-
- public void Add (SimpleClass value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- // Does not have int indexer.
- public class ObjectCollectionNoIntIndexer : ICollection
- {
- public object this[string name] {
- get {
- return new SimpleClass ();
- }
- }
-
- public int Count {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _list.GetEnumerator ();
- }
-
- public void Add (object value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- public class SimpleClassCollection : ICollection
- {
- public SimpleClass this[int index] {
- get {
- return (SimpleClass) _list[index];
- }
- }
-
- public int Count {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (_list);
- }
-
- public void Add (SimpleClass value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- public class ObjectCollection : ICollection
- {
- public object this[int name] {
- get {
- return new SimpleClass ();
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _list.GetEnumerator ();
- }
-
- public void Add (object value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- public class SimpleClassEnumerator : IEnumerator
- {
- internal SimpleClassEnumerator (ArrayList arguments)
- {
- IEnumerable temp = (IEnumerable) (arguments);
- _baseEnumerator = temp.GetEnumerator ();
- }
- public SimpleClass Current
- {
- get { return (SimpleClass) _baseEnumerator.Current; }
- }
-
- object IEnumerator.Current
- {
- get { return _baseEnumerator.Current; }
- }
-
- public bool MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- bool IEnumerator.MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- public void Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- void IEnumerator.Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- private IEnumerator _baseEnumerator;
- }
-
- public class NoCurrentEnumerator : IEnumerator
- {
- internal NoCurrentEnumerator (ArrayList arguments)
- {
- IEnumerable temp = (IEnumerable) (arguments);
- _baseEnumerator = temp.GetEnumerator ();
- }
-
- object IEnumerator.Current
- {
- get { return _baseEnumerator.Current; }
- }
-
- public bool MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- bool IEnumerator.MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- public void Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- void IEnumerator.Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- private IEnumerator _baseEnumerator;
- }
- }
-}
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/SoapSchemaExporterTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/SoapSchemaExporterTests.cs
deleted file mode 100644
index b1e0abcc7b0..00000000000
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/SoapSchemaExporterTests.cs
+++ /dev/null
@@ -1,480 +0,0 @@
-//
-// System.Xml.Serialization.SoapSchemaExporterTests
-//
-// Author:
-// Gert Driesen (drieseng@users.sourceforge.net)
-//
-// (C) 2005 Novell
-//
-
-using System;
-using System.Collections;
-using System.Globalization;
-using System.IO;
-using System.Xml;
-using System.Xml.Schema;
-using System.Xml.Serialization;
-
-using NUnit.Framework;
-
-using MonoTests.System.Xml.TestClasses;
-
-namespace MonoTests.System.XmlSerialization
-{
- [TestFixture]
- public class SoapSchemaExporterTests
- {
- [Test]
- [Category ("NotWorking")]
- public void ExportStruct ()
- {
- SoapReflectionImporter ri = new SoapReflectionImporter ("NSTimeSpan");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (TimeSpan));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"NSTimeSpan\" elementFormDefault=\"qualified\" targetNamespace=\"NSTimeSpan\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"NSTimeSpan\" targetNamespace=\"NSTimeSpan\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:complexType name=\"TimeSpan\" />{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
-
- [Test]
- [Category ("NotWorking")]
- public void ExportClass ()
- {
- SoapAttributeOverrides overrides = new SoapAttributeOverrides ();
- SoapAttributes attr = new SoapAttributes ();
- SoapElementAttribute element = new SoapElementAttribute ();
- element.ElementName = "saying";
- element.IsNullable = true;
- attr.SoapElement = element;
- overrides.Add (typeof (SimpleClass), "something", attr);
-
- SoapReflectionImporter ri = new SoapReflectionImporter (overrides, "NSSimpleClass");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (SimpleClass));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"NSSimpleClass\" elementFormDefault=\"qualified\" targetNamespace=\"NSSimpleClass\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"NSSimpleClass\" targetNamespace=\"NSSimpleClass\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:complexType name=\"SimpleClass\">{0}" +
- " <xs:sequence>{0}" +
-#if NET_2_0
- " <xs:element minOccurs=\"0\" maxOccurs=\"1\" form=\"unqualified\" name=\"saying\" nillable=\"true\" type=\"xs:string\" />{0}" +
-#else
- " <xs:element minOccurs=\"1\" maxOccurs=\"1\" name=\"saying\" type=\"xs:string\" />{0}" +
-#endif
- " </xs:sequence>{0}" +
- " </xs:complexType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))] // Cannot use wildcards at the top level of a schema.
- public void ExportClass_XmlNode ()
- {
- XmlReflectionImporter ri = new XmlReflectionImporter ("NS1");
- XmlSchemas schemas = new XmlSchemas ();
- XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (XmlNode));
- sx.ExportTypeMapping (tm);
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))] // Cannot use wildcards at the top level of a schema.
- public void ExportClass_XmlElement ()
- {
- XmlReflectionImporter ri = new XmlReflectionImporter ("NS1");
- XmlSchemas schemas = new XmlSchemas ();
- XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (XmlElement));
- sx.ExportTypeMapping (tm);
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportClass_Array ()
- {
- SoapAttributeOverrides overrides = new SoapAttributeOverrides ();
- SoapAttributes attr = new SoapAttributes ();
- SoapElementAttribute element = new SoapElementAttribute ();
- element.ElementName = "saying";
- element.IsNullable = true;
- attr.SoapElement = element;
- overrides.Add (typeof (SimpleClass), "something", attr);
-
- SoapReflectionImporter ri = new SoapReflectionImporter (overrides, "NSSimpleClassArray");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (SimpleClass[]));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"NSSimpleClassArray\" elementFormDefault=\"qualified\" targetNamespace=\"NSSimpleClassArray\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"NSSimpleClassArray\" targetNamespace=\"NSSimpleClassArray\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:import namespace=\"http://schemas.xmlsoap.org/soap/encoding/\" />{0}" +
- " <xs:import namespace=\"http://schemas.xmlsoap.org/wsdl/\" />{0}" +
- " <xs:complexType name=\"ArrayOfSimpleClass\">{0}" +
- " <xs:complexContent mixed=\"false\">{0}" +
- " <xs:restriction xmlns:q1=\"http://schemas.xmlsoap.org/soap/encoding/\" base=\"q1:Array\">{0}" +
- " <xs:attribute d5p1:arrayType=\"tns:SimpleClass[]\" ref=\"q1:arrayType\" xmlns:d5p1=\"http://schemas.xmlsoap.org/wsdl/\" />{0}" +
- " </xs:restriction>{0}" +
- " </xs:complexContent>{0}" +
- " </xs:complexType>{0}" +
- " <xs:complexType name=\"SimpleClass\">{0}" +
- " <xs:sequence>{0}" +
-#if NET_2_0
- " <xs:element minOccurs=\"0\" maxOccurs=\"1\" form=\"unqualified\" name=\"saying\" nillable=\"true\" type=\"xs:string\" />{0}" +
-#else
- " <xs:element minOccurs=\"1\" maxOccurs=\"1\" name=\"saying\" type=\"xs:string\" />{0}" +
-#endif
- " </xs:sequence>{0}" +
- " </xs:complexType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportEnum ()
- {
- SoapReflectionImporter ri = new SoapReflectionImporter ("NSEnumDefaultValue");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (EnumDefaultValue));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"NSEnumDefaultValue\" elementFormDefault=\"qualified\" targetNamespace=\"NSEnumDefaultValue\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"NSEnumDefaultValue\" targetNamespace=\"NSEnumDefaultValue\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:simpleType name=\"EnumDefaultValue\">{0}" +
- " <xs:list>{0}" +
- " <xs:simpleType>{0}" +
- " <xs:restriction base=\"xs:string\">{0}" +
- " <xs:enumeration value=\"e1\" />{0}" +
- " <xs:enumeration value=\"e2\" />{0}" +
- " <xs:enumeration value=\"e3\" />{0}" +
- " </xs:restriction>{0}" +
- " </xs:simpleType>{0}" +
- " </xs:list>{0}" +
- " </xs:simpleType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
-
- ri = new SoapReflectionImporter ("NSEnumDefaultValueNF");
- schemas = new XmlSchemas ();
- sx = new SoapSchemaExporter (schemas);
- tm = ri.ImportTypeMapping (typeof (EnumDefaultValueNF));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#3");
-
- sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"NSEnumDefaultValueNF\" elementFormDefault=\"qualified\" targetNamespace=\"NSEnumDefaultValueNF\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"NSEnumDefaultValueNF\" targetNamespace=\"NSEnumDefaultValueNF\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:simpleType name=\"EnumDefaultValueNF\">{0}" +
- " <xs:restriction base=\"xs:string\">{0}" +
- " <xs:enumeration value=\"e1\" />{0}" +
- " <xs:enumeration value=\"e2\" />{0}" +
- " <xs:enumeration value=\"e3\" />{0}" +
- " </xs:restriction>{0}" +
- " </xs:simpleType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportXsdPrimitive ()
- {
- ArrayList types = new ArrayList ();
- types.Add (new TypeDescription (typeof (object), true, "anyType", "Object"));
- types.Add (new TypeDescription (typeof (byte), true, "unsignedByte", "Byte"));
- types.Add (new TypeDescription (typeof (sbyte), true, "byte", "Byte"));
- types.Add (new TypeDescription (typeof (bool), true, "boolean", "Boolean"));
- types.Add (new TypeDescription (typeof (short), true, "short", "Short"));
- types.Add (new TypeDescription (typeof (int), true, "int", "Int"));
- types.Add (new TypeDescription (typeof (long), true, "long", "Long"));
- types.Add (new TypeDescription (typeof (float), true, "float", "Float"));
- types.Add (new TypeDescription (typeof (double), true, "double", "Double"));
- types.Add (new TypeDescription (typeof (decimal), true, "decimal", "Decimal"));
- types.Add (new TypeDescription (typeof (ushort), true, "unsignedShort", "UnsignedShort"));
- types.Add (new TypeDescription (typeof (uint), true, "unsignedInt", "UnsignedInt"));
- types.Add (new TypeDescription (typeof (ulong), true, "unsignedLong", "UnsignedLong"));
- types.Add (new TypeDescription (typeof (DateTime), true, "dateTime", "DateTime"));
-#if NET_2_0
- types.Add (new TypeDescription (typeof (XmlQualifiedName), true, "QName", "QName", true));
-#else
- types.Add (new TypeDescription (typeof (XmlQualifiedName), true, "QName", "QName"));
-#endif
- types.Add (new TypeDescription (typeof (string), true, "string", "String", true));
-
- foreach (TypeDescription typeDesc in types) {
- SoapReflectionImporter ri = new SoapReflectionImporter (typeDesc.Type.Name);
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeDesc.Type);
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (0, schemas.Count, typeDesc.Type.FullName + "#1");
- }
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportXsdPrimitive_ByteArray ()
- {
- SoapReflectionImporter ri = new SoapReflectionImporter ("ByteArray");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (byte[]));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (0, schemas.Count, "#1");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportXsdPrimitive_Arrays ()
- {
- ArrayList types = new ArrayList ();
- types.Add (new TypeDescription (typeof (object[]), true, "anyType", "AnyType"));
- types.Add (new TypeDescription (typeof (sbyte[]), true, "byte", "Byte"));
- types.Add (new TypeDescription (typeof (bool[]), true, "boolean", "Boolean"));
- types.Add (new TypeDescription (typeof (short[]), true, "short", "Short"));
- types.Add (new TypeDescription (typeof (int[]), true, "int", "Int"));
- types.Add (new TypeDescription (typeof (long[]), true, "long", "Long"));
- types.Add (new TypeDescription (typeof (float[]), true, "float", "Float"));
- types.Add (new TypeDescription (typeof (double[]), true, "double", "Double"));
- types.Add (new TypeDescription (typeof (decimal[]), true, "decimal", "Decimal"));
- types.Add (new TypeDescription (typeof (ushort[]), true, "unsignedShort", "UnsignedShort"));
- types.Add (new TypeDescription (typeof (uint[]), true, "unsignedInt", "UnsignedInt"));
- types.Add (new TypeDescription (typeof (ulong[]), true, "unsignedLong", "UnsignedLong"));
- types.Add (new TypeDescription (typeof (DateTime[]), true, "dateTime", "DateTime"));
-#if NET_2_0
- types.Add (new TypeDescription (typeof (XmlQualifiedName[]), true, "QName", "QName", true));
-#else
- types.Add (new TypeDescription (typeof (XmlQualifiedName[]), true, "QName", "QName"));
-#endif
- types.Add (new TypeDescription (typeof (string[]), true, "string", "String", true));
-
- foreach (TypeDescription typeDesc in types) {
- SoapReflectionImporter ri = new SoapReflectionImporter (typeDesc.Type.Name);
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeDesc.Type);
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, typeDesc.Type.FullName + "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"{1}\" elementFormDefault=\"qualified\" targetNamespace=\"{1}\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"{1}\" targetNamespace=\"{1}\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:import namespace=\"http://schemas.xmlsoap.org/soap/encoding/\" />{0}" +
- " <xs:import namespace=\"http://schemas.xmlsoap.org/wsdl/\" />{0}" +
- " <xs:complexType name=\"ArrayOf{2}\">{0}" +
- " <xs:complexContent mixed=\"false\">{0}" +
- " <xs:restriction xmlns:q1=\"http://schemas.xmlsoap.org/soap/encoding/\" base=\"q1:Array\">{0}" +
- " <xs:attribute d5p1:arrayType=\"xs:{3}[]\" ref=\"q1:arrayType\" xmlns:d5p1=\"http://schemas.xmlsoap.org/wsdl/\" />{0}" +
- " </xs:restriction>{0}" +
- " </xs:complexContent>{0}" +
- " </xs:complexType>{0}" +
- "</xs:schema>", Environment.NewLine, typeDesc.Type.Name, typeDesc.ArrayType, typeDesc.XmlType,
- typeDesc.XsdType ? "xs" : "tns", typeDesc.IsNillable ? "nillable=\"true\" " : ""),
- sw.ToString (), typeDesc.Type.FullName + "#2");
- }
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportNonXsdPrimitive_Guid ()
- {
- SoapReflectionImporter ri = new SoapReflectionImporter ("NSPrimGuid");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (Guid));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"http://microsoft.com/wsdl/types/\" elementFormDefault=\"qualified\" targetNamespace=\"http://microsoft.com/wsdl/types/\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"http://microsoft.com/wsdl/types/\" targetNamespace=\"http://microsoft.com/wsdl/types/\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:simpleType name=\"guid\">{0}" +
- " <xs:restriction base=\"xs:string\">{0}" +
- " <xs:pattern value=\"[0-9a-fA-F]{{8}}-[0-9a-fA-F]{{4}}-[0-9a-fA-F]{{4}}-[0-9a-fA-F]{{4}}-[0-9a-fA-F]{{12}}\" />{0}" +
- " </xs:restriction>{0}" +
- " </xs:simpleType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ExportNonXsdPrimitive_Char ()
- {
- SoapReflectionImporter ri = new SoapReflectionImporter ("NSPrimChar");
- XmlSchemas schemas = new XmlSchemas ();
- SoapSchemaExporter sx = new SoapSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (Char));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
-#if NET_2_0
- "<xs:schema xmlns:tns=\"http://microsoft.com/wsdl/types/\" elementFormDefault=\"qualified\" targetNamespace=\"http://microsoft.com/wsdl/types/\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#else
- "<xs:schema xmlns:tns=\"http://microsoft.com/wsdl/types/\" targetNamespace=\"http://microsoft.com/wsdl/types/\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
-#endif
- " <xs:simpleType name=\"char\">{0}" +
- " <xs:restriction base=\"xs:unsignedShort\" />{0}" +
- " </xs:simpleType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
- public class Employee : IXmlSerializable
- {
- private string _firstName;
- private string _lastName;
- private string _address;
-
- public XmlSchema GetSchema ()
- {
- return null;
- }
-
- public void WriteXml (XmlWriter writer)
- {
- writer.WriteStartElement ("employee", "urn:devx-com");
- writer.WriteAttributeString ("firstName", _firstName);
- writer.WriteAttributeString ("lastName", _lastName);
- writer.WriteAttributeString ("address", _address);
- writer.WriteEndElement ();
- }
-
- public void ReadXml (XmlReader reader)
- {
- XmlNodeType type = reader.MoveToContent ();
- if (type == XmlNodeType.Element && reader.LocalName == "employee") {
- _firstName = reader["firstName"];
- _lastName = reader["lastName"];
- _address = reader["address"];
- }
- }
- }
-
- private class TypeDescription
- {
- public TypeDescription (Type type, bool xsdType, string xmlType, string arrayType)
- : this (type, xsdType, xmlType, arrayType, false)
- {
- }
-
- public TypeDescription (Type type, bool xsdType, string xmlType, string arrayType, bool isNillable)
- {
- _type = type;
- _xsdType = xsdType;
- _xmlType = xmlType;
- _arrayType = arrayType;
- _isNillable = isNillable;
- }
-
- public Type Type
- {
- get { return _type; }
- }
-
- public string XmlType
- {
- get { return _xmlType; }
- }
-
- public string ArrayType
- {
- get { return _arrayType; }
- }
-
- public bool XsdType
- {
- get { return _xsdType; }
- }
-
- public bool IsNillable
- {
- get { return _isNillable; }
- }
-
- private Type _type;
- private bool _xsdType;
- private string _xmlType;
- private string _arrayType;
- private bool _isNillable;
- }
- }
-}
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs
index 5125b46ae46..1c9a34f6d18 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs
@@ -11,9 +11,7 @@
//
using System;
-using System.Collections;
using System.Xml;
-using System.Xml.Schema;
using System.Xml.Serialization;
using NUnit.Framework;
@@ -48,7 +46,7 @@ namespace MonoTests.System.XmlSerialization
}
[TestFixture]
- public class XmlReflectionImporterTests
+ public class XmlReflectionImporterTests : Assertion
{
private const string SomeNamespace = "some:urn";
private const string AnotherNamespace = "another:urn";
@@ -81,14 +79,6 @@ namespace MonoTests.System.XmlSerialization
return tm;
}
- private XmlTypeMapping Map (Type t, string ns, XmlRootAttribute root)
- {
- XmlReflectionImporter ri = new XmlReflectionImporter (ns);
- XmlTypeMapping tm = ri.ImportTypeMapping (t, root);
-
- return tm;
- }
-
private XmlTypeMapping Map(Type t, XmlAttributeOverrides overrides)
{
XmlReflectionImporter ri = new XmlReflectionImporter(overrides);
@@ -111,376 +101,190 @@ namespace MonoTests.System.XmlSerialization
public void TestIntTypeMapping()
{
XmlTypeMapping tm = Map(typeof(int));
- Assert.AreEqual ("int", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Int32", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int32", tm.TypeFullName, "#4");
+ AssertEquals("int", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Int32", tm.TypeName);
+ AssertEquals("System.Int32", tm.TypeFullName);
}
[Test]
- [Category ("NotWorking")]
- public void TestIntTypeMapping_Array ()
+ public void TestIntArrayTypeMapping()
{
XmlTypeMapping tm = Map(typeof(int[]));
- Assert.AreEqual ("ArrayOfInt", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfInt32", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Int32[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Int32[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (int[][]));
- Assert.AreEqual ("ArrayOfArrayOfInt", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfInt32", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Int32[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Int32[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (int[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfInt", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfInt32", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Int32[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Int32[][][]", tm.TypeFullName, "#C4");
+ AssertEquals("ArrayOfInt", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Int32[]", tm.TypeName);
+ AssertEquals("System.Int32[]", tm.TypeFullName);
}
[Test]
public void TestStringTypeMapping()
{
XmlTypeMapping tm = Map(typeof(string));
- Assert.AreEqual ("string", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("String", tm.TypeName, "#3");
- Assert.AreEqual ("System.String", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestStringTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (string[]));
- Assert.AreEqual ("ArrayOfString", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfString", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("String[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.String[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (string[][]));
- Assert.AreEqual ("ArrayOfArrayOfString", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfString", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("String[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.String[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (string[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfString", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfString", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("String[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.String[][][]", tm.TypeFullName, "#C4");
+ AssertEquals("string", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("String", tm.TypeName);
+ AssertEquals("System.String", tm.TypeFullName);
}
[Test]
public void TestObjectTypeMapping()
{
XmlTypeMapping tm = Map(typeof(object));
- Assert.AreEqual ("anyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Object", tm.TypeName, "#3");
- Assert.AreEqual ("System.Object", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestObjectTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (object[]));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfObject", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Object[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Object[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (object[][]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfObject", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Object[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Object[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (object[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfObject", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Object[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Object[][][]", tm.TypeFullName, "#C4");
+ AssertEquals("anyType", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Object", tm.TypeName);
+ AssertEquals("System.Object", tm.TypeFullName);
}
[Test]
public void TestByteTypeMapping()
{
XmlTypeMapping tm = Map(typeof(byte));
- Assert.AreEqual ("unsignedByte", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Byte", tm.TypeName, "#3");
- Assert.AreEqual ("System.Byte", tm.TypeFullName, "#4");
+ AssertEquals("unsignedByte", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Byte", tm.TypeName);
+ AssertEquals("System.Byte", tm.TypeFullName);
}
[Test]
- [Category ("NotWorking")]
- public void TestByteTypeMapping_Array ()
+ public void TestByteArrayTypeMapping()
{
XmlTypeMapping tm = Map(typeof(byte[]));
- Assert.AreEqual ("base64Binary", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
- Assert.AreEqual ("Byte[]", tm.TypeName, "#A3");
- Assert.AreEqual ("System.Byte[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (byte[][]));
- Assert.AreEqual ("ArrayOfBase64Binary", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfByte", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Byte[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Byte[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (byte[][][]));
- Assert.AreEqual ("ArrayOfArrayOfBase64Binary", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfByte", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Byte[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Byte[][][]", tm.TypeFullName, "#C4");
+ AssertEquals("base64Binary", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Byte[]", tm.TypeName);
+ AssertEquals("System.Byte[]", tm.TypeFullName);
}
[Test]
public void TestBoolTypeMapping()
{
XmlTypeMapping tm = Map(typeof(bool));
- Assert.AreEqual ("boolean", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Boolean", tm.TypeName, "#3");
- Assert.AreEqual ("System.Boolean", tm.TypeFullName, "#4");
+ AssertEquals("boolean", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Boolean", tm.TypeName);
+ AssertEquals("System.Boolean", tm.TypeFullName);
}
[Test]
public void TestShortTypeMapping()
{
XmlTypeMapping tm = Map(typeof(short));
- Assert.AreEqual ("short", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Int16", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int16", tm.TypeFullName, "#4");
+ AssertEquals("short", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Int16", tm.TypeName);
+ AssertEquals("System.Int16", tm.TypeFullName);
}
[Test]
public void TestUnsignedShortTypeMapping()
{
XmlTypeMapping tm = Map(typeof(ushort));
- Assert.AreEqual ("unsignedShort", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("UInt16", tm.TypeName, "#3");
- Assert.AreEqual ("System.UInt16", tm.TypeFullName, "#4");
+ AssertEquals("unsignedShort", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("UInt16", tm.TypeName);
+ AssertEquals("System.UInt16", tm.TypeFullName);
}
[Test]
public void TestUIntTypeMapping()
{
XmlTypeMapping tm = Map(typeof(uint));
- Assert.AreEqual ("unsignedInt", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("UInt32", tm.TypeName, "#3");
- Assert.AreEqual ("System.UInt32", tm.TypeFullName, "#4");
+ AssertEquals("unsignedInt", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("UInt32", tm.TypeName);
+ AssertEquals("System.UInt32", tm.TypeFullName);
}
[Test]
public void TestLongTypeMapping()
{
XmlTypeMapping tm = Map(typeof(long));
- Assert.AreEqual ("long", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Int64", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int64", tm.TypeFullName, "#4");
+ AssertEquals("long", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Int64", tm.TypeName);
+ AssertEquals("System.Int64", tm.TypeFullName);
}
[Test]
public void TestULongTypeMapping()
{
XmlTypeMapping tm = Map(typeof(ulong));
- Assert.AreEqual ("unsignedLong", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("UInt64", tm.TypeName, "#3");
- Assert.AreEqual ("System.UInt64", tm.TypeFullName, "#4");
+ AssertEquals("unsignedLong", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("UInt64", tm.TypeName);
+ AssertEquals("System.UInt64", tm.TypeFullName);
}
[Test]
public void TestFloatTypeMapping()
{
XmlTypeMapping tm = Map(typeof(float));
- Assert.AreEqual ("float", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Single", tm.TypeName, "#3");
- Assert.AreEqual ("System.Single", tm.TypeFullName, "#4");
+ AssertEquals("float", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Single", tm.TypeName);
+ AssertEquals("System.Single", tm.TypeFullName);
}
[Test]
public void TestDoubleTypeMapping()
{
XmlTypeMapping tm = Map(typeof(double));
- Assert.AreEqual ("double", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Double", tm.TypeName, "#3");
- Assert.AreEqual ("System.Double", tm.TypeFullName, "#4");
+ AssertEquals("double", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Double", tm.TypeName);
+ AssertEquals("System.Double", tm.TypeFullName);
}
[Test]
public void TestDateTimeTypeMapping()
{
XmlTypeMapping tm = Map(typeof(DateTime));
- Assert.AreEqual ("dateTime", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("DateTime", tm.TypeName, "#3");
- Assert.AreEqual ("System.DateTime", tm.TypeFullName, "#4");
+ AssertEquals("dateTime", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("DateTime", tm.TypeName);
+ AssertEquals("System.DateTime", tm.TypeFullName);
}
-
- [Test]
- [Category ("NotWorking")]
- public void TestDateTimeTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (DateTime[]));
- Assert.AreEqual ("ArrayOfDateTime", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfDateTime", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("DateTime[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.DateTime[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (DateTime[][]));
- Assert.AreEqual ("ArrayOfArrayOfDateTime", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfDateTime", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("DateTime[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.DateTime[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (DateTime[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfDateTime", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfDateTime", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("DateTime[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.DateTime[][][]", tm.TypeFullName, "#C4");
- }
-
+
[Test]
public void TestGuidTypeMapping()
{
XmlTypeMapping tm = Map(typeof(Guid));
- Assert.AreEqual ("guid", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Guid", tm.TypeName, "#3");
- Assert.AreEqual ("System.Guid", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestGuidTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (Guid[]));
- Assert.AreEqual ("ArrayOfGuid", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfGuid", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Guid[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Guid[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (Guid[][]));
- Assert.AreEqual ("ArrayOfArrayOfGuid", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfGuid", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Guid[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Guid[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (Guid[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfGuid", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfGuid", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Guid[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Guid[][][]", tm.TypeFullName, "#C4");
+ AssertEquals("guid", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Guid", tm.TypeName);
+ AssertEquals("System.Guid", tm.TypeFullName);
}
-
+
[Test]
public void TestDecimalTypeMapping()
{
XmlTypeMapping tm = Map(typeof(decimal));
- Assert.AreEqual ("decimal", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Decimal", tm.TypeName, "#3");
- Assert.AreEqual ("System.Decimal", tm.TypeFullName, "#4");
+ AssertEquals("decimal", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Decimal", tm.TypeName);
+ AssertEquals("System.Decimal", tm.TypeFullName);
}
[Test]
public void TestXmlQualifiedNameTypeMapping()
{
XmlTypeMapping tm = Map(typeof(XmlQualifiedName));
- Assert.AreEqual ("QName", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("XmlQualifiedName", tm.TypeName, "#3");
- Assert.AreEqual ("System.Xml.XmlQualifiedName", tm.TypeFullName, "#4");
+ AssertEquals("QName", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("XmlQualifiedName", tm.TypeName);
+ AssertEquals("System.Xml.XmlQualifiedName", tm.TypeFullName);
}
[Test]
public void TestSByteTypeMapping()
{
XmlTypeMapping tm = Map(typeof(sbyte));
- Assert.AreEqual ("byte", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SByte", tm.TypeName, "#3");
- Assert.AreEqual ("System.SByte", tm.TypeFullName, "#4");
+ AssertEquals("byte", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("SByte", tm.TypeName);
+ AssertEquals("System.SByte", tm.TypeFullName);
}
@@ -488,725 +292,78 @@ namespace MonoTests.System.XmlSerialization
public void TestCharTypeMapping()
{
XmlTypeMapping tm = Map(typeof(char));
- Assert.AreEqual ("char", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Char", tm.TypeName, "#3");
- Assert.AreEqual ("System.Char", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestCharTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (char[]));
- Assert.AreEqual ("ArrayOfChar", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfChar", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Char[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.Char[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (char[][]));
- Assert.AreEqual ("ArrayOfArrayOfChar", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfChar", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Char[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.Char[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (char[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfChar", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfChar", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Char[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.Char[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestXmlNodeTypeMapping ()
- {
- Type type = typeof (XmlNode);
-
- XmlTypeMapping tm = Map (type);
- Assert.AreEqual (string.Empty, tm.ElementName, "#A1");
- Assert.IsNull (tm.Namespace, "#A2");
- Assert.AreEqual ("XmlNode", tm.TypeName, "#A3");
- Assert.AreEqual ("System.Xml.XmlNode", tm.TypeFullName, "#A4");
-
- tm = Map (type, AnotherNamespace);
- Assert.AreEqual (string.Empty, tm.ElementName, "#B1");
- Assert.IsNull (tm.Namespace, "#B2");
- Assert.AreEqual ("XmlNode", tm.TypeName, "#B3");
- Assert.AreEqual ("System.Xml.XmlNode", tm.TypeFullName, "#B4");
-
- XmlRootAttribute root = new XmlRootAttribute ("somename");
- root.Namespace = SomeNamespace;
- tm = Map (type, root);
- Assert.AreEqual ("somename", tm.ElementName, "#C1");
- Assert.IsNull (tm.Namespace, "#C2");
- Assert.AreEqual ("XmlNode", tm.TypeName, "#C3");
- Assert.AreEqual ("System.Xml.XmlNode", tm.TypeFullName, "#C4");
-
- tm = Map (type, AnotherNamespace, root);
- Assert.AreEqual ("somename", tm.ElementName, "#D1");
- Assert.IsNull (tm.Namespace, "#D2");
- Assert.AreEqual ("XmlNode", tm.TypeName, "#D3");
- Assert.AreEqual ("System.Xml.XmlNode", tm.TypeFullName, "#D4");
-
- root.Namespace = null;
- tm = Map (type, root);
- Assert.AreEqual ("somename", tm.ElementName, "#E1");
- Assert.IsNull (tm.Namespace, "#E2");
- Assert.AreEqual ("XmlNode", tm.TypeName, "#E3");
- Assert.AreEqual ("System.Xml.XmlNode", tm.TypeFullName, "#E4");
-
- tm = Map (type, AnotherNamespace, root);
- Assert.AreEqual ("somename", tm.ElementName, "#F1");
- Assert.IsNull (tm.Namespace, "#F2");
- Assert.AreEqual ("XmlNode", tm.TypeName, "#F3");
- Assert.AreEqual ("System.Xml.XmlNode", tm.TypeFullName, "#F4");
+ AssertEquals("char", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("Char", tm.TypeName);
+ AssertEquals("System.Char", tm.TypeFullName);
}
[Test]
- [Category ("NotWorking")]
- public void TestXmlElementTypeMapping ()
- {
- Type type = typeof (XmlElement);
-
- XmlTypeMapping tm = Map (type);
- Assert.AreEqual (string.Empty, tm.ElementName, "#1");
- Assert.IsNull (tm.Namespace, "#2");
- Assert.AreEqual ("XmlElement", tm.TypeName, "#3");
- Assert.AreEqual ("System.Xml.XmlElement", tm.TypeFullName, "#4");
-
- tm = Map (type, AnotherNamespace);
- Assert.AreEqual (string.Empty, tm.ElementName, "#B1");
- Assert.IsNull (tm.Namespace, "#B2");
- Assert.AreEqual ("XmlElement", tm.TypeName, "#B3");
- Assert.AreEqual ("System.Xml.XmlElement", tm.TypeFullName, "#B4");
-
- XmlRootAttribute root = new XmlRootAttribute ("somename");
- root.Namespace = SomeNamespace;
- tm = Map (type, root);
- Assert.AreEqual ("somename", tm.ElementName, "#C1");
- Assert.IsNull (tm.Namespace, "#C2");
- Assert.AreEqual ("XmlElement", tm.TypeName, "#C3");
- Assert.AreEqual ("System.Xml.XmlElement", tm.TypeFullName, "#C4");
-
- tm = Map (type, AnotherNamespace, root);
- Assert.AreEqual ("somename", tm.ElementName, "#D1");
- Assert.IsNull (tm.Namespace, "#D2");
- Assert.AreEqual ("XmlElement", tm.TypeName, "#D3");
- Assert.AreEqual ("System.Xml.XmlElement", tm.TypeFullName, "#D4");
-
- root.Namespace = null;
- tm = Map (type, root);
- Assert.AreEqual ("somename", tm.ElementName, "#E1");
- Assert.IsNull (tm.Namespace, "#E2");
- Assert.AreEqual ("XmlElement", tm.TypeName, "#E3");
- Assert.AreEqual ("System.Xml.XmlElement", tm.TypeFullName, "#E4");
-
- tm = Map (type, AnotherNamespace, root);
- Assert.AreEqual ("somename", tm.ElementName, "#F1");
- Assert.IsNull (tm.Namespace, "#F2");
- Assert.AreEqual ("XmlElement", tm.TypeName, "#F3");
- Assert.AreEqual ("System.Xml.XmlElement", tm.TypeFullName, "#F4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestXmlNotationTypeMapping ()
- {
- Type type = typeof (XmlNotation);
-
- XmlTypeMapping tm = Map (type);
- Assert.AreEqual (string.Empty, tm.ElementName, "#1");
- Assert.IsNull (tm.Namespace, "#2");
- Assert.AreEqual ("XmlNotation", tm.TypeName, "#3");
- Assert.AreEqual ("System.Xml.XmlNotation", tm.TypeFullName, "#4");
-
- tm = Map (type, AnotherNamespace);
- Assert.AreEqual (string.Empty, tm.ElementName, "#B1");
- Assert.IsNull (tm.Namespace, "#B2");
- Assert.AreEqual ("XmlNotation", tm.TypeName, "#B3");
- Assert.AreEqual ("System.Xml.XmlNotation", tm.TypeFullName, "#B4");
-
- XmlRootAttribute root = new XmlRootAttribute ("somename");
- root.Namespace = SomeNamespace;
- tm = Map (type, root);
- Assert.AreEqual ("somename", tm.ElementName, "#C1");
- Assert.IsNull (tm.Namespace, "#C2");
- Assert.AreEqual ("XmlNotation", tm.TypeName, "#C3");
- Assert.AreEqual ("System.Xml.XmlNotation", tm.TypeFullName, "#C4");
-
- tm = Map (type, AnotherNamespace, root);
- Assert.AreEqual ("somename", tm.ElementName, "#D1");
- Assert.IsNull (tm.Namespace, "#D2");
- Assert.AreEqual ("XmlNotation", tm.TypeName, "#D3");
- Assert.AreEqual ("System.Xml.XmlNotation", tm.TypeFullName, "#D4");
-
- root.Namespace = null;
- tm = Map (type, root);
- Assert.AreEqual ("somename", tm.ElementName, "#E1");
- Assert.IsNull (tm.Namespace, "#E2");
- Assert.AreEqual ("XmlNotation", tm.TypeName, "#E3");
- Assert.AreEqual ("System.Xml.XmlNotation", tm.TypeFullName, "#E4");
-
- tm = Map (type, AnotherNamespace, root);
- Assert.AreEqual ("somename", tm.ElementName, "#F1");
- Assert.IsNull (tm.Namespace, "#F2");
- Assert.AreEqual ("XmlNotation", tm.TypeName, "#F3");
- Assert.AreEqual ("System.Xml.XmlNotation", tm.TypeFullName, "#F4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestXmlSerializableTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (Employee));
- Assert.AreEqual ("Employee", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("Employee", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.Employee", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestXmlSerializableTypeMapping_Array ()
+ public void TestNullTypeMapping()
{
- XmlTypeMapping tm = Map (typeof (Employee[]));
- Assert.AreEqual ("ArrayOfEmployee", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfEmployee", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("Employee[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.Employee[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (Employee[][]));
- Assert.AreEqual ("ArrayOfArrayOfEmployee", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfEmployee", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("Employee[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.Employee[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (Employee[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfEmployee", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfEmployee", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("Employee[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.Employee[][][]", tm.TypeFullName, "#C4");
+ try
+ {
+ XmlTypeMapping tm = Map(null);
+ Fail("Should not be able to map a null type");
+ }
+ catch (Exception)
+ {
+ }
}
+
[Test]
- [Category ("NotWorking")]
- public void TestClassTypeMapping_NestedStruct ()
+ public void TestInvalidClassTypeMapping()
{
- XmlTypeMapping tm = Map (typeof (NestedStruct));
- Assert.AreEqual ("NestedStruct", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("NestedStruct", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.NestedStruct", tm.TypeFullName, "#4");
+ try
+ {
+ // this can use any class
+ XmlTypeMapping tm = Map(typeof(SimpleClass));
+ Fail("Should not be able to this type");
+ }
+ catch (Exception)
+ {
+ }
}
+ /*
[Test]
- [ExpectedException (typeof (ArgumentNullException))]
- public void TestNullTypeMapping()
+ public void TestTypeMapping()
{
- Map(null);
+ XmlTypeMapping tm = Map(typeof());
+ AssertEquals(tm.ElementName, "");
+ AssertEquals(tm.Namespace, "");
+ AssertEquals(tm.TypeName, "");
+ AssertEquals(tm.TypeFullName, "System.");
}
-
+ */
+
[Test]
public void TestIntTypeMappingWithDefaultNamespaces()
{
XmlTypeMapping tm = Map(typeof(int), SomeNamespace);
- Assert.AreEqual ("int", tm.ElementName, "#1");
- Assert.AreEqual (SomeNamespace, tm.Namespace, "#2");
- Assert.AreEqual ("Int32", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int32", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestStructTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (TimeSpan));
- Assert.AreEqual ("TimeSpan", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("TimeSpan", tm.TypeName, "#3");
- Assert.AreEqual ("System.TimeSpan", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestStructTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (TimeSpan[]));
- Assert.AreEqual ("ArrayOfTimeSpan", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfTimeSpan", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("TimeSpan[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.TimeSpan[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (TimeSpan[][]));
- Assert.AreEqual ("ArrayOfArrayOfTimeSpan", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfTimeSpan", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("TimeSpan[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.TimeSpan[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (TimeSpan[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfTimeSpan", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfTimeSpan", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("TimeSpan[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.TimeSpan[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestEnumTypeMapping ()
- {
- XmlTypeMapping tm = Map (typeof (AttributeTargets));
- Assert.AreEqual ("AttributeTargets", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("AttributeTargets", tm.TypeName, "#3");
- Assert.AreEqual ("System.AttributeTargets", tm.TypeFullName, "#4");
+ AssertEquals("int", tm.ElementName);
+ AssertEquals(SomeNamespace, tm.Namespace);
+ AssertEquals("Int32", tm.TypeName);
+ AssertEquals("System.Int32", tm.TypeFullName);
}
[Test]
- [Category ("NotWorking")]
- public void TestEnumTypeMapping_Array ()
+ public void TestValidClassTypeMapping()
{
- XmlTypeMapping tm = Map (typeof (AttributeTargets[]));
- Assert.AreEqual ("ArrayOfAttributeTargets", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfAttributeTargets", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("AttributeTargets[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("System.AttributeTargets[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (AttributeTargets[][]));
- Assert.AreEqual ("ArrayOfArrayOfAttributeTargets", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfAttributeTargets", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("AttributeTargets[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("System.AttributeTargets[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (AttributeTargets[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAttributeTargets", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAttributeTargets", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("AttributeTargets[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("System.AttributeTargets[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- public void TestClassTypeMapping()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClass));
- Assert.AreEqual ("SimpleClass", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClass", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass", tm.TypeFullName, "#4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestClassTypeMapping_Array ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClass[]));
- Assert.AreEqual ("ArrayOfSimpleClass", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClass", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClass[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClass[][]));
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClass[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClass[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClass[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.Xml.TestClasses.SimpleClass[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_SimpleClass ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassEnumerable));
- Assert.AreEqual ("ArrayOfSimpleClass", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassEnumerable", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerable", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassEnumerable[]));
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassEnumerable", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassEnumerable[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerable[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassEnumerable[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassEnumerable", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassEnumerable[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerable[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassEnumerable[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassEnumerable", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassEnumerable[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerable[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_Object ()
- {
- XmlTypeMapping tm = Map (typeof (ObjectEnumerable));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("ObjectEnumerable", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectEnumerable", tm.TypeFullName, "#4");
-
- tm = Map (typeof (ObjectEnumerable[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfObjectEnumerable", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("ObjectEnumerable[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectEnumerable[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (ObjectEnumerable[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfObjectEnumerable", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("ObjectEnumerable[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectEnumerable[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (ObjectEnumerable[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfObjectEnumerable", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("ObjectEnumerable[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectEnumerable[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_IEnumarable_Object_NoMatchingAddMethod ()
- {
- Map (typeof (ObjectEnumerableNoMatchingAddMethod));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_IEnumarable_Object_NoMatchingAddMethod_Array ()
- {
- Map (typeof (ObjectEnumerableNoMatchingAddMethod[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_SimpleClass_PrivateCurrent ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassEnumerablePrivateCurrent));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateCurrent", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateCurrent[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassEnumerablePrivateCurrent", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateCurrent[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateCurrent[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassEnumerablePrivateCurrent", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateCurrent[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateCurrent[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassEnumerablePrivateCurrent", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateCurrent[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateCurrent[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
-#if ONLY_1_1
- [Category ("NotDotNet")] // results in NullReferenceException in .NET 1.1 (SP1)
-#endif
- [Category ("NotWorking")]
- public void TypeMapping_IEnumerable_SimpleClass_PrivateGetEnumerator ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassEnumerablePrivateGetEnumerator[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassEnumerablePrivateGetEnumerator", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassEnumerablePrivateGetEnumerator[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassEnumerablePrivateGetEnumerator[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoMatchingAddMethod ()
- {
- Map (typeof (ObjectCollectionNoMatchingAddMethod));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoMatchingAddMethod_Array ()
- {
- Map (typeof (ObjectCollectionNoMatchingAddMethod[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoMatchingAddMethod ()
- {
- Map (typeof (SimpleClassCollectionNoMatchingAddMethod));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoMatchingAddMethod_Array ()
- {
- Map (typeof (SimpleClassCollectionNoMatchingAddMethod[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_ICollection_SimpleClass ()
- {
- XmlTypeMapping tm = Map (typeof (SimpleClassCollection));
- Assert.AreEqual ("ArrayOfSimpleClass", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("SimpleClassCollection", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassCollection", tm.TypeFullName, "#4");
-
- tm = Map (typeof (SimpleClassCollection[]));
- Assert.AreEqual ("ArrayOfArrayOfSimpleClass", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfSimpleClassCollection", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("SimpleClassCollection[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassCollection[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (SimpleClassCollection[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfSimpleClassCollection", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("SimpleClassCollection[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassCollection[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (SimpleClassCollection[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfSimpleClass", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfSimpleClassCollection", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("SimpleClassCollection[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.SimpleClassCollection[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TypeMapping_ICollection_Object ()
- {
- XmlTypeMapping tm = Map (typeof (ObjectCollection));
- Assert.AreEqual ("ArrayOfAnyType", tm.ElementName, "#1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#2");
- Assert.AreEqual ("ObjectCollection", tm.TypeName, "#3");
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectCollection", tm.TypeFullName, "#4");
-
- tm = Map (typeof (ObjectCollection[]));
- Assert.AreEqual ("ArrayOfArrayOfAnyType", tm.ElementName, "#A1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#A2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfObjectCollection", tm.TypeName, "#A3");
-#else
- Assert.AreEqual ("ObjectCollection[]", tm.TypeName, "#A3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectCollection[]", tm.TypeFullName, "#A4");
-
- tm = Map (typeof (ObjectCollection[][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#B1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#B2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfObjectCollection", tm.TypeName, "#B3");
-#else
- Assert.AreEqual ("ObjectCollection[][]", tm.TypeName, "#B3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectCollection[][]", tm.TypeFullName, "#B4");
-
- tm = Map (typeof (ObjectCollection[][][]));
- Assert.AreEqual ("ArrayOfArrayOfArrayOfArrayOfAnyType", tm.ElementName, "#C1");
- Assert.AreEqual (string.Empty, tm.Namespace, "#C2");
-#if NET_2_0
- Assert.AreEqual ("ArrayOfArrayOfArrayOfObjectCollection", tm.TypeName, "#C3");
-#else
- Assert.AreEqual ("ObjectCollection[][][]", tm.TypeName, "#C3");
-#endif
- Assert.AreEqual ("MonoTests.System.XmlSerialization.XmlReflectionImporterTests.ObjectCollection[][][]", tm.TypeFullName, "#C4");
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoIntIndexer ()
- {
- Map (typeof (ObjectCollectionNoIntIndexer));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_Object_NoIntIndexer_Array ()
- {
- Map (typeof (ObjectCollectionNoIntIndexer[]));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoIntIndexer ()
- {
- Map (typeof (SimpleClassCollectionNoIntIndexer));
- }
-
- [Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))]
- public void TypeMapping_ICollection_SimpleClass_NoIntIndexer_Array ()
- {
- Map (typeof (SimpleClassCollectionNoIntIndexer[]));
+ Type type = typeof(SimpleClass);
+ XmlAttributes attrs = new XmlAttributes();
+ XmlAttributeOverrides overrides = new XmlAttributeOverrides();
+ overrides.Add(typeof(SimpleClass), attrs);
+
+ XmlTypeMapping tm = Map(type, overrides);
+ AssertEquals("SimpleClass", tm.ElementName);
+ AssertEquals("", tm.Namespace);
+ AssertEquals("SimpleClass", tm.TypeName);
+ AssertEquals("MonoTests.System.Xml.TestClasses.SimpleClass", tm.TypeFullName);
}
+
[Test]
[Category ("NotWorking")]
public void TestImportMembersMapping()
@@ -1221,7 +378,7 @@ namespace MonoTests.System.XmlSerialization
try
{
mm = MembersMap(type, overrides, members, true);
- Assert.Fail("Should not be able to fetch an empty XmlMembersMapping");
+ Fail("Should not be able to fetch an empty XmlMembersMapping");
}
catch (Exception)
{
@@ -1239,13 +396,13 @@ namespace MonoTests.System.XmlSerialization
Equals(mm.Count, 1);
XmlMemberMapping smm = mm[0];
- Assert.IsFalse (smm.Any, "#1");
- Assert.AreEqual ("something", smm.ElementName, "#2");
- Assert.AreEqual ("something", smm.MemberName, "#3");
- Assert.IsNull (smm.Namespace, "#4");
- Assert.AreEqual ("System.String", smm.TypeFullName, "#5");
- Assert.AreEqual ("string", smm.TypeName, "#6");
- Assert.IsNull (smm.TypeNamespace, "#7");
+ AssertEquals(false, smm.Any);
+ AssertEquals("something", smm.ElementName);
+ AssertEquals("something", smm.MemberName);
+ AssertEquals(null, smm.Namespace);
+ AssertEquals("System.String", smm.TypeFullName);
+ AssertEquals("string", smm.TypeName);
+ AssertEquals(null, smm.TypeNamespace);
rm = new XmlReflectionMember();
@@ -1256,7 +413,7 @@ namespace MonoTests.System.XmlSerialization
members[0] = rm;
mm = MembersMap(type, overrides, members, false);
- Assert.AreEqual (1, mm.Count, "#8");
+ Equals(mm.Count, 0);
}
[Test]
@@ -1267,10 +424,10 @@ namespace MonoTests.System.XmlSerialization
root.Namespace = TheNamespace;
XmlTypeMapping tm = Map(typeof(int), root);
- Assert.AreEqual ("price", tm.ElementName, "#1");
- Assert.AreEqual (TheNamespace, tm.Namespace, "#2");
- Assert.AreEqual ("Int32", tm.TypeName, "#3");
- Assert.AreEqual ("System.Int32", tm.TypeFullName, "#4");
+ AssertEquals("price", tm.ElementName);
+ AssertEquals(TheNamespace, tm.Namespace);
+ AssertEquals("Int32", tm.TypeName);
+ AssertEquals("System.Int32", tm.TypeFullName);
}
[Test]
@@ -1279,472 +436,6 @@ namespace MonoTests.System.XmlSerialization
{
new XmlSerializer (typeof(WrongChoices));
}
-
- public class Employee : IXmlSerializable
- {
- private string _firstName;
- private string _lastName;
- private string _address;
-
- public XmlSchema GetSchema ()
- {
- return null;
- }
-
- public void WriteXml (XmlWriter writer)
- {
- writer.WriteStartElement ("employee", "urn:devx-com");
- writer.WriteAttributeString ("firstName", _firstName);
- writer.WriteAttributeString ("lastName", _lastName);
- writer.WriteAttributeString ("address", _address);
- writer.WriteEndElement ();
- }
-
- public void ReadXml (XmlReader reader)
- {
- XmlNodeType type = reader.MoveToContent ();
- if (type == XmlNodeType.Element && reader.LocalName == "employee") {
- _firstName = reader["firstName"];
- _lastName = reader["lastName"];
- _address = reader["address"];
- }
- }
- }
-
- public class NestedStruct
- {
- public TimeSpan Period = TimeSpan.MaxValue;
- }
-
- public class ObjectEnumerable : IEnumerable
- {
- public void Add (int value)
- {
- }
-
- public void Add (object value)
- {
- }
-
- public IEnumerator GetEnumerator ()
- {
- return new ArrayList ().GetEnumerator ();
- }
- }
-
- public class SimpleClassEnumerable : IEnumerable
- {
- public void Add (int value)
- {
- }
-
- public void Add (object value)
- {
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (new ArrayList ());
- }
- }
-
- public class SimpleClassEnumerablePrivateGetEnumerator : IEnumerable
- {
- public void Add (object value)
- {
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return new ArrayList ().GetEnumerator ();
- }
- }
-
- public class SimpleClassEnumerablePrivateCurrent : IEnumerable
- {
- public void Add (object value)
- {
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public NoCurrentEnumerator GetEnumerator ()
- {
- return new NoCurrentEnumerator (new ArrayList ());
- }
- }
-
- // GetEnumerator().Current returns object, but there's no corresponding
- // Add (System.Object) method
- public class ObjectEnumerableNoMatchingAddMethod : IEnumerable
- {
- public void Add (int value)
- {
- }
-
- public IEnumerator GetEnumerator ()
- {
- return new ArrayList ().GetEnumerator ();
- }
- }
-
- // GetEnumerator().Current returns SimpleClass, but there's no
- // corresponding Add (SimpleClass) method
- public class SimpleClassCollectionNoMatchingAddMethod : ICollection
- {
- public SimpleClass this[int index]
- {
- get
- {
- return (SimpleClass) _list[index];
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (_list);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- // GetEnumerator().Current returns object, but there's no corresponding
- // Add (System.Object) method
- public class ObjectCollectionNoMatchingAddMethod : ICollection
- {
- public object this[int index]
- {
- get
- {
- return _list[index];
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _list.GetEnumerator ();
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- // Does not have int indexer.
- public class SimpleClassCollectionNoIntIndexer : ICollection
- {
- public SimpleClass this[string name]
- {
- get
- {
- return new SimpleClass ();
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (_list);
- }
-
- public void Add (SimpleClass value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- // Does not have int indexer.
- public class ObjectCollectionNoIntIndexer : ICollection
- {
- public object this[string name]
- {
- get
- {
- return new SimpleClass ();
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _list.GetEnumerator ();
- }
-
- public void Add (object value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- public class SimpleClassCollection : ICollection
- {
- public SimpleClass this[int index]
- {
- get
- {
- return (SimpleClass) _list[index];
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- IEnumerator IEnumerable.GetEnumerator ()
- {
- return GetEnumerator ();
- }
-
- public SimpleClassEnumerator GetEnumerator ()
- {
- return new SimpleClassEnumerator (_list);
- }
-
- public void Add (SimpleClass value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- public class ObjectCollection : ICollection
- {
- public object this[int name]
- {
- get
- {
- return new SimpleClass ();
- }
- }
-
- public int Count
- {
- get { return _list.Count; }
- }
-
- public bool IsSynchronized
- {
- get { return _list.IsSynchronized; }
- }
-
- public object SyncRoot
- {
- get { return _list.SyncRoot; }
- }
-
- public void CopyTo (Array array, int index)
- {
- _list.CopyTo (array, index);
- }
-
- public IEnumerator GetEnumerator ()
- {
- return _list.GetEnumerator ();
- }
-
- public void Add (object value)
- {
- _list.Add (value);
- }
-
- private ArrayList _list = new ArrayList ();
- }
-
- public class SimpleClassEnumerator : IEnumerator
- {
- internal SimpleClassEnumerator (ArrayList arguments)
- {
- IEnumerable temp = (IEnumerable) (arguments);
- _baseEnumerator = temp.GetEnumerator ();
- }
- public SimpleClass Current
- {
- get { return (SimpleClass) _baseEnumerator.Current; }
- }
-
- object IEnumerator.Current
- {
- get { return _baseEnumerator.Current; }
- }
-
- public bool MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- bool IEnumerator.MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- public void Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- void IEnumerator.Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- private IEnumerator _baseEnumerator;
- }
-
- public class NoCurrentEnumerator : IEnumerator
- {
- internal NoCurrentEnumerator (ArrayList arguments)
- {
- IEnumerable temp = (IEnumerable) (arguments);
- _baseEnumerator = temp.GetEnumerator ();
- }
-
- object IEnumerator.Current
- {
- get { return _baseEnumerator.Current; }
- }
-
- public bool MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- bool IEnumerator.MoveNext ()
- {
- return _baseEnumerator.MoveNext ();
- }
-
- public void Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- void IEnumerator.Reset ()
- {
- _baseEnumerator.Reset ();
- }
-
- private IEnumerator _baseEnumerator;
- }
}
}
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaExporterTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaExporterTests.cs
index 74007cd7ba0..0f225fc4f7b 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaExporterTests.cs
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaExporterTests.cs
@@ -111,18 +111,6 @@ namespace MonoTests.System.XmlSerialization
}
[Test]
- [Category ("NotWorking")]
- [ExpectedException (typeof (InvalidOperationException))] // Cannot use wildcards at the top level of a schema.
- public void ExportClass_XmlElement ()
- {
- XmlReflectionImporter ri = new XmlReflectionImporter ("NS1");
- XmlSchemas schemas = new XmlSchemas ();
- XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (XmlElement));
- sx.ExportTypeMapping (tm);
- }
-
- [Test]
[Category ("NotWorking")] // on Mono, element is output before type
public void ExportClass_Array ()
{
@@ -166,7 +154,7 @@ namespace MonoTests.System.XmlSerialization
[Category ("NotWorking")] // on Mono, element is output before type
public void ExportEnum ()
{
- XmlReflectionImporter ri = new XmlReflectionImporter ("NSEnumDefaultValue");
+ XmlReflectionImporter ri = new XmlReflectionImporter ("NS2");
XmlSchemas schemas = new XmlSchemas ();
XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
XmlTypeMapping tm = ri.ImportTypeMapping (typeof (EnumDefaultValue));
@@ -179,7 +167,7 @@ namespace MonoTests.System.XmlSerialization
Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
"<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
- "<xs:schema xmlns:tns=\"NSEnumDefaultValue\" elementFormDefault=\"qualified\" targetNamespace=\"NSEnumDefaultValue\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
+ "<xs:schema xmlns:tns=\"NS2\" elementFormDefault=\"qualified\" targetNamespace=\"NS2\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
" <xs:element name=\"EnumDefaultValue\" type=\"tns:EnumDefaultValue\" />{0}" +
" <xs:simpleType name=\"EnumDefaultValue\">{0}" +
" <xs:list>{0}" +
@@ -193,30 +181,6 @@ namespace MonoTests.System.XmlSerialization
" </xs:list>{0}" +
" </xs:simpleType>{0}" +
"</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
-
- ri = new XmlReflectionImporter ("NSEnumDefaultValueNF");
- schemas = new XmlSchemas ();
- sx = new XmlSchemaExporter (schemas);
- tm = ri.ImportTypeMapping (typeof (EnumDefaultValueNF));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#3");
-
- sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
- "<xs:schema xmlns:tns=\"NSEnumDefaultValueNF\" elementFormDefault=\"qualified\" targetNamespace=\"NSEnumDefaultValueNF\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
- " <xs:element name=\"EnumDefaultValueNF\" type=\"tns:EnumDefaultValueNF\" />{0}" +
- " <xs:simpleType name=\"EnumDefaultValueNF\">{0}" +
- " <xs:restriction base=\"xs:string\">{0}" +
- " <xs:enumeration value=\"e1\" />{0}" +
- " <xs:enumeration value=\"e2\" />{0}" +
- " <xs:enumeration value=\"e3\" />{0}" +
- " </xs:restriction>{0}" +
- " </xs:simpleType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#4");
}
[Test]
@@ -328,28 +292,6 @@ namespace MonoTests.System.XmlSerialization
[Test]
[Category ("NotWorking")] // bug #77117
- public void ExportXsdPrimitive_Object ()
- {
- XmlReflectionImporter ri = new XmlReflectionImporter ("NSAnyType");
- XmlSchemas schemas = new XmlSchemas ();
- XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (object));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
- "<xs:schema xmlns:tns=\"NSAnyType\" elementFormDefault=\"qualified\" targetNamespace=\"NSAnyType\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
- " <xs:element name=\"anyType\" nillable=\"true\" />{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
- [Test]
- [Category ("NotWorking")] // bug #77117
public void ExportXsdPrimitive_ByteArray ()
{
XmlReflectionImporter ri = new XmlReflectionImporter ("ByteArray");
@@ -423,33 +365,6 @@ namespace MonoTests.System.XmlSerialization
[Test]
[Category ("NotWorking")] // bug #77117
- public void ExportXsdPrimitive_Object_Arrays ()
- {
- XmlReflectionImporter ri = new XmlReflectionImporter ("NSArrayOfAnyType");
- XmlSchemas schemas = new XmlSchemas ();
- XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (typeof (object[]));
- sx.ExportTypeMapping (tm);
-
- Assert.AreEqual (1, schemas.Count, "#1");
-
- StringWriter sw = new StringWriter ();
- schemas[0].Write (sw);
-
- Assert.AreEqual (string.Format (CultureInfo.InvariantCulture,
- "<?xml version=\"1.0\" encoding=\"utf-16\"?>{0}" +
- "<xs:schema xmlns:tns=\"NSArrayOfAnyType\" elementFormDefault=\"qualified\" targetNamespace=\"NSArrayOfAnyType\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">{0}" +
- " <xs:element name=\"ArrayOfAnyType\" nillable=\"true\" type=\"tns:ArrayOfAnyType\" />{0}" +
- " <xs:complexType name=\"ArrayOfAnyType\">{0}" +
- " <xs:sequence>{0}" +
- " <xs:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"anyType\" nillable=\"true\" />{0}" +
- " </xs:sequence>{0}" +
- " </xs:complexType>{0}" +
- "</xs:schema>", Environment.NewLine), sw.ToString (), "#2");
- }
-
- [Test]
- [Category ("NotWorking")] // bug #77117
public void ExportNonXsdPrimitive_Guid ()
{
XmlReflectionImporter ri = new XmlReflectionImporter ("NSPrimGuid");
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaImporterTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaImporterTests.cs
deleted file mode 100644
index 4a82fa901bb..00000000000
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSchemaImporterTests.cs
+++ /dev/null
@@ -1,455 +0,0 @@
-//
-// System.Xml.Serialization.XmlSchemaImporterTests
-//
-// Author:
-// Gert Driesen (drieseng@users.sourceforge.net)
-//
-// (C) 2005 Novell
-//
-
-using System;
-using System.Collections;
-using System.Globalization;
-using System.IO;
-using System.Xml;
-using System.Xml.Schema;
-using System.Xml.Serialization;
-
-using NUnit.Framework;
-
-using MonoTests.System.Xml.TestClasses;
-
-namespace MonoTests.System.XmlSerialization
-{
- [TestFixture]
- public class XmlSchemaImporterTests
- {
- [Test]
- [Category ("NotWorking")]
- public void ImportTypeMapping_Struct ()
- {
- XmlSchemas schemas = ExportType (typeof (TimeSpan));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("TimeSpan", map.ElementName, "#3");
- Assert.AreEqual ("NSTimeSpan", map.Namespace, "#4");
- Assert.AreEqual ("TimeSpan", map.TypeFullName, "#5");
- Assert.AreEqual ("TimeSpan", map.TypeName, "#6");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ImportTypeMapping_XsdPrimitive_AnyType ()
- {
- XmlSchemas schemas = ExportType (typeof (object));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("anyType", map.ElementName, "#3");
- Assert.AreEqual ("NSObject", map.Namespace, "#4");
- Assert.AreEqual ("System.Object", map.TypeFullName, "#5");
- Assert.AreEqual ("Object", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Boolean ()
- {
- XmlSchemas schemas = ExportType (typeof (bool));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("boolean", map.ElementName, "#3");
- Assert.AreEqual ("NSBoolean", map.Namespace, "#4");
- Assert.AreEqual ("System.Boolean", map.TypeFullName, "#5");
- Assert.AreEqual ("Boolean", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Short ()
- {
- XmlSchemas schemas = ExportType (typeof (short));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("short", map.ElementName, "#3");
- Assert.AreEqual ("NSInt16", map.Namespace, "#4");
- Assert.AreEqual ("System.Int16", map.TypeFullName, "#5");
- Assert.AreEqual ("Int16", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_UnsignedShort ()
- {
- XmlSchemas schemas = ExportType (typeof (ushort));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("unsignedShort", map.ElementName, "#3");
- Assert.AreEqual ("NSUInt16", map.Namespace, "#4");
- Assert.AreEqual ("System.UInt16", map.TypeFullName, "#5");
- Assert.AreEqual ("UInt16", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Int ()
- {
- XmlSchemas schemas = ExportType (typeof (int));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("int", map.ElementName, "#3");
- Assert.AreEqual ("NSInt32", map.Namespace, "#4");
- Assert.AreEqual ("System.Int32", map.TypeFullName, "#5");
- Assert.AreEqual ("Int32", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_UnsignedInt ()
- {
- XmlSchemas schemas = ExportType (typeof (uint));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("unsignedInt", map.ElementName, "#3");
- Assert.AreEqual ("NSUInt32", map.Namespace, "#4");
- Assert.AreEqual ("System.UInt32", map.TypeFullName, "#5");
- Assert.AreEqual ("UInt32", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Long ()
- {
- XmlSchemas schemas = ExportType (typeof (long));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("long", map.ElementName, "#3");
- Assert.AreEqual ("NSInt64", map.Namespace, "#4");
- Assert.AreEqual ("System.Int64", map.TypeFullName, "#5");
- Assert.AreEqual ("Int64", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_UnsignedLong ()
- {
- XmlSchemas schemas = ExportType (typeof (ulong));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("unsignedLong", map.ElementName, "#3");
- Assert.AreEqual ("NSUInt64", map.Namespace, "#4");
- Assert.AreEqual ("System.UInt64", map.TypeFullName, "#5");
- Assert.AreEqual ("UInt64", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Float ()
- {
- XmlSchemas schemas = ExportType (typeof (float));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("float", map.ElementName, "#3");
- Assert.AreEqual ("NSSingle", map.Namespace, "#4");
- Assert.AreEqual ("System.Single", map.TypeFullName, "#5");
- Assert.AreEqual ("Single", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Double ()
- {
- XmlSchemas schemas = ExportType (typeof (double));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("double", map.ElementName, "#3");
- Assert.AreEqual ("NSDouble", map.Namespace, "#4");
- Assert.AreEqual ("System.Double", map.TypeFullName, "#5");
- Assert.AreEqual ("Double", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_DateTime ()
- {
- XmlSchemas schemas = ExportType (typeof (DateTime));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("dateTime", map.ElementName, "#3");
- Assert.AreEqual ("NSDateTime", map.Namespace, "#4");
- Assert.AreEqual ("System.DateTime", map.TypeFullName, "#5");
- Assert.AreEqual ("DateTime", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Decimal ()
- {
- XmlSchemas schemas = ExportType (typeof (decimal));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("decimal", map.ElementName, "#3");
- Assert.AreEqual ("NSDecimal", map.Namespace, "#4");
- Assert.AreEqual ("System.Decimal", map.TypeFullName, "#5");
- Assert.AreEqual ("Decimal", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_QName ()
- {
- XmlSchemas schemas = ExportType (typeof (XmlQualifiedName));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("QName", map.ElementName, "#3");
- Assert.AreEqual ("NSXmlQualifiedName", map.Namespace, "#4");
- Assert.AreEqual ("System.Xml.XmlQualifiedName", map.TypeFullName, "#5");
- Assert.AreEqual ("XmlQualifiedName", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_String ()
- {
- XmlSchemas schemas = ExportType (typeof (string));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("string", map.ElementName, "#3");
- Assert.AreEqual ("NSString", map.Namespace, "#4");
- Assert.AreEqual ("System.String", map.TypeFullName, "#5");
- Assert.AreEqual ("String", map.TypeName, "#6");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ImportTypeMapping_XsdPrimitive_Guid ()
- {
- XmlSchemas schemas = ExportType (typeof (Guid));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("int", map.ElementName, "#3");
- Assert.AreEqual ("NSInt32", map.Namespace, "#4");
- Assert.AreEqual ("System.Int32", map.TypeFullName, "#5");
- Assert.AreEqual ("Int32", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_UnsignedByte ()
- {
- XmlSchemas schemas = ExportType (typeof (byte));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("unsignedByte", map.ElementName, "#3");
- Assert.AreEqual ("NSByte", map.Namespace, "#4");
- Assert.AreEqual ("System.Byte", map.TypeFullName, "#5");
- Assert.AreEqual ("Byte", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Byte ()
- {
- XmlSchemas schemas = ExportType (typeof (sbyte));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("byte", map.ElementName, "#3");
- Assert.AreEqual ("NSSByte", map.Namespace, "#4");
- Assert.AreEqual ("System.SByte", map.TypeFullName, "#5");
- Assert.AreEqual ("SByte", map.TypeName, "#6");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ImportTypeMapping_XsdPrimitive_Char ()
- {
- XmlSchemas schemas = ExportType (typeof (char));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("int", map.ElementName, "#3");
- Assert.AreEqual ("NSChar", map.Namespace, "#4");
- Assert.AreEqual ("System.Int32", map.TypeFullName, "#5");
- Assert.AreEqual ("Int32", map.TypeName, "#6");
- }
-
- [Test]
- public void ImportTypeMapping_XsdPrimitive_Base64Binary ()
- {
- XmlSchemas schemas = ExportType (typeof (byte[]));
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#2");
- Assert.AreEqual ("base64Binary", map.ElementName, "#3");
- Assert.AreEqual ("NSByte[]", map.Namespace, "#4");
- Assert.AreEqual ("System.Byte[]", map.TypeFullName, "#5");
- Assert.AreEqual ("Byte[]", map.TypeName, "#6");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ImportTypeMapping_XsdPrimitive_Duration ()
- {
- string schemaFragment = "<?xml version=\"1.0\" encoding=\"utf-16\"?>" +
- "<xs:schema xmlns:tns=\"NSDuration\" elementFormDefault=\"qualified\" targetNamespace=\"NSDuration\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">" +
- " <xs:element name=\"duration\" type=\"xs:duration\" />" +
- "</xs:schema>";
-
- XmlSchemas schemas = new XmlSchemas ();
- schemas.Add (XmlSchema.Read (new StringReader (schemaFragment), null));
-
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlQualifiedName qname = (XmlQualifiedName) qnames[0];
-
- Assert.AreEqual ("duration", qname.Name, "#2");
- Assert.AreEqual ("NSDuration", qname.Namespace, "#3");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#4");
- Assert.AreEqual ("duration", map.ElementName, "#5");
- Assert.AreEqual ("NSDuration", map.Namespace, "#6");
- Assert.AreEqual ("System.String", map.TypeFullName, "#7");
- Assert.AreEqual ("String", map.TypeName, "#8");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void ImportTypeMapping_XsdPrimitive_Date ()
- {
- string schemaFragment = "<?xml version=\"1.0\" encoding=\"utf-16\"?>" +
- "<xs:schema xmlns:tns=\"NSDate\" elementFormDefault=\"qualified\" targetNamespace=\"NSDate\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">" +
- " <xs:element name=\"date\" type=\"xs:date\" />" +
- "</xs:schema>";
-
- XmlSchemas schemas = new XmlSchemas ();
- schemas.Add (XmlSchema.Read (new StringReader (schemaFragment), null));
-
- ArrayList qnames = GetXmlQualifiedNames (schemas);
- Assert.AreEqual (1, qnames.Count, "#1");
-
- XmlQualifiedName qname = (XmlQualifiedName) qnames[0];
-
- Assert.AreEqual ("date", qname.Name, "#2");
- Assert.AreEqual ("NSDate", qname.Namespace, "#3");
-
- XmlSchemaImporter importer = new XmlSchemaImporter (schemas);
- XmlTypeMapping map = importer.ImportTypeMapping ((XmlQualifiedName) qnames[0]);
-
- Assert.IsNotNull (map, "#4");
- Assert.AreEqual ("date", map.ElementName, "#5");
- Assert.AreEqual ("NSDate", map.Namespace, "#6");
- Assert.AreEqual ("System.DateTime", map.TypeFullName, "#7");
- Assert.AreEqual ("DateTime", map.TypeName, "#8");
- }
-
- private static XmlSchemas ExportType (Type type)
- {
- XmlReflectionImporter ri = new XmlReflectionImporter ("NS" + type.Name);
- XmlSchemas schemas = new XmlSchemas ();
- XmlSchemaExporter sx = new XmlSchemaExporter (schemas);
- XmlTypeMapping tm = ri.ImportTypeMapping (type);
- sx.ExportTypeMapping (tm);
- return schemas;
- }
-
- private static ArrayList GetXmlQualifiedNames (XmlSchemas schemas)
- {
- ArrayList qnames = new ArrayList ();
-
- foreach (XmlSchema schema in schemas) {
- if (!schema.IsCompiled) schema.Compile (null);
- foreach (XmlSchemaObject ob in schema.Items)
- if (ob is XmlSchemaElement)
- qnames.Add (((XmlSchemaElement) ob).QualifiedName);
- }
-
- return qnames;
- }
- }
-}
diff --git a/mcs/class/System.XML/Test/System.Xml/ChangeLog b/mcs/class/System.XML/Test/System.Xml/ChangeLog
index 7183721bd33..1e0736ea1fb 100644
--- a/mcs/class/System.XML/Test/System.Xml/ChangeLog
+++ b/mcs/class/System.XML/Test/System.Xml/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * XmlConvertTests.cs : added test for bug #77252.
-
2006-01-13 Atsushi Enomoto <atsushi@ximian.com>
* XsdValidatingReaderTests.cs : test from bug #77241.
diff --git a/mcs/class/System.XML/Test/System.Xml/XmlConvertTests.cs b/mcs/class/System.XML/Test/System.Xml/XmlConvertTests.cs
index a601250da45..e2cd05f4b09 100644
--- a/mcs/class/System.XML/Test/System.Xml/XmlConvertTests.cs
+++ b/mcs/class/System.XML/Test/System.Xml/XmlConvertTests.cs
@@ -342,16 +342,7 @@ namespace MonoTests.System.Xml
AssertEquals (33, dateString.Length);
AssertEquals ("2003-05-05T00:00:00.0000000", dateString.Substring (0, 27));
}
-
- [Test]
- public void FromTimeSpan ()
- {
- // bug #77252
- TimeSpan t1 = TimeSpan.FromTicks (
- TimeSpan.TicksPerSecond + 1);
- AssertEquals ("PT1.0000001S", XmlConvert.ToString (t1));
- }
-
+
[Test]
public void ToTimeSpan ()//not done
{
@@ -366,11 +357,6 @@ namespace MonoTests.System.Xml
XmlConvert.ToTimeSpan ("PT0.010S"));
AssertEquals ("#5", new TimeSpan (0, 0, 0, 0, 10),
XmlConvert.ToTimeSpan ("PT0.01S"));
-
- // bug #77252
- AssertEquals ("#6",
- TimeSpan.FromTicks (TimeSpan.TicksPerSecond + 1),
- XmlConvert.ToTimeSpan ("PT1.0000001S"));
}
[Test]
diff --git a/mcs/class/System.XML/Test/XmlFiles/xsd/ChangeLog b/mcs/class/System.XML/Test/XmlFiles/xsd/ChangeLog
index a645e2bff91..3fa61cb1cd3 100644
--- a/mcs/class/System.XML/Test/XmlFiles/xsd/ChangeLog
+++ b/mcs/class/System.XML/Test/XmlFiles/xsd/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
-
- * datatypesTest.xsd : missing required file for xsd tests.
-
2005-12-26 Atsushi Enomoto <atsushi@ximian.com>
* multi-schemaLocation.xml,
diff --git a/mcs/class/System/ChangeLog b/mcs/class/System/ChangeLog
index b1a6368e7c1..e99dd0c4585 100644
--- a/mcs/class/System/ChangeLog
+++ b/mcs/class/System/ChangeLog
@@ -1,12 +1,3 @@
-2005-01-13 John Luke <john.luke@gmail.com>
-
- * System_test.dll.sources: add System.Net.Mail.SmtpClient tests
-
-2006-01-09 Chris Toshok <toshok@ximian.com>
-
- * Makefile (LIB_MCS_FLAGS): if we're building net_2_0, define
- CONFIGURATION_2_0 to use the new System.Configuration api.
-
2006-01-02 Chris Toshok <toshok@ximian.com>
* Makefile: use an external alias (PrebuiltSystem) when building
diff --git a/mcs/class/System/Makefile b/mcs/class/System/Makefile
index be94478c729..4ff1d716981 100644
--- a/mcs/class/System/Makefile
+++ b/mcs/class/System/Makefile
@@ -31,7 +31,7 @@ CONFIGURATION_DEP := System.Configuration.dll
CONFIGURATION_DEP_FILE := $(wildcard ../lib/$(PROFILE)/$(CONFIGURATION_DEP))
CYCLIC_DEPS += $(SECURITY_DEP) $(CONFIGURATION_DEP)
CYCLIC_DEP_FILES += $(SECURITY_DEP_FILE) $(CONFIGURATION_DEP_FILE)
-LIB_MCS_FLAGS = -nowarn:618 -d:CONFIGURATION_2_0
+LIB_MCS_FLAGS = -nowarn:618
endif
EXTRA_DISTFILES = \
diff --git a/mcs/class/System/System.Configuration/ChangeLog b/mcs/class/System/System.Configuration/ChangeLog
index 3863e43f905..13dda585a9b 100644
--- a/mcs/class/System/System.Configuration/ChangeLog
+++ b/mcs/class/System/System.Configuration/ChangeLog
@@ -1,11 +1,3 @@
-2006-01-16 Chris Toshok <toshok@ximian.com>
-
- * ConfigurationSettings.cs (AppSettings): move back to a 1.x
- strategy in the 2.0 case. That is, don't hardcode the reference
- to ConfigurationManager.AppSettings (yet). Eventually we can move
- back to this code, once ConfigurationManager supports reading
- web.config for settings.
-
2006-01-03 Chris Toshok <toshok@ximian.com>
* ConfigurationSettings.cs (GetConfig): be nice to people using
diff --git a/mcs/class/System/System.Configuration/ConfigurationSettings.cs b/mcs/class/System/System.Configuration/ConfigurationSettings.cs
index 42b02b39de5..066d185f75c 100644
--- a/mcs/class/System/System.Configuration/ConfigurationSettings.cs
+++ b/mcs/class/System/System.Configuration/ConfigurationSettings.cs
@@ -65,28 +65,12 @@ namespace System.Configuration
#if NET_2_0
[Obsolete ("This property is obsolete. Please use System.Configuration.ConfigurationManager.AppSettings")]
#endif
-#if NET_2_0 && CONFIGURATION_2_0
- static NameValueCollection appSettingsCol;
-#endif
public static NameValueCollection AppSettings
{
get {
#if NET_2_0 && CONFIGURATION_2_0
#if CONFIGURATION_DEP
- lock (lockobj) {
- if (appSettingsCol == null) {
- AppSettingsSection appSettings = (AppSettingsSection)GetConfig ("appSettings");
-
- appSettingsCol = new NameValueCollection ();
-
- foreach (string key in appSettings.Settings.AllKeys) {
- KeyValueConfigurationElement ele = appSettings.Settings[key];
- appSettingsCol.Add (ele.Key, ele.Value);
- }
- }
- }
-
- return appSettingsCol;
+ return ConfigurationManager.AppSettings;
#else
return null;
#endif
@@ -109,9 +93,6 @@ namespace System.Configuration
lock (lockobj) {
IConfigurationSystem old = config;
config = newSystem;
-#if NET_2_0 && CONFIGURATION_2_0
- appSettingsCol = null;
-#endif
return old;
}
}
diff --git a/mcs/class/System/System.Diagnostics/ChangeLog b/mcs/class/System/System.Diagnostics/ChangeLog
index f8e0717e3d8..e63ff0a26ab 100644
--- a/mcs/class/System/System.Diagnostics/ChangeLog
+++ b/mcs/class/System/System.Diagnostics/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * ConsoleTraceListener.cs: New 2.0 class
-
2005-11-17 Dick Porter <dick@ximian.com>
* Process.cs: Split Start_common into Start_shell and
diff --git a/mcs/class/System/System.Diagnostics/ConsoleTraceListener.cs b/mcs/class/System/System.Diagnostics/ConsoleTraceListener.cs
deleted file mode 100644
index eb4143afed7..00000000000
--- a/mcs/class/System/System.Diagnostics/ConsoleTraceListener.cs
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.Diagnostics.ConsoleTraceListener.cs
-//
-// Authors:
-// Ben Maurer <bmaurer@andrew.cmu.edu>
-//
-// (C) 2006 Novell, Inc.
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-#if NET_2_0
-using System;
-
-namespace System.Diagnostics {
- public class ConsoleTraceListener : TextWriterTraceListener {
- public ConsoleTraceListener () : this (false) {}
- public ConsoleTraceListener (bool useErrorStream) :
- base (useErrorStream ? Console.Error : Console.Out) {}
- }
-}
-
-#endif \ No newline at end of file
diff --git a/mcs/class/System/System.Net.Mail/ChangeLog b/mcs/class/System/System.Net.Mail/ChangeLog
index 73bd5699ca0..2ac0e791d39 100644
--- a/mcs/class/System/System.Net.Mail/ChangeLog
+++ b/mcs/class/System/System.Net.Mail/ChangeLog
@@ -1,19 +1,3 @@
-2006-1-13 John Luke <john.luke@gmail.com>
-
- * MailMessage.cs: add [MonoTODO] for FormatException in ctor,
- throw ArugmentNullException's from the ctors,
- add internal BodyContentType property,
- change BodyEncoding to use BodyContentType,
- change IsBodyHtml to use BodyContentType,
- * SmtpClient.cs: set timeout initially to 100000,
- don't throw ArgumentOutOfRangeException when Timeout = 0,
- add [MonoTODO] for set_host, and throw Exceptions for it,
- add [MonoTODO] for UseDefaultCredentials,
- get messageContentType from the message,
- use "127.0.0.1" for Host and 25 for Port
- if host or port is not specified until reading
- them from the configuration files is done
-
2006-1-02 John Luke <john.luke@gmail.com>
* DeliveryNotificationOptions: fix value of Delay
diff --git a/mcs/class/System/System.Net.Mail/MailMessage.cs b/mcs/class/System/System.Net.Mail/MailMessage.cs
index c45ac4e9283..702940250c3 100644
--- a/mcs/class/System/System.Net.Mail/MailMessage.cs
+++ b/mcs/class/System/System.Net.Mail/MailMessage.cs
@@ -31,7 +31,6 @@
#if NET_2_0
using System.Collections.Specialized;
-using System.Globalization;
using System.Net.Mime;
using System.Text;
@@ -45,16 +44,17 @@ namespace System.Net.Mail {
AttachmentCollection attachments;
MailAddressCollection bcc;
string body;
+ bool isBodyHtml;
MailPriority priority;
MailAddress replyTo, sender;
DeliveryNotificationOptions deliveryNotificationOptions;
+ Encoding bodyEncoding;
MailAddressCollection cc;
MailAddress from;
NameValueCollection headers;
MailAddressCollection to;
string subject;
Encoding subjectEncoding;
- ContentType bodyContentType;
#endregion // Fields
@@ -64,12 +64,8 @@ namespace System.Net.Mail {
{
}
- [MonoTODO ("FormatException")]
public MailMessage (MailAddress from, MailAddress to)
{
- if (from == null || to == null)
- throw new ArgumentNullException ();
-
From = from;
this.to = new MailAddressCollection ();
@@ -87,15 +83,11 @@ namespace System.Net.Mail {
public MailMessage (string from, string to)
: this (new MailAddress (from), new MailAddress (to))
{
- if (from == null || to == null)
- throw new ArgumentNullException ();
}
public MailMessage (string from, string to, string subject, string body)
: this (new MailAddress (from), new MailAddress (to))
{
- if (from == null || to == null)
- throw new ArgumentNullException ();
Body = body;
Subject = subject;
}
@@ -121,17 +113,12 @@ namespace System.Net.Mail {
set { body = value; }
}
- internal ContentType BodyContentType {
- get {
- if (bodyContentType == null)
- bodyContentType = new ContentType ("text/plain; charset=us-ascii");
- return bodyContentType;
- }
- }
-
public Encoding BodyEncoding {
- get { return Encoding.GetEncoding (BodyContentType.CharSet); }
- set { BodyContentType.CharSet = value.WebName; }
+ get { return bodyEncoding; }
+ set {
+ bodyEncoding = value;
+ //bodyContentType.CharSet = value.WebName;
+ }
}
public MailAddressCollection CC {
@@ -153,13 +140,8 @@ namespace System.Net.Mail {
}
public bool IsBodyHtml {
- get { return String.Compare (BodyContentType.MediaType, "text/html", true, CultureInfo.InvariantCulture) == 0; }
- set {
- if (value)
- BodyContentType.MediaType = "text/html";
- else
- BodyContentType.MediaType = "text/plain";
- }
+ get { return isBodyHtml; }
+ set { isBodyHtml = value; }
}
public MailPriority Priority {
diff --git a/mcs/class/System/System.Net.Mail/SmtpClient.cs b/mcs/class/System/System.Net.Mail/SmtpClient.cs
index 3ff00f46ed7..ca261171a62 100644
--- a/mcs/class/System/System.Net.Mail/SmtpClient.cs
+++ b/mcs/class/System/System.Net.Mail/SmtpClient.cs
@@ -48,7 +48,7 @@ namespace System.Net.Mail {
string host;
int port;
- int timeout = 100000;
+ int timeout;
ICredentialsByHost credentials;
bool useDefaultCredentials;
string pickupDirectoryLocation;
@@ -83,19 +83,8 @@ namespace System.Net.Mail {
[MonoTODO ("Load default settings from configuration.")]
public SmtpClient (string host, int port)
{
- // FIXME: load from configuration
- if (String.IsNullOrEmpty (host))
- Host = "127.0.0.1";
- else
- Host = host;
-
- // FIXME: load from configuration
- if (port == 0)
- Port = 25;
- else
- Port = port;
-
- // FIXME: load credentials from configuration
+ Host = host;
+ Port = port;
}
#endregion // Constructors
@@ -124,14 +113,7 @@ namespace System.Net.Mail {
public string Host {
get { return host; }
- [MonoTODO ("Check to make sure an email is not being sent.")]
- set {
- if (value == null)
- throw new ArgumentNullException ();
- if (value.Length == 0)
- throw new ArgumentException ();
- host = value;
- }
+ set { host = value; }
}
public string PickupDirectoryLocation {
@@ -158,13 +140,12 @@ namespace System.Net.Mail {
get { return timeout; }
[MonoTODO ("Check to make sure an email is not being sent.")]
set {
- if (value < 0)
+ if (value <= 0)
throw new ArgumentOutOfRangeException ();
timeout = value;
}
}
- [MonoTODO]
public bool UseDefaultCredentials {
get { return useDefaultCredentials; }
set { useDefaultCredentials = value; }
@@ -282,8 +263,9 @@ namespace System.Net.Mail {
throw new SmtpException (status.StatusCode);
// Figure out the message content type
- ContentType messageContentType = message.BodyContentType;
+ ContentType messageContentType = new ContentType ("text/plain");
if (hasAttachments || hasAlternateViews) {
+ //messageContentType = new ContentType ();
messageContentType.Boundary = boundary;
if (hasAttachments)
diff --git a/mcs/class/System/System.Net.Mime/ChangeLog b/mcs/class/System/System.Net.Mime/ChangeLog
index 733cac06eda..1ee783a9a28 100644
--- a/mcs/class/System/System.Net.Mime/ChangeLog
+++ b/mcs/class/System/System.Net.Mime/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-13 John Luke <john.luke@gmail.com>
-
- * ContentDisposition.cs: use String.Compare instead
- of comparing .ToLower's
-
2006-01-02 John Luke <john.luke@gmail.com>
* ContentDisposition.cs: remove [MonoTODO]'s
diff --git a/mcs/class/System/System.Net.Mime/ContentDisposition.cs b/mcs/class/System/System.Net.Mime/ContentDisposition.cs
index a68fa9780bc..385deb27488 100644
--- a/mcs/class/System/System.Net.Mime/ContentDisposition.cs
+++ b/mcs/class/System/System.Net.Mime/ContentDisposition.cs
@@ -35,7 +35,6 @@
using System.Text;
using System.Collections;
using System.Collections.Specialized;
-using System.Globalization;
namespace System.Net.Mime {
public class ContentDisposition
@@ -130,7 +129,7 @@ namespace System.Net.Mime {
}
public bool Inline {
- get { return String.Compare (dispositionType, DispositionTypeNames.Inline, true, CultureInfo.InvariantCulture) == 0; }
+ get { return dispositionType.ToLower () == DispositionTypeNames.Inline.ToLower (); }
set {
if (value)
dispositionType = DispositionTypeNames.Inline;
diff --git a/mcs/class/System/System.Net/ListenerPrefix.cs b/mcs/class/System/System.Net/ListenerPrefix.cs
index 6d336a9fe85..18ebe4d0a20 100644
--- a/mcs/class/System/System.Net/ListenerPrefix.cs
+++ b/mcs/class/System/System.Net/ListenerPrefix.cs
@@ -3,7 +3,6 @@
//
// Author:
// Gonzalo Paniagua Javier (gonzalo@novell.com)
-// Oleg Mihailik (mihailik gmail co_m)
//
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
//
diff --git a/mcs/class/System/System.dll.sources b/mcs/class/System/System.dll.sources
index 2782d80584e..7c79d217e1d 100644
--- a/mcs/class/System/System.dll.sources
+++ b/mcs/class/System/System.dll.sources
@@ -54,8 +54,8 @@ System.CodeDom/CodeDefaultValueExpression.cs
System.CodeDom/CodeDelegateCreateExpression.cs
System.CodeDom/CodeDelegateInvokeExpression.cs
System.CodeDom/CodeDirectionExpression.cs
-System.CodeDom/CodeDirectiveCollection.cs
System.CodeDom/CodeDirective.cs
+System.CodeDom/CodeDirectiveCollection.cs
System.CodeDom/CodeEntryPointMethod.cs
System.CodeDom/CodeEventReferenceExpression.cs
System.CodeDom/CodeExpressionCollection.cs
@@ -104,8 +104,8 @@ System.CodeDom/CodeTypeDelegate.cs
System.CodeDom/CodeTypeMemberCollection.cs
System.CodeDom/CodeTypeMember.cs
System.CodeDom/CodeTypeOfExpression.cs
-System.CodeDom/CodeTypeParameterCollection.cs
System.CodeDom/CodeTypeParameter.cs
+System.CodeDom/CodeTypeParameterCollection.cs
System.CodeDom/CodeTypeReferenceCollection.cs
System.CodeDom/CodeTypeReference.cs
System.CodeDom/CodeTypeReferenceExpression.cs
@@ -134,11 +134,11 @@ System.CodeDom.Compiler/LanguageOptions.cs
System.CodeDom.Compiler/TempFileCollection.cs
System.CodeDom/FieldDirection.cs
System.CodeDom/MemberAttributes.cs
+System.Collections.Generic/Queue.cs
+System.Collections.Generic/Stack.cs
System.Collections.Generic/LinkedList.cs
System.Collections.Generic/LinkedListNode.cs
-System.Collections.Generic/Queue.cs
System.Collections.Generic/SortedList.cs
-System.Collections.Generic/Stack.cs
System.Collections.Specialized/BitVector32.cs
System.Collections.Specialized/CollectionsUtil.cs
System.Collections.Specialized/HybridDictionary.cs
@@ -151,8 +151,6 @@ System.Collections.Specialized/ProcessStringDictionary.cs
System.Collections.Specialized/StringCollection.cs
System.Collections.Specialized/StringDictionary.cs
System.Collections.Specialized/StringEnumerator.cs
-System.ComponentModel/AmbientValueAttribute.cs
-System.ComponentModel/ArrayConverter.cs
System.ComponentModel/AsyncCompletedEventArgs.cs
System.ComponentModel/AsyncCompletedEventHandler.cs
System.ComponentModel/AttributeCollection.cs
@@ -160,103 +158,28 @@ System.ComponentModel/BaseNumberConverter.cs
System.ComponentModel/BindableAttribute.cs
System.ComponentModel/BindableSupport.cs
System.ComponentModel/BindingDirection.cs
-System.ComponentModel/BooleanConverter.cs
System.ComponentModel/BrowsableAttribute.cs
-System.ComponentModel/ByteConverter.cs
System.ComponentModel/CancelEventArgs.cs
System.ComponentModel/CancelEventHandler.cs
System.ComponentModel/CategoryAttribute.cs
-System.ComponentModel/CharConverter.cs
System.ComponentModel/CollectionChangeAction.cs
System.ComponentModel/CollectionChangeEventArgs.cs
System.ComponentModel/CollectionChangeEventHandler.cs
-System.ComponentModel/CollectionConverter.cs
System.ComponentModel/ComponentCollection.cs
-System.ComponentModel/ComponentConverter.cs
-System.ComponentModel/Component.cs
-System.ComponentModel/ComponentEditor.cs
System.ComponentModel/ComponentResourceManager.cs
+System.ComponentModel/Component.cs
System.ComponentModel/Container.cs
-System.ComponentModel/CultureInfoConverter.cs
-System.ComponentModel/DateTimeConverter.cs
-System.ComponentModel/DecimalConverter.cs
System.ComponentModel/DefaultEventAttribute.cs
System.ComponentModel/DefaultPropertyAttribute.cs
System.ComponentModel/DefaultValueAttribute.cs
System.ComponentModel/DerivedPropertyDescriptor.cs
System.ComponentModel/DescriptionAttribute.cs
-System.ComponentModel.Design/ActiveDesignerEventArgs.cs
-System.ComponentModel.Design/ActiveDesignerEventHandler.cs
-System.ComponentModel.Design/CheckoutException.cs
-System.ComponentModel.Design/CommandID.cs
-System.ComponentModel.Design/ComponentChangedEventArgs.cs
-System.ComponentModel.Design/ComponentChangedEventHandler.cs
-System.ComponentModel.Design/ComponentChangingEventArgs.cs
-System.ComponentModel.Design/ComponentChangingEventHandler.cs
-System.ComponentModel.Design/ComponentEventArgs.cs
-System.ComponentModel.Design/ComponentEventHandler.cs
-System.ComponentModel.Design/ComponentRenameEventArgs.cs
-System.ComponentModel.Design/ComponentRenameEventHandler.cs
-System.ComponentModel.Design/DesignerCollection.cs
-System.ComponentModel.Design/DesignerEventArgs.cs
-System.ComponentModel.Design/DesignerEventHandler.cs
-System.ComponentModel.Design/DesignerTransactionCloseEventArgs.cs
-System.ComponentModel.Design/DesignerTransactionCloseEventHandler.cs
-System.ComponentModel.Design/DesignerTransaction.cs
-System.ComponentModel.Design/DesignerVerbCollection.cs
-System.ComponentModel.Design/DesignerVerb.cs
-System.ComponentModel.Design/DesigntimeLicenseContext.cs
-System.ComponentModel.Design/DesigntimeLicenseContextSerializer.cs
System.ComponentModel/DesignerAttribute.cs
System.ComponentModel/DesignerCategoryAttribute.cs
System.ComponentModel/DesignerSerializationVisibilityAttribute.cs
System.ComponentModel/DesignerSerializationVisibility.cs
-System.ComponentModel.Design/HelpContextType.cs
-System.ComponentModel.Design/HelpKeywordType.cs
-System.ComponentModel.Design/IComponentChangeService.cs
-System.ComponentModel.Design/IDesigner.cs
-System.ComponentModel.Design/IDesignerEventService.cs
-System.ComponentModel.Design/IDesignerFilter.cs
-System.ComponentModel.Design/IDesignerHost.cs
-System.ComponentModel.Design/IDesignerOptionService.cs
-System.ComponentModel.Design/IDictionaryService.cs
-System.ComponentModel.Design/IEventBindingService.cs
-System.ComponentModel.Design/IExtenderListService.cs
-System.ComponentModel.Design/IExtenderProviderService.cs
-System.ComponentModel.Design/IHelpService.cs
-System.ComponentModel.Design/IInheritanceService.cs
-System.ComponentModel.Design/IMenuCommandService.cs
-System.ComponentModel.Design/IReferenceService.cs
-System.ComponentModel.Design/IResourceService.cs
-System.ComponentModel.Design/IRootDesigner.cs
-System.ComponentModel.Design/ISelectionService.cs
-System.ComponentModel.Design/IServiceContainer.cs
-System.ComponentModel.Design/ITypeDescriptorFilterService.cs
-System.ComponentModel.Design/ITypeResolutionService.cs
-System.ComponentModel.Design/MenuCommand.cs
System.ComponentModel/DesignOnlyAttribute.cs
-System.ComponentModel.Design/RuntimeLicenseContext.cs
-System.ComponentModel.Design/SelectionTypes.cs
-System.ComponentModel.Design.Serialization/ContextStack.cs
-System.ComponentModel.Design.Serialization/DesignerLoader.cs
-System.ComponentModel.Design.Serialization/DesignerSerializerAttribute.cs
-System.ComponentModel.Design.Serialization/IDesignerLoaderHost.cs
-System.ComponentModel.Design.Serialization/IDesignerLoaderService.cs
-System.ComponentModel.Design.Serialization/IDesignerSerializationManager.cs
-System.ComponentModel.Design.Serialization/IDesignerSerializationProvider.cs
-System.ComponentModel.Design.Serialization/IDesignerSerializationService.cs
-System.ComponentModel.Design.Serialization/INameCreationService.cs
-System.ComponentModel.Design.Serialization/InstanceDescriptor.cs
-System.ComponentModel.Design.Serialization/ResolveNameEventArgs.cs
-System.ComponentModel.Design.Serialization/ResolveNameEventHandler.cs
-System.ComponentModel.Design.Serialization/RootDesignerSerializerAttribute.cs
-System.ComponentModel.Design/ServiceContainer.cs
-System.ComponentModel.Design/ServiceCreatorCallback.cs
-System.ComponentModel.Design/StandardCommands.cs
-System.ComponentModel.Design/StandardToolWindows.cs
System.ComponentModel/DesignTimeVisibleAttribute.cs
-System.ComponentModel.Design/ViewTechnology.cs
-System.ComponentModel/DoubleConverter.cs
System.ComponentModel/EditorAttribute.cs
System.ComponentModel/EditorBrowsableAttribute.cs
System.ComponentModel/EditorBrowsableState.cs
@@ -266,28 +189,21 @@ System.ComponentModel/EventDescriptor.cs
System.ComponentModel/EventHandlerList.cs
System.ComponentModel/ExpandableObjectConverter.cs
System.ComponentModel/ExtenderProvidedPropertyAttribute.cs
-System.ComponentModel/GuidConverter.cs
-System.ComponentModel/HandledEventArgs.cs
-System.ComponentModel/HandledEventHandler.cs
System.ComponentModel/IBindingList.cs
System.ComponentModel/IBindingListView.cs
+System.ComponentModel/HandledEventArgs.cs
+System.ComponentModel/HandledEventHandler.cs
System.ComponentModel/IChangeTracking.cs
-System.ComponentModel/IComNativeDescriptorHandler.cs
System.ComponentModel/IComponent.cs
+System.ComponentModel/IComNativeDescriptorHandler.cs
System.ComponentModel/IContainer.cs
System.ComponentModel/ICustomTypeDescriptor.cs
System.ComponentModel/IDataErrorInfo.cs
System.ComponentModel/IEditableObject.cs
System.ComponentModel/IExtenderProvider.cs
System.ComponentModel/IListSource.cs
-System.ComponentModel/ImmutableObjectAttribute.cs
-System.ComponentModel/InheritanceAttribute.cs
-System.ComponentModel/InheritanceLevel.cs
System.ComponentModel/INotifyPropertyChanged.cs
-System.ComponentModel/InstallerTypeAttribute.cs
-System.ComponentModel/Int16Converter.cs
System.ComponentModel/Int32Converter.cs
-System.ComponentModel/Int64Converter.cs
System.ComponentModel/InvalidEnumArgumentException.cs
System.ComponentModel/IRevertibleChangeTracking.cs
System.ComponentModel/ISite.cs
@@ -296,109 +212,191 @@ System.ComponentModel/ISynchronizeInvoke.cs
System.ComponentModel/ITypeDescriptorContext.cs
System.ComponentModel/ITypedList.cs
System.ComponentModel/LicenseContext.cs
-System.ComponentModel/License.cs
-System.ComponentModel/LicenseException.cs
-System.ComponentModel/LicenseManager.cs
-System.ComponentModel/LicenseProviderAttribute.cs
-System.ComponentModel/LicenseProvider.cs
System.ComponentModel/LicenseUsageMode.cs
-System.ComponentModel/LicFileLicenseProvider.cs
System.ComponentModel/ListBindableAttribute.cs
System.ComponentModel/ListChangedEventArgs.cs
System.ComponentModel/ListChangedEventHandler.cs
System.ComponentModel/ListChangedType.cs
-System.ComponentModel/ListSortDescriptionCollection.cs
-System.ComponentModel/ListSortDescription.cs
System.ComponentModel/ListSortDirection.cs
+System.ComponentModel/ListSortDescription.cs
+System.ComponentModel/ListSortDescriptionCollection.cs
System.ComponentModel/LocalizableAttribute.cs
System.ComponentModel/MarshalByValueComponent.cs
System.ComponentModel/MemberDescriptor.cs
-System.ComponentModel/MergablePropertyAttribute.cs
System.ComponentModel/NotifyParentPropertyAttribute.cs
-System.ComponentModel/ParenthesizePropertyNameAttribute.cs
System.ComponentModel/PropertyChangedEventArgs.cs
System.ComponentModel/PropertyChangedEventHandler.cs
System.ComponentModel/PropertyDescriptorCollection.cs
System.ComponentModel/PropertyDescriptor.cs
-System.ComponentModel/PropertyTabAttribute.cs
System.ComponentModel/PropertyTabScope.cs
-System.ComponentModel/ProvidePropertyAttribute.cs
System.ComponentModel/ReadOnlyAttribute.cs
System.ComponentModel/RecommendedAsConfigurableAttribute.cs
-System.ComponentModel/ReferenceConverter.cs
-System.ComponentModel/ReflectionEventDescriptor.cs
-System.ComponentModel/ReflectionPropertyDescriptor.cs
System.ComponentModel/RefreshEventArgs.cs
System.ComponentModel/RefreshEventHandler.cs
System.ComponentModel/RefreshPropertiesAttribute.cs
System.ComponentModel/RefreshProperties.cs
System.ComponentModel/RunInstallerAttribute.cs
-System.ComponentModel/SByteConverter.cs
-System.ComponentModel/SingleConverter.cs
System.ComponentModel/StringConverter.cs
System.ComponentModel/SyntaxCheck.cs
-System.ComponentModel/TimeSpanConverter.cs
System.ComponentModel/ToolboxItemAttribute.cs
-System.ComponentModel/ToolboxItemFilterAttribute.cs
-System.ComponentModel/ToolboxItemFilterType.cs
System.ComponentModel/TypeConverterAttribute.cs
System.ComponentModel/TypeConverter.cs
System.ComponentModel/TypeDescriptor.cs
+System.ComponentModel/WarningException.cs
+System.ComponentModel/Win32Exception.cs
+System.ComponentModel/InheritanceAttribute.cs
+System.ComponentModel/InheritanceLevel.cs
+System.ComponentModel/AmbientValueAttribute.cs
+System.ComponentModel/ArrayConverter.cs
+System.ComponentModel/BooleanConverter.cs
+System.ComponentModel/ByteConverter.cs
+System.ComponentModel/CharConverter.cs
+System.ComponentModel/CollectionConverter.cs
+System.ComponentModel/ComponentConverter.cs
+System.ComponentModel/ComponentEditor.cs
+System.ComponentModel/CultureInfoConverter.cs
+System.ComponentModel/DateTimeConverter.cs
+System.ComponentModel/DecimalConverter.cs
+System.ComponentModel/DoubleConverter.cs
+System.ComponentModel/GuidConverter.cs
+System.ComponentModel/ImmutableObjectAttribute.cs
+System.ComponentModel/InstallerTypeAttribute.cs
+System.ComponentModel/Int16Converter.cs
+System.ComponentModel/Int64Converter.cs
+System.ComponentModel/License.cs
+System.ComponentModel/LicenseException.cs
+System.ComponentModel/LicenseManager.cs
+System.ComponentModel/LicenseProviderAttribute.cs
+System.ComponentModel/LicenseProvider.cs
+System.ComponentModel/LicFileLicenseProvider.cs
+System.ComponentModel/MergablePropertyAttribute.cs
+System.ComponentModel/ParenthesizePropertyNameAttribute.cs
+System.ComponentModel/PropertyTabAttribute.cs
+System.ComponentModel/ProvidePropertyAttribute.cs
+System.ComponentModel/ReferenceConverter.cs
+System.ComponentModel/ReflectionEventDescriptor.cs
+System.ComponentModel/ReflectionPropertyDescriptor.cs
+System.ComponentModel/SByteConverter.cs
+System.ComponentModel/SingleConverter.cs
+System.ComponentModel/TimeSpanConverter.cs
+System.ComponentModel/ToolboxItemFilterAttribute.cs
+System.ComponentModel/ToolboxItemFilterType.cs
System.ComponentModel/TypeListConverter.cs
System.ComponentModel/UInt16Converter.cs
System.ComponentModel/UInt32Converter.cs
System.ComponentModel/UInt64Converter.cs
-System.ComponentModel/WarningException.cs
-System.ComponentModel/Win32Exception.cs
+System.ComponentModel.Design/ActiveDesignerEventArgs.cs
+System.ComponentModel.Design/ActiveDesignerEventHandler.cs
+System.ComponentModel.Design/CheckoutException.cs
+System.ComponentModel.Design/CommandID.cs
+System.ComponentModel.Design/ComponentChangedEventArgs.cs
+System.ComponentModel.Design/ComponentChangedEventHandler.cs
+System.ComponentModel.Design/ComponentChangingEventArgs.cs
+System.ComponentModel.Design/ComponentChangingEventHandler.cs
+System.ComponentModel.Design/ComponentEventArgs.cs
+System.ComponentModel.Design/ComponentEventHandler.cs
+System.ComponentModel.Design/ComponentRenameEventArgs.cs
+System.ComponentModel.Design/ComponentRenameEventHandler.cs
+System.ComponentModel.Design/DesignerCollection.cs
+System.ComponentModel.Design/DesignerEventArgs.cs
+System.ComponentModel.Design/DesignerEventHandler.cs
+System.ComponentModel.Design/DesignerTransactionCloseEventArgs.cs
+System.ComponentModel.Design/DesignerTransactionCloseEventHandler.cs
+System.ComponentModel.Design/DesignerTransaction.cs
+System.ComponentModel.Design/DesignerVerbCollection.cs
+System.ComponentModel.Design/DesignerVerb.cs
+System.ComponentModel.Design/DesigntimeLicenseContext.cs
+System.ComponentModel.Design/DesigntimeLicenseContextSerializer.cs
+System.ComponentModel.Design/HelpContextType.cs
+System.ComponentModel.Design/HelpKeywordType.cs
+System.ComponentModel.Design/IComponentChangeService.cs
+System.ComponentModel.Design/IDesigner.cs
+System.ComponentModel.Design/IDesignerEventService.cs
+System.ComponentModel.Design/IDesignerFilter.cs
+System.ComponentModel.Design/IDesignerHost.cs
+System.ComponentModel.Design/IDesignerOptionService.cs
+System.ComponentModel.Design/IDictionaryService.cs
+System.ComponentModel.Design/IEventBindingService.cs
+System.ComponentModel.Design/IExtenderListService.cs
+System.ComponentModel.Design/IExtenderProviderService.cs
+System.ComponentModel.Design/IHelpService.cs
+System.ComponentModel.Design/IInheritanceService.cs
+System.ComponentModel.Design/IMenuCommandService.cs
+System.ComponentModel.Design/IReferenceService.cs
+System.ComponentModel.Design/IResourceService.cs
+System.ComponentModel.Design/IRootDesigner.cs
+System.ComponentModel.Design/ISelectionService.cs
+System.ComponentModel.Design/IServiceContainer.cs
+System.ComponentModel.Design/ITypeDescriptorFilterService.cs
+System.ComponentModel.Design/ITypeResolutionService.cs
+System.ComponentModel.Design/MenuCommand.cs
+System.ComponentModel.Design/RuntimeLicenseContext.cs
+System.ComponentModel.Design/SelectionTypes.cs
+System.ComponentModel.Design/ServiceContainer.cs
+System.ComponentModel.Design/ServiceCreatorCallback.cs
+System.ComponentModel.Design/StandardCommands.cs
+System.ComponentModel.Design/StandardToolWindows.cs
+System.ComponentModel.Design/ViewTechnology.cs
+System.ComponentModel.Design.Serialization/ContextStack.cs
+System.ComponentModel.Design.Serialization/IDesignerSerializationManager.cs
+System.ComponentModel.Design.Serialization/ResolveNameEventArgs.cs
+System.ComponentModel.Design.Serialization/DesignerLoader.cs
+System.ComponentModel.Design.Serialization/IDesignerSerializationProvider.cs
+System.ComponentModel.Design.Serialization/ResolveNameEventHandler.cs
+System.ComponentModel.Design.Serialization/DesignerSerializerAttribute.cs
+System.ComponentModel.Design.Serialization/IDesignerSerializationService.cs
+System.ComponentModel.Design.Serialization/RootDesignerSerializerAttribute.cs
+System.ComponentModel.Design.Serialization/IDesignerLoaderHost.cs
+System.ComponentModel.Design.Serialization/INameCreationService.cs
+System.ComponentModel.Design.Serialization/IDesignerLoaderService.cs
+System.ComponentModel.Design.Serialization/InstanceDescriptor.cs
+System.Configuration/AppSettingsReader.cs
System.Configuration/ApplicationScopedSettingAttribute.cs
System.Configuration/ApplicationSettingsBase.cs
-System.Configuration/AppSettingsReader.cs
System.Configuration/ConfigHelper.cs
+System.Configuration/ConfigXmlDocument.cs
System.Configuration/ConfigurationException.cs
System.Configuration/ConfigurationSettings.cs
-System.Configuration/ConfigXmlDocument.cs
System.Configuration/DefaultSettingValueAttribute.cs
System.Configuration/DictionarySectionHandler.cs
System.Configuration/IApplicationSettingsProvider.cs
+System.Configuration/IConfigXmlNode.cs
System.Configuration/IConfigurationSectionHandler.cs
System.Configuration/IConfigurationSystem.cs
-System.Configuration/IConfigXmlNode.cs
System.Configuration/IgnoreSectionHandler.cs
System.Configuration/IPersistComponentSettings.cs
System.Configuration/ISettingsProviderService.cs
System.Configuration/LocalFileSettingsProvider.cs
System.Configuration/NameValueFileSectionHandler.cs
System.Configuration/NameValueSectionHandler.cs
+System.Configuration/SingleTagSectionHandler.cs
System.Configuration/SettingAttribute.cs
-System.Configuration/SettingChangingEventArgs.cs
-System.Configuration/SettingChangingEventHandler.cs
-System.Configuration/SettingElementCollection.cs
System.Configuration/SettingElement.cs
+System.Configuration/SettingElementCollection.cs
System.Configuration/SettingsAttributeDictionary.cs
System.Configuration/SettingsBase.cs
+System.Configuration/SettingChangingEventArgs.cs
+System.Configuration/SettingChangingEventHandler.cs
System.Configuration/SettingsContext.cs
System.Configuration/SettingsLoadedEventArgs.cs
System.Configuration/SettingsLoadedEventHandler.cs
-System.Configuration/SettingsPropertyCollection.cs
System.Configuration/SettingsProperty.cs
+System.Configuration/SettingsPropertyCollection.cs
System.Configuration/SettingsPropertyIsReadOnlyException.cs
System.Configuration/SettingsPropertyNotFoundException.cs
-System.Configuration/SettingsPropertyValueCollection.cs
System.Configuration/SettingsPropertyValue.cs
+System.Configuration/SettingsPropertyValueCollection.cs
System.Configuration/SettingsPropertyWrongTypeException.cs
+System.Configuration/SettingsProvider.cs
System.Configuration/SettingsProviderAttribute.cs
System.Configuration/SettingsProviderCollection.cs
-System.Configuration/SettingsProvider.cs
System.Configuration/SettingsSavingEventHandler.cs
-System.Configuration/SettingsSerializeAsAttribute.cs
System.Configuration/SettingsSerializeAs.cs
+System.Configuration/SettingsSerializeAsAttribute.cs
System.Configuration/SettingValueElement.cs
-System.Configuration/SingleTagSectionHandler.cs
System.Configuration/UserScopedSettingAttribute.cs
-System/DefaultUriParser.cs
System.Diagnostics/AlphabeticalEnumConverter.cs
System.Diagnostics/BooleanSwitch.cs
-System.Diagnostics/ConsoleTraceListener.cs
System.Diagnostics/CounterCreationDataCollection.cs
System.Diagnostics/CounterCreationData.cs
System.Diagnostics/CounterSampleCalculator.cs
@@ -455,15 +453,6 @@ System.Diagnostics/TraceLevel.cs
System.Diagnostics/TraceListenerCollection.cs
System.Diagnostics/TraceListener.cs
System.Diagnostics/TraceSwitch.cs
-System/FileStyleUriParser.cs
-System/FtpStyleUriParser.cs
-System/GenericUriParser.cs
-System/GenericUriParserOptions.cs
-System/GopherStyleUriParser.cs
-System/HttpStyleUriParser.cs
-System.IO.Compression/CompressionMode.cs
-System.IO.Compression/DeflateStream.cs
-System.IO.Compression/GzipStream.cs
System.IO/DefaultWatcher.cs
System.IO/ErrorEventArgs.cs
System.IO/ErrorEventHandler.cs
@@ -480,30 +469,33 @@ System.IO/KeventWatcher.cs
System.IO/MonoIO.cs
System.IO/MonoIOError.cs
System.IO/NotifyFilters.cs
-System.IO.Ports/SerialErrorEventArgs.cs
-System.IO.Ports/SerialPinChangedEventArgs.cs
-System.IO.Ports/SerialPort.cs
-System.IO.Ports/SerialReceivedEventArgs.cs
System.IO/RenamedEventArgs.cs
System.IO/RenamedEventHandler.cs
System.IO/SearchPattern.cs
System.IO/WaitForChangedResult.cs
System.IO/WatcherChangeTypes.cs
System.IO/WindowsWatcher.cs
-System/LdapStyleUriParser.cs
+System.IO.Compression/CompressionMode.cs
+System.IO.Compression/DeflateStream.cs
+System.IO.Compression/GzipStream.cs
+System.IO.Ports/SerialErrorEventArgs.cs
+System.IO.Ports/SerialPinChangedEventArgs.cs
+System.IO.Ports/SerialPort.cs
+System.IO.Ports/SerialReceivedEventArgs.cs
System.Net/AuthenticationManager.cs
System.Net/AuthenticationSchemes.cs
System.Net/AuthenticationSchemeSelector.cs
System.Net/Authorization.cs
System.Net/BasicClient.cs
System.Net/BindIPEndPoint.cs
+System.Net/ChunkStream.cs
+System.Net/ChunkedInputStream.cs
+System.Net/ConnectionModes.cs
System.Net.Cache/HttpCacheAgeControl.cs
System.Net.Cache/HttpRequestCacheLevel.cs
System.Net.Cache/HttpRequestCachePolicy.cs
System.Net.Cache/RequestCacheLevel.cs
System.Net.Cache/RequestCachePolicy.cs
-System.Net/ChunkedInputStream.cs
-System.Net/ChunkStream.cs
System.Net.Configuration/AuthenticationModuleElementCollection.cs
System.Net.Configuration/AuthenticationModuleElement.cs
System.Net.Configuration/AuthenticationModulesSection.cs
@@ -529,8 +521,8 @@ System.Net.Configuration/ProxyElement.cs
System.Net.Configuration/RequestCachingSection.cs
System.Net.Configuration/ServicePointManagerElement.cs
System.Net.Configuration/SettingsSection.cs
-System.Net.Configuration/SmtpNetworkElement.cs
System.Net.Configuration/SmtpSection.cs
+System.Net.Configuration/SmtpNetworkElement.cs
System.Net.Configuration/SmtpSpecifiedPickupDirectoryElement.cs
System.Net.Configuration/SocketElement.cs
System.Net.Configuration/WebProxyScriptElement.cs
@@ -538,7 +530,6 @@ System.Net.Configuration/WebRequestModuleElementCollection.cs
System.Net.Configuration/WebRequestModuleElement.cs
System.Net.Configuration/WebRequestModuleHandler.cs
System.Net.Configuration/WebRequestModulesSection.cs
-System.Net/ConnectionModes.cs
System.Net/CookieCollection.cs
System.Net/CookieContainer.cs
System.Net/Cookie.cs
@@ -553,15 +544,15 @@ System.Net/EndPoint.cs
System.Net/EndPointListener.cs
System.Net/EndPointManager.cs
System.Net/EndpointPermission.cs
-System.Net/FileWebRequestCreator.cs
System.Net/FileWebRequest.cs
+System.Net/FileWebRequestCreator.cs
System.Net/FileWebResponse.cs
System.Net/GlobalProxySelection.cs
System.Net/HttpConnection.cs
System.Net/HttpContinueDelegate.cs
+System.Net/HttpListener.cs
System.Net/HttpListenerBasicIdentity.cs
System.Net/HttpListenerContext.cs
-System.Net/HttpListener.cs
System.Net/HttpListenerException.cs
System.Net/HttpListenerPrefixCollection.cs
System.Net/HttpListenerRequest.cs
@@ -588,37 +579,11 @@ System.Net/IWebProxy.cs
System.Net/IWebRequestCreate.cs
System.Net/ListenerAsyncResult.cs
System.Net/ListenerPrefix.cs
-System.Net.Mail/AlternateViewCollection.cs
-System.Net.Mail/AlternateView.cs
-System.Net.Mail/AttachmentBase.cs
-System.Net.Mail/AttachmentCollection.cs
-System.Net.Mail/Attachment.cs
-System.Net.Mail/DeliveryNotificationOptions.cs
-System.Net.Mail/LinkedResourceCollection.cs
-System.Net.Mail/LinkedResource.cs
-System.Net.Mail/MailAddressCollection.cs
-System.Net.Mail/MailAddress.cs
-System.Net.Mail/MailMessage.cs
-System.Net.Mail/MailPriority.cs
-System.Net.Mail/SendCompletedEventHandler.cs
-System.Net.Mail/SmtpAccess.cs
-System.Net.Mail/SmtpClient.cs
-System.Net.Mail/SmtpDeliveryMethod.cs
-System.Net.Mail/SmtpException.cs
-System.Net.Mail/SmtpFailedRecipientException.cs
-System.Net.Mail/SmtpFailedRecipientsException.cs
-System.Net.Mail/SmtpStatusCode.cs
-System.Net.Mime/ContentDisposition.cs
-System.Net.Mime/ContentType.cs
-System.Net.Mime/DispositionTypeNames.cs
-System.Net.Mime/MediaTypeNames.cs
-System.Net.Mime/TransferEncoding.cs
System.Net/MonoHttpDate.cs
System.Net/NetConfig.cs
System.Net/NetworkAccess.cs
System.Net/NetworkCredential.cs
System.Net/NtlmClient.cs
-System/NetPipeStyleUriParser.cs
System.Net/ProtocolViolationException.cs
System.Net/RequestStream.cs
System.Net/ResponseStream.cs
@@ -627,9 +592,9 @@ System.Net.Security/AuthenticationLevel.cs
System.Net.Security/LocalCertSelectionCallback.cs
System.Net.Security/NegotiateStream.cs
System.Net.Security/ProtectionLevel.cs
-System.Net/SecurityProtocolType.cs
System.Net.Security/RemoteCertValidationCallback.cs
System.Net.Security/SslStream.cs
+System.Net/SecurityProtocolType.cs
System.Net/ServicePoint.cs
System.Net/ServicePointManager.cs
System.Net/SocketAddress.cs
@@ -654,10 +619,9 @@ System.Net.Sockets/SocketType.cs
System.Net.Sockets/TcpClient.cs
System.Net.Sockets/TcpListener.cs
System.Net.Sockets/UdpClient.cs
-System/NetTcpStyleUriParser.cs
System.Net/TransportType.cs
-System.Net/WebAsyncResult.cs
System.Net/WebClient.cs
+System.Net/WebAsyncResult.cs
System.Net/WebConnection.cs
System.Net/WebConnectionData.cs
System.Net/WebConnectionGroup.cs
@@ -665,23 +629,47 @@ System.Net/WebConnectionStream.cs
System.Net/WebException.cs
System.Net/WebExceptionStatus.cs
System.Net/WebHeaderCollection.cs
-System.Net/WebPermissionAttribute.cs
System.Net/WebPermission.cs
+System.Net/WebPermissionAttribute.cs
System.Net/WebProxy.cs
System.Net/WebRequest.cs
System.Net/WebResponse.cs
-System/NewsStyleUriParser.cs
-System.Security.AccessControl/SemaphoreRights.cs
+System.Net.Mail/AlternateView.cs
+System.Net.Mail/AlternateViewCollection.cs
+System.Net.Mail/Attachment.cs
+System.Net.Mail/AttachmentBase.cs
+System.Net.Mail/AttachmentCollection.cs
+System.Net.Mail/DeliveryNotificationOptions.cs
+System.Net.Mail/LinkedResource.cs
+System.Net.Mail/LinkedResourceCollection.cs
+System.Net.Mail/MailAddress.cs
+System.Net.Mail/MailAddressCollection.cs
+System.Net.Mail/MailMessage.cs
+System.Net.Mail/MailPriority.cs
+System.Net.Mail/SendCompletedEventHandler.cs
+System.Net.Mail/SmtpAccess.cs
+System.Net.Mail/SmtpClient.cs
+System.Net.Mail/SmtpDeliveryMethod.cs
+System.Net.Mail/SmtpException.cs
+System.Net.Mail/SmtpFailedRecipientException.cs
+System.Net.Mail/SmtpFailedRecipientsException.cs
+System.Net.Mail/SmtpStatusCode.cs
+System.Net.Mime/ContentDisposition.cs
+System.Net.Mime/ContentType.cs
+System.Net.Mime/DispositionTypeNames.cs
+System.Net.Mime/MediaTypeNames.cs
+System.Net.Mime/TransferEncoding.cs
System.Security.AccessControl/SemaphoreSecurity.cs
+System.Security.AccessControl/SemaphoreRights.cs
System.Security.Authentication/CipherAlgorithmType.cs
System.Security.Authentication/ExchangeAlgorithmType.cs
System.Security.Authentication/HashAlgorithmType.cs
System.Security.Authentication/SslProtocolType.cs
-System.Security.Cryptography/AsnEncodedDataCollection.cs
System.Security.Cryptography/AsnEncodedData.cs
+System.Security.Cryptography/AsnEncodedDataCollection.cs
System.Security.Cryptography/AsnEncodedDataEnumerator.cs
-System.Security.Cryptography/OidCollection.cs
System.Security.Cryptography/Oid.cs
+System.Security.Cryptography/OidCollection.cs
System.Security.Cryptography/OidEnumerator.cs
System.Security.Cryptography.X509Certificates/OpenFlags.cs
System.Security.Cryptography.X509Certificates/PublicKey.cs
@@ -690,25 +678,25 @@ System.Security.Cryptography.X509Certificates/StoreName.cs
System.Security.Cryptography.X509Certificates/X500DistinguishedName.cs
System.Security.Cryptography.X509Certificates/X500DistinguishedNameFlags.cs
System.Security.Cryptography.X509Certificates/X509BasicConstraintsExtension.cs
-System.Security.Cryptography.X509Certificates/X509Certificate2Collection.cs
+System.Security.Cryptography.X509Certificates/X509CertificateCollection.cs
System.Security.Cryptography.X509Certificates/X509Certificate2.cs
+System.Security.Cryptography.X509Certificates/X509Certificate2Collection.cs
System.Security.Cryptography.X509Certificates/X509Certificate2Enumerator.cs
-System.Security.Cryptography.X509Certificates/X509CertificateCollection.cs
System.Security.Cryptography.X509Certificates/X509Chain.cs
-System.Security.Cryptography.X509Certificates/X509ChainElementCollection.cs
System.Security.Cryptography.X509Certificates/X509ChainElement.cs
+System.Security.Cryptography.X509Certificates/X509ChainElementCollection.cs
System.Security.Cryptography.X509Certificates/X509ChainElementEnumerator.cs
System.Security.Cryptography.X509Certificates/X509ChainPolicy.cs
System.Security.Cryptography.X509Certificates/X509ChainStatus.cs
System.Security.Cryptography.X509Certificates/X509ChainStatusFlags.cs
System.Security.Cryptography.X509Certificates/X509EnhancedKeyUsageExtension.cs
-System.Security.Cryptography.X509Certificates/X509ExtensionCollection.cs
System.Security.Cryptography.X509Certificates/X509Extension.cs
+System.Security.Cryptography.X509Certificates/X509ExtensionCollection.cs
System.Security.Cryptography.X509Certificates/X509ExtensionEnumerator.cs
System.Security.Cryptography.X509Certificates/X509FindType.cs
System.Security.Cryptography.X509Certificates/X509IncludeOption.cs
-System.Security.Cryptography.X509Certificates/X509KeyUsageExtension.cs
System.Security.Cryptography.X509Certificates/X509KeyUsageFlags.cs
+System.Security.Cryptography.X509Certificates/X509KeyUsageExtension.cs
System.Security.Cryptography.X509Certificates/X509NameType.cs
System.Security.Cryptography.X509Certificates/X509RevocationFlag.cs
System.Security.Cryptography.X509Certificates/X509RevocationMode.cs
@@ -719,28 +707,27 @@ System.Security.Cryptography.X509Certificates/X509VerificationFlags.cs
System.Security.Permissions/PermissionHelper.cs
System.Security.Permissions/ResourcePermissionBase.cs
System.Security.Permissions/ResourcePermissionBaseEntry.cs
-System.Security.Permissions/StorePermissionAttribute.cs
System.Security.Permissions/StorePermission.cs
+System.Security.Permissions/StorePermissionAttribute.cs
System.Security.Permissions/StorePermissionFlags.cs
-System/SRDescriptionAttribute.cs
System.Text.RegularExpressions/arch.cs
System.Text.RegularExpressions/cache.cs
-System.Text.RegularExpressions/CaptureCollection.cs
System.Text.RegularExpressions/Capture.cs
+System.Text.RegularExpressions/CaptureCollection.cs
System.Text.RegularExpressions/category.cs
System.Text.RegularExpressions/compiler.cs
System.Text.RegularExpressions/debug.cs
-System.Text.RegularExpressions/GroupCollection.cs
System.Text.RegularExpressions/Group.cs
+System.Text.RegularExpressions/GroupCollection.cs
System.Text.RegularExpressions/interpreter.cs
System.Text.RegularExpressions/interval.cs
-System.Text.RegularExpressions/MatchCollection.cs
System.Text.RegularExpressions/Match.cs
+System.Text.RegularExpressions/MatchCollection.cs
System.Text.RegularExpressions/MatchEvaluator.cs
System.Text.RegularExpressions/parser.cs
System.Text.RegularExpressions/quicksearch.cs
-System.Text.RegularExpressions/RegexCompilationInfo.cs
System.Text.RegularExpressions/Regex.cs
+System.Text.RegularExpressions/RegexCompilationInfo.cs
System.Text.RegularExpressions/RegexOptions.cs
System.Text.RegularExpressions/RegexRunner.cs
System.Text.RegularExpressions/RegexRunnerFactory.cs
@@ -754,16 +741,28 @@ System.Timers/ElapsedEventArgs.cs
System.Timers/ElapsedEventHandler.cs
System.Timers/Timer.cs
System.Timers/TimersDescriptionAttribute.cs
+System.Web/AspNetHostingPermission.cs
+System.Web/AspNetHostingPermissionAttribute.cs
+System.Web/AspNetHostingPermissionLevel.cs
+System/DefaultUriParser.cs
+System/FileStyleUriParser.cs
+System/FtpStyleUriParser.cs
+System/GenericUriParser.cs
+System/GenericUriParserOptions.cs
+System/GopherStyleUriParser.cs
+System/HttpStyleUriParser.cs
+System/LdapStyleUriParser.cs
+System/NetPipeStyleUriParser.cs
+System/NetTcpStyleUriParser.cs
+System/NewsStyleUriParser.cs
+System/SRDescriptionAttribute.cs
System/UriBuilder.cs
-System/UriComponents.cs
System/Uri.cs
+System/UriComponents.cs
System/UriFormat.cs
System/UriFormatException.cs
+System/UriParser.cs
System/UriHostNameType.cs
System/UriKind.cs
-System/UriParser.cs
System/UriPartial.cs
System/UriTypeConverter.cs
-System.Web/AspNetHostingPermissionAttribute.cs
-System.Web/AspNetHostingPermission.cs
-System.Web/AspNetHostingPermissionLevel.cs
diff --git a/mcs/class/System/System_test.dll.sources b/mcs/class/System/System_test.dll.sources
index da6840a30e4..3960be7e604 100644
--- a/mcs/class/System/System_test.dll.sources
+++ b/mcs/class/System/System_test.dll.sources
@@ -170,7 +170,6 @@ System.Net.Mail/MailAddressTest.cs
System.Net.Mail/AttachmentTest.cs
System.Net.Mail/AlternateViewTest.cs
System.Net.Mail/LinkedResourceCollectionTest.cs
-System.Net.Mail/SmtpClientTest.cs
System.Net.Mime/ContentDispositionTest.cs
System.Net.Mime/ContentTypeTest.cs
System.Security.Cryptography/AsnEncodedDataTest.cs
diff --git a/mcs/class/System/Test/ChangeLog b/mcs/class/System/Test/ChangeLog
index 0bb5ba1eeca..dfaaa36356e 100644
--- a/mcs/class/System/Test/ChangeLog
+++ b/mcs/class/System/Test/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-13 John Luke <john.luke@gmail.com>
-
- * System.Net.Mail/*Test.cs: update tests
-
2006-01-06 Raja R Harinath <rharinath@novell.com>
* System.Net.Mime/ContentDispositionTest.cs: Use Assert.AreEqual
diff --git a/mcs/class/System/Test/System.Net.Mail/MailMessageTest.cs b/mcs/class/System/Test/System.Net.Mail/MailMessageTest.cs
index 5d896053b4d..30d72633a75 100644
--- a/mcs/class/System/Test/System.Net.Mail/MailMessageTest.cs
+++ b/mcs/class/System/Test/System.Net.Mail/MailMessageTest.cs
@@ -4,7 +4,7 @@
// Authors:
// John Luke (john.luke@gmail.com)
//
-// (C) 2005, 2006 John Luke
+// (C) 2005 John Luke
//
#if NET_2_0
using NUnit.Framework;
@@ -30,39 +30,11 @@ namespace MonoTests.System.Net.Mail
//Attachment a = Attachment.CreateAttachmentFromString ("blah blah", "text/plain");
//msg.Attachments.Add (a);
}
-
- [Test]
- [ExpectedException (typeof (ArgumentNullException))]
- public void ArgumentNullCtor1 ()
- {
- new MailMessage (null, "to@example.com");
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentNullException))]
- public void ArgumentNullCtor2 ()
- {
- new MailMessage (null, new MailAddress ("to@example.com"));
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentNullException))]
- public void ArgumentNullCtor3 ()
- {
- new MailMessage ("from@example.com", null);
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentNullException))]
- public void ArgumentNullCtor4 ()
- {
- new MailMessage (new MailAddress ("from@example.com"), null);
- }
/*[Test]
public void AlternateView ()
{
- Assert.AreEqual (msg.AlternateViews.Count, 1);
+ Assert.IsTrue (msg.AlternateViews.Count == 1);
AlternateView av = msg.AlternateViews[0];
// test that the type is ok, etc.
}*/
@@ -70,27 +42,21 @@ namespace MonoTests.System.Net.Mail
/*[Test]
public void Attachment ()
{
- Assert.AreEqual (msg.Attachments.Count, 1);
+ Assert.IsTrue (msg.Attachments.Count == 1);
Attachment at = msg.Attachments[0];
- Assert.AreEqual (at.ContentType.MediaType, "text/plain");
+ Assert.IsTrue (at.ContentType.MediaType == "text/plain");
}*/
[Test]
public void Body ()
{
- Assert.AreEqual (msg.Body, "hello");
- }
-
- [Test]
- public void BodyEncoding ()
- {
- Assert.AreEqual (msg.BodyEncoding, Encoding.ASCII);
+ Assert.IsTrue (msg.Body == "hello");
}
[Test]
public void From ()
{
- Assert.AreEqual (msg.From.Address, "from@example.com");
+ Assert.IsTrue (msg.From.Address == "from@example.com");
}
[Test]
@@ -102,20 +68,20 @@ namespace MonoTests.System.Net.Mail
[Test]
public void Priority ()
{
- Assert.AreEqual (msg.Priority, MailPriority.Normal);
+ Assert.IsTrue (msg.Priority == MailPriority.Normal);
}
[Test]
public void Subject ()
{
- Assert.AreEqual (msg.Subject, "the subject");
+ Assert.IsTrue (msg.Subject == "the subject");
}
[Test]
public void To ()
{
- Assert.AreEqual (msg.To.Count, 1);
- Assert.AreEqual (msg.To[0].Address, "to@example.com");
+ Assert.IsTrue (msg.To.Count == 1);
+ Assert.IsTrue (msg.To[0].Address == "to@example.com");
}
}
}
diff --git a/mcs/class/System/Test/System.Net.Mail/SmtpClientTest.cs b/mcs/class/System/Test/System.Net.Mail/SmtpClientTest.cs
deleted file mode 100644
index cc6b965b5bf..00000000000
--- a/mcs/class/System/Test/System.Net.Mail/SmtpClientTest.cs
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-// SmtpClientTest.cs - NUnit Test Cases for System.Net.Mail.SmtpClient
-//
-// Authors:
-// John Luke (john.luke@gmail.com)
-//
-// (C) 2006 John Luke
-//
-#if NET_2_0
-using NUnit.Framework;
-using System;
-using System.IO;
-using System.Net.Mail;
-using System.Net.Mime;
-
-namespace MonoTests.System.Net.Mail
-{
- [TestFixture]
- public class SmtpClientTest
- {
- SmtpClient smtp;
-
- [SetUp]
- public void GetReady ()
- {
- smtp = new SmtpClient ();
- }
-
- [Test]
- public void InitialTimeout ()
- {
- Assert.AreEqual (smtp.Timeout, 100000);
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentOutOfRangeException))]
- public void NegativePortValue ()
- {
- smtp.Port = -1;
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentOutOfRangeException))]
- public void NegativeTimeoutValue ()
- {
- smtp.Timeout = -1;
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentNullException))]
- public void NullHost ()
- {
- smtp.Host = null;
- }
-
- [Test]
- [ExpectedException (typeof (ArgumentException))]
- public void EmptyHost ()
- {
- smtp.Host = String.Empty;
- }
- }
-}
-#endif
diff --git a/mcs/class/corlib/ChangeLog b/mcs/class/corlib/ChangeLog
index d5c82b6ef7f..13214ce8165 100644
--- a/mcs/class/corlib/ChangeLog
+++ b/mcs/class/corlib/ChangeLog
@@ -1,17 +1,4 @@
-2006-01-19 Raja R Harinath <rharinath@novell.com>
-
- * Makefile: Simplify. Remove support for corlib_plattest and reslib.
- * corlib_plattest.dll.excludes, corlib_res.dll.excludes: remove.
-
-2006-01-18 Atsushi Enomoto <atsushi@ximian.com>
-
- * Makefile : corlib_plattest dll is now profile-aware.
-
-2006-01-13 Robert Jordan <robertj@gmx.net>
-
- * corlib.dll.sources: Added System.Resources/ResourceManagerTest.cs
-
-2006-01-05 Kornel Pal <kornelpal@hotmail.com>
+2006-01-05 Kornél Pál <kornelpal@hotmail.com>
* corlib.dll.sources: Added DriveNotFoundException.cs in System.IO.
@@ -925,7 +912,7 @@
* corlib.dll.sources: Added
System.Runtime.Serialization.Formatter.Binary.CodeGenerator.cs
-2004-02-10 Carlos Guzman Alvarez <carlosga@telefonica.net>
+2004-02-10 Carlos Guzmán Álvarez <carlosga@telefonica.net>
* Mono.Security.Cryptography/PKCS1.cs:
@@ -1002,7 +989,7 @@
* corlib_test.dll.sources: Added unit tests PaddingMode and X509
using CryptoAPI.
-2003-12-14 Pedro Martinez Julia <yoros@wanadoo.es>
+2003-12-14 Pedro Martínez Juliá <yoros@wanadoo.es>
* DateTime.cs: Be sure that the array access is not out of range
when looking for ArgumentOutOfRangeException in the year value.
@@ -1093,7 +1080,7 @@
* corlib.dll.sources: Added classes for Authenticode support.
* corlib_test.dll.sources: Added unit test for SPC certificates.
-2003-09-26 Pedro Martinez Julia <yoros@wanadoo.es>
+2003-09-26 Pedro Martínez Juliá <yoros@wanadoo.es>
* corlib_test.dll.sources: Remove tests that generate compile
errors. The tests are still there but its name is rmoved here.
@@ -1251,7 +1238,7 @@
* unix.args: Added System.Runtime.Remoting.Activation/AppDomainLevelActivator.cs
-2003-03-16 Pedro Martinez Julia <yoros@wanadoo.es>
+2003-03-16 Pedro Martínez Juliá <yoros@wanadoo.es>
* unix.args: Added "System.FloatingPointFormatter.cs".
@@ -1263,7 +1250,7 @@
* unix.args: Added
System.Runtime.InteropServices/HandleRef.cs
-2003-03-04 Pedro Martinez Julia <yoros@wanadoo.es>
+2003-03-04 Pedro Martínez Juliá <yoros@wanadoo.es>
* unix.args: Added "DoubleFormatter.cs" and "SingleFormatter.cs"
diff --git a/mcs/class/corlib/Makefile b/mcs/class/corlib/Makefile
index 49a2391c576..69772f5f704 100644
--- a/mcs/class/corlib/Makefile
+++ b/mcs/class/corlib/Makefile
@@ -3,14 +3,6 @@ SUBDIRS =
include ../../build/rules.make
export __SECURITY_BOOTSTRAP_DB=$(topdir)/class/corlib
-LIBRARY = corlib.dll
-LIBRARY_NAME = mscorlib.dll
-LIB_MCS_FLAGS = $(corlib_flags) $(RESOURCE_FILES:%=-resource:%)
-LIBRARY_USE_INTERMEDIATE_FILE = yes
-
-LIBRARY_COMPILE = $(BOOT_COMPILE)
-LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)
-
RESOURCE_FILES = \
resources/collation.core.bin \
resources/collation.tailoring.bin \
@@ -27,19 +19,67 @@ ifneq ($(FRAMEWORK_VERSION),1.0)
LOCAL_MCS_FLAGS += -nowarn:414
endif
-TEST_MCS_FLAGS = -debug+ -debug:full -nowarn:168,219,618,672 -unsafe
+LIBRARY = corlib.dll
+LIBRARY_NAME = mscorlib.dll
+LIB_MCS_FLAGS = $(corlib_flags) $(RESOURCE_FILES:%=/resource:%)
+LIBRARY_USE_INTERMEDIATE_FILE = yes
+
+LIBRARY_COMPILE = $(BOOT_COMPILE)
+LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)
EXTRA_DISTFILES = \
- corlib.dll.win32-excludes \
+ corlib.dll.win32-excludes corlib_cmp.dll.excludes corlib_res.dll.excludes \
+ $(plattestlib).excludes \
Test/ms_run_test.sh \
Test/resources/MyResources.resources \
Test/resources/Empty.resources \
- Test/resources/AFile.txt \
+ Test/resources/AFile.txt \
$(RESOURCE_FILES)
-include $(topdir)/build/library.make
+CLEAN_FILES = $(cmplib) $(reslib) $(plattestlib) $(plattestlib).sources \
+ $(cmp_response) $(cmp_makefrag) \
+ $(res_response) $(res_makefrag) \
+ $(cmppdb) $(respdb) $(plattestpdb)
+
+# If building on a non mono-native platform, default
+# to running the unit tests on its corlib, to see if
+# our tests are complaint with their (hopefully bug-free)
+# corlib. If on a mono-native platform, test our actual
+# corlib.
+#
+# You can access either one on demand with either 'make
+# run-monotest' or 'make run-plattest'.
+
+plattestlib = corlib_plattest.dll
+plattestpdb = $(patsubst %.dll,%.pdb,$(plattestlib))
+$(plattestlib).sources: corlib_test.dll.sources $(plattestlib).excludes
+ sort corlib_test.dll.sources $(plattestlib).excludes | uniq -u >$@
+
+TEST_MCS_FLAGS = -debug+ -debug:full -nowarn:168,219,618,672 -unsafe
+
+ifndef PLATFORM_MONO_NATIVE
+test_lib = $(plattestlib)
+test_against = $(PLATFORM_CORLIB)
+HAVE_CS_TESTS = $(plattestlib).sources
+
+## for now, compiling the testsuite with CSC causes CS0583. So compile with internal MCS
+TEST_COMPILE = MONO_PATH="$(topdir)/class/lib/$(PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_MCS) $(USE_MCS_FLAGS)
+endif
+
+include ../../build/library.make
+
+ifndef PLATFORM_MONO_NATIVE
+run-monotest:
+ $(MAKE) $(reslib)
+ $(MAKE) test_lib=corlib_test.dll test_against=$(reslib) run-test
+
+run-plattest:
+ $(MAKE) test_lib=$(plattestlib) test_against='$(PLATFORM_CORLIB)' run-test
+
+else
+run-monotest: run-test
+endif
-ifdef FIXME_CORLIB_CMP
# corlib_cmp
cmplib = $(topdir)/class/lib/$(PROFILE)/corlib_cmp.dll
cmppdb = $(cmplib:.dll=.pdb)
@@ -47,9 +87,6 @@ cmp_response = $(depsdir)/$(PROFILE)_corlib_cmp.dll.response
cmp_makefrag = $(depsdir)/$(PROFILE)_corlib_cmp.dll.makefrag
cmp_flags = -r:$(PLATFORM_CORLIB) $(corlib_flags)
-EXTRA_DISTFILES += corlib_cmp.dll.excludes
-CLEAN_FILES += $(cmplib) $(cmp_response) $(cmp_makefrag) $(cmppdb)
-
$(cmplib): $(cmp_makefrag) $(cmp_response)
$(BOOT_COMPILE) $(LIBRARY_FLAGS) $(cmp_flags) -target:library -out:$@ @$(cmp_response)
@@ -67,4 +104,24 @@ $(cmp_makefrag): $(cmp_response)
# leading to a broken build.
#
# -include $(cmp_makefrag)
-endif
+
+# corlib_res
+reslib = $(topdir)/class/lib/$(PROFILE)/corlib_res.dll
+respdb = $(reslib:.dll=.pdb)
+res_response = $(depsdir)/$(PROFILE)_corlib_res.dll.response
+res_makefrag = $(depsdir)/$(PROFILE)_corlib_res.dll.makefrag
+res_flags = -r:$(PLATFORM_CORLIB) $(corlib_flags)
+
+$(reslib): $(res_makefrag) $(res_response)
+ $(BOOT_COMPILE) $(LIBRARY_FLAGS) $(res_flags) -target:library -out:$@ @$(res_response)
+
+$(res_response): $(sourcefile) corlib_res.dll.excludes
+ @echo Creating $@ ...
+ @sort $(sourcefile) corlib_res.dll.excludes | uniq -u | $(PLATFORM_CHANGE_SEPARATOR_CMD) >$@
+
+# warning: embedded tab in the 'echo touch' line
+$(res_makefrag): $(res_response)
+ @echo Creating $@ ...
+ @sed 's,^,$(reslib): ,' $< >$@
+
+-include $(res_makefrag)
diff --git a/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog b/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
index 1b5b481604f..e0a53eda021 100644
--- a/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
+++ b/mcs/class/corlib/Microsoft.Win32.SafeHandles/ChangeLog
@@ -1,9 +1,3 @@
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * SafeHandleZeroOrMinusOneIsInvalid.cs: Update to RTM api
-
- * SafeFileHandle.cs: Update to RTM api
-
2005-08-10 Zoltan Varga <vargaz@freemail.hu>
* SafeFileHandle.cs: Make this inherit from SafeHandleZeroOrMinusOneIsInvalid.
diff --git a/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeFileHandle.cs b/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeFileHandle.cs
index 5457ba1ca34..001b3d984b1 100644
--- a/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeFileHandle.cs
+++ b/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeFileHandle.cs
@@ -35,24 +35,16 @@ namespace Microsoft.Win32.SafeHandles {
[MonoTODO]
public sealed class SafeFileHandle : SafeHandleZeroOrMinusOneIsInvalid {
- public SafeFileHandle (IntPtr preexistingHandle, bool ownsHandle) : base (ownsHandle)
+ public SafeFileHandle (IntPtr preexistingHandle, bool ownsHandle)
{
- SetHandle (preexistingHandle);
}
- [MonoTODO]
public override bool IsInvalid {
get {
throw new NotImplementedException ();
}
}
- [MonoTODO]
- protected override bool ReleaseHandle ()
- {
- throw new NotImplementedException ();
- }
-
}
}
diff --git a/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs b/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
index 4f6dc86c0b0..58bcd82884c 100644
--- a/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
+++ b/mcs/class/corlib/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.cs
@@ -35,14 +35,6 @@ namespace Microsoft.Win32.SafeHandles {
[MonoTODO]
public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle, IDisposable {
- protected SafeHandleZeroOrMinusOneIsInvalid (bool ownsHandle) : base ((IntPtr) 0, ownsHandle) {
- }
-
- public override bool IsInvalid {
- get {
- return handle == (IntPtr)(-1) || handle == (IntPtr) 0;
- }
- }
}
}
diff --git a/mcs/class/corlib/System.Collections.Generic/ChangeLog b/mcs/class/corlib/System.Collections.Generic/ChangeLog
index 7507abc3759..289d903df48 100644
--- a/mcs/class/corlib/System.Collections.Generic/ChangeLog
+++ b/mcs/class/corlib/System.Collections.Generic/ChangeLog
@@ -1,22 +1,3 @@
-2006-01-19 Raja R Harinath <rharinath@novell.com>
-
- Fix to pass new nunit tests.
- * Dictionary.cs (ShimEnumerator): New class. Implement the
- requirement that ((IDictionary) foo).GetEnumerator ().Current has
- type DictionaryEntry.
- (IDictionary.GetEnumerator): Use ShimEnumerator.
- (Enumerator.Current): Now has type KeyValuePair<TKey, TValue>.
- (Enumerator.MoveNext): Use VerifyState.
- (Enumerator.VerifyState): Move validation of 'current' field to ...
- (Enumerator.CurrentSlot): ... this.
- (Enumerator.Current, Enumerator.IDictionaryEnumerator.Entry):
- Use CurrentSlot.
- (CopyTo, ICollection.CopyTo): Use subtle reasoning to replace a
- '>=' with a '>'. Don't throw an ArgumentException when
- index==array.Length && Count==0.
- (KeyCollection.CopyTo, ValueCollection.CopyTo): Likewise, and thus
- obviate the need to check (dictionary.Count == 0).
-
2005-12-20 Sebastien Pouliot <sebastien@ximian.com>
* List.cs: Applied Atsushi's patch for Sort (bug 76361) now that the
diff --git a/mcs/class/corlib/System.Collections.Generic/Dictionary.cs b/mcs/class/corlib/System.Collections.Generic/Dictionary.cs
index 33391041a56..bddc8b9458f 100644
--- a/mcs/class/corlib/System.Collections.Generic/Dictionary.cs
+++ b/mcs/class/corlib/System.Collections.Generic/Dictionary.cs
@@ -171,8 +171,7 @@ namespace System.Collections.Generic {
throw new ArgumentNullException ("array");
if (index < 0)
throw new ArgumentOutOfRangeException ("index");
- // we want no exception for index==array.Length && Count == 0
- if (index > array.Length)
+ if (index >= array.Length)
throw new ArgumentException ("index larger than largest valid index of array");
if (array.Length - index < Count)
throw new ArgumentException ("Destination array cannot hold the requested elements!");
@@ -447,8 +446,7 @@ namespace System.Collections.Generic {
throw new ArgumentNullException ("array");
if (index < 0)
throw new ArgumentOutOfRangeException ("index");
- // we want no exception for index==array.Length && Count == 0
- if (index > array.Length)
+ if (index >= array.Length)
throw new ArgumentException ("index larger than largest valid index of array");
if (array.Length - index < Count)
throw new ArgumentException ("Destination array cannot hold the requested elements!");
@@ -471,7 +469,7 @@ namespace System.Collections.Generic {
IDictionaryEnumerator IDictionary.GetEnumerator ()
{
- return new ShimEnumerator (this);
+ return new Enumerator (this);
}
public Enumerator GetEnumerator ()
@@ -480,49 +478,6 @@ namespace System.Collections.Generic {
}
[Serializable]
- private struct ShimEnumerator : IDictionaryEnumerator, IEnumerator
- {
- Enumerator host_enumerator;
- public ShimEnumerator (Dictionary<TKey, TValue> host)
- {
- host_enumerator = host.GetEnumerator ();
- }
-
- public void Dispose ()
- {
- host_enumerator.Dispose ();
- }
-
- public bool MoveNext ()
- {
- return host_enumerator.MoveNext ();
- }
-
- public DictionaryEntry Entry {
- get { return ((IDictionaryEnumerator) host_enumerator).Entry; }
- }
-
- public object Key {
- get { return host_enumerator.Current.Key; }
- }
-
- public object Value {
- get { return host_enumerator.Current.Value; }
- }
-
- // This is the raison d' etre of this $%!@$%@^@ class.
- // We want: IDictionary.GetEnumerator ().Current is DictionaryEntry
- public object Current {
- get { return Entry; }
- }
-
- public void Reset ()
- {
- ((IEnumerator)host_enumerator).Reset ();
- }
- }
-
- [Serializable]
public struct Enumerator : IEnumerator<KeyValuePair<TKey,TValue>>,
IDisposable, IDictionaryEnumerator, IEnumerator
{
@@ -545,25 +500,33 @@ namespace System.Collections.Generic {
public bool MoveNext ()
{
- VerifyState ();
+ if (dictionary == null)
+ throw new ObjectDisposedException (null);
+ if (dictionary.generation != stamp)
+ throw new InvalidOperationException ("out of sync");
- // Pre-condition: current == null => this is the first call to MoveNext ()
+ // Pre-condition: current == null => this is the first call
+ // to MoveNext ()
if (current != null)
current = current.Next;
while (current == null && next_index < dictionary.table.Length)
current = dictionary.table [next_index++];
- // Post-condition: current == null => this is the last call to MoveNext()
+ // Post-condition: current == null => this is the last call
+ // to MoveNext()
return current != null;
}
public KeyValuePair<TKey, TValue> Current {
- get { return CurrentSlot ().Data; }
+ get {
+ VerifyState ();
+ return current.Data;
+ }
}
object IEnumerator.Current {
- get { return Current; }
+ get { return ((IDictionaryEnumerator) this).Entry; }
}
void IEnumerator.Reset ()
@@ -574,8 +537,8 @@ namespace System.Collections.Generic {
DictionaryEntry IDictionaryEnumerator.Entry {
get {
- Slot s = CurrentSlot ();
- return new DictionaryEntry (s.Data.Key, s.Data.Value);
+ VerifyState ();
+ return new DictionaryEntry (current.Data.Key, current.Data.Value);
}
}
@@ -593,16 +556,9 @@ namespace System.Collections.Generic {
throw new ObjectDisposedException (null);
if (dictionary.generation != stamp)
throw new InvalidOperationException ("out of sync");
- }
-
- Slot CurrentSlot ()
- {
- VerifyState ();
if (current == null)
- throw new InvalidOperationException ("Current is not valid");
- return current;
+ throw new InvalidOperationException ();
}
-
public void Dispose ()
{
current = null;
@@ -628,8 +584,10 @@ namespace System.Collections.Generic {
throw new ArgumentNullException ("array");
if (index < 0)
throw new ArgumentOutOfRangeException ("index");
- // we want no exception for index==array.Length && dictionary.Count == 0
- if (index > array.Length)
+ // no exception for index==array.Length in this case
+ if (dictionary.Count == 0)
+ return;
+ if (index >= array.Length)
throw new ArgumentException ("index larger than largest valid index of array");
if (array.Length - index < dictionary.Count)
throw new ArgumentException ("Destination array cannot hold the requested elements!");
@@ -746,8 +704,10 @@ namespace System.Collections.Generic {
throw new ArgumentNullException ("array");
if (index < 0)
throw new ArgumentOutOfRangeException ("index");
- // we want no exception for index==array.Length && dictionary.Count == 0
- if (index > array.Length)
+ // no exception for index==array.Length in this case
+ if (dictionary.Count == 0)
+ return;
+ if (index >= array.Length)
throw new ArgumentException ("index larger than largest valid index of array");
if (array.Length - index < dictionary.Count)
throw new ArgumentException ("Destination array cannot hold the requested elements!");
diff --git a/mcs/class/corlib/System.IO/ChangeLog b/mcs/class/corlib/System.IO/ChangeLog
index 86679553eca..a88503b4aea 100644
--- a/mcs/class/corlib/System.IO/ChangeLog
+++ b/mcs/class/corlib/System.IO/ChangeLog
@@ -1,27 +1,9 @@
-2006-01-18 Atsushi Enomoto <atsushi@ximian.com>
-
- * Path.cs : (GetRandomFileName) use random buffer ;-) It somehow
- caused infinite loop on Windows.
-
-2006-01-18 Atsushi Enomoto <atsushi@ximian.com>
-
- * DirectoryInfo.cs : on Windows top directory is something like c:\.
-
-2006-01-17 Joshua Tauberer <tauberer@for.net>
-
- * StreamReader.cs: Avoid two totally unnecessary string creations.
- (kind of pedantic)
-
2006-01-13 Ben Maurer <bmaurer@andrew.cmu.edu>
* TextWriter.cs: Call char[],int,int from the Write(char[]) method
both for msft compat and for performance. Thanks to "Mike Glenn"
<mglenn@zoominternet.net> for pointing.
-
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * File.cs: Support for Read/WriteAllText
-
+
2006-01-11 Sebastien Pouliot <sebastien@ximian.com>
* Path.cs: Previous fix caused regression of bug #76191. Fixed (again)
diff --git a/mcs/class/corlib/System.IO/DirectoryInfo.cs b/mcs/class/corlib/System.IO/DirectoryInfo.cs
index b8372743871..110367dbbd2 100644
--- a/mcs/class/corlib/System.IO/DirectoryInfo.cs
+++ b/mcs/class/corlib/System.IO/DirectoryInfo.cs
@@ -65,7 +65,7 @@ namespace System.IO {
parent = null;
} else {
current = FullPath.Substring (last + 1, len - last);
- if (last == 0 && !Environment.IsRunningOnWindows)
+ if (last == 0)
parent = Path.DirectorySeparatorStr;
else
parent = FullPath.Substring (0, last);
diff --git a/mcs/class/corlib/System.IO/File.cs b/mcs/class/corlib/System.IO/File.cs
index 588a6493d3f..ab5f506b6a8 100644
--- a/mcs/class/corlib/System.IO/File.cs
+++ b/mcs/class/corlib/System.IO/File.cs
@@ -36,7 +36,6 @@
//
using System;
-using System.Text;
namespace System.IO
{
@@ -437,30 +436,6 @@ namespace System.IO
return result;
}
}
-
- public static string ReadAllText (string path)
- {
- return ReadAllText (path, Encoding.UTF8Unmarked);
- }
-
- public static string ReadAllText (string path, Encoding enc)
- {
- using (StreamReader sr = new StreamReader (path, enc)) {
- return sr.ReadToEnd ();
- }
- }
-
- public static void WriteAllText (string path, string contents)
- {
- WriteAllText (path, contents, Encoding.UTF8Unmarked);
- }
-
- public static void WriteAllText (string path, string contents, Encoding enc)
- {
- using (StreamWriter sw = new StreamWriter (path, false, enc)) {
- sw.Write (contents);
- }
- }
#endif
}
}
diff --git a/mcs/class/corlib/System.IO/Path.cs b/mcs/class/corlib/System.IO/Path.cs
index f6a0af31c6b..072225030a8 100644
--- a/mcs/class/corlib/System.IO/Path.cs
+++ b/mcs/class/corlib/System.IO/Path.cs
@@ -445,7 +445,7 @@ namespace System.IO {
int i = 0;
rng.GetNonZeroBytes (buffer);
while ((i < buffer.Length) && (sb.Length < 12)) {
- char c = (char) buffer [i];
+ char c = (char)i;
if (Array.IndexOf (invalid, c) == -1)
sb.Append (c);
i++;
diff --git a/mcs/class/corlib/System.IO/StreamReader.cs b/mcs/class/corlib/System.IO/StreamReader.cs
index 294124740d5..0e829bdabb2 100644
--- a/mcs/class/corlib/System.IO/StreamReader.cs
+++ b/mcs/class/corlib/System.IO/StreamReader.cs
@@ -420,7 +420,7 @@ namespace System.IO {
if (foundCR) // don't include the trailing CR if present
decoded_count--;
- line_builder.Append (decoded_buffer, begin, decoded_count - begin);
+ line_builder.Append (new string (decoded_buffer, begin, decoded_count - begin));
if (ReadBuffer () == 0) {
if (line_builder.Capacity > 32768) {
StringBuilder sb = line_builder;
@@ -433,7 +433,7 @@ namespace System.IO {
begin = pos;
end = FindNextEOL ();
if (end < decoded_count && end >= begin) {
- line_builder.Append (decoded_buffer, begin, end - begin);
+ line_builder.Append (new string (decoded_buffer, begin, end - begin));
if (line_builder.Capacity > 32768) {
StringBuilder sb = line_builder;
line_builder = null;
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ChangeLog b/mcs/class/corlib/System.Runtime.InteropServices/ChangeLog
index 98577ac569c..724ab538b20 100644
--- a/mcs/class/corlib/System.Runtime.InteropServices/ChangeLog
+++ b/mcs/class/corlib/System.Runtime.InteropServices/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * SafeHandle.cs: Update to RTM api
-
2005-11-17 Zoltan Varga <vargaz@gmail.com>
* DefaultParameterValueAttribute.cs: New file.
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs b/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs
index 62ebf95ea4c..e31ce310a00 100644
--- a/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs
+++ b/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs
@@ -32,14 +32,7 @@ namespace System.Runtime.InteropServices
{
[MonoTODO]
public abstract class SafeHandle : CriticalFinalizerObject, IDisposable {
- protected IntPtr handle;
-
- [MonoTODO]
- protected SafeHandle (IntPtr invalidHandleValue, bool ownsHandle)
- {
- throw new NotImplementedException ();
- }
-
+
[MonoTODO]
public void Close () {
throw new NotImplementedException ();
@@ -69,19 +62,7 @@ namespace System.Runtime.InteropServices
public void SetHandleAsInvalid () {
throw new NotImplementedException ();
}
-
- [MonoTODO]
- protected virtual void Dispose (bool disposing) {
- throw new NotImplementedException ();
- }
-
- protected abstract bool ReleaseHandle ();
-
- [MonoTODO]
- protected void SetHandle (IntPtr handle) {
- throw new NotImplementedException ();
- }
-
+
[MonoTODO]
public bool IsClosed {
get {
diff --git a/mcs/class/corlib/System/ChangeLog b/mcs/class/corlib/System/ChangeLog
index 978aac623f4..294b71ea345 100644
--- a/mcs/class/corlib/System/ChangeLog
+++ b/mcs/class/corlib/System/ChangeLog
@@ -3,15 +3,6 @@
* Console.cs: if InternalCodePage returns -1, use the default encoding.
Also match the UTF8 one properly. Patch by wall_john@sohu.com.
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * ModuleHandle.cs : GetPEKind() is not public in 2.0 RTM.
-
-2006-01-16 Alp Toker <alp@atoker.com>
-
- * TimeSpan.cs: Simple implementation of NET 2.0 TryParse() using
- try/catch
-
2006-01-05 Raja R Harinath <rharinath@novell.com>
Fix regressions introduced by the fix to #71300.
diff --git a/mcs/class/corlib/System/ModuleHandle.cs b/mcs/class/corlib/System/ModuleHandle.cs
index d45d385fa13..98bc38156e1 100644
--- a/mcs/class/corlib/System/ModuleHandle.cs
+++ b/mcs/class/corlib/System/ModuleHandle.cs
@@ -59,7 +59,7 @@ namespace System
}
}
- internal void GetPEKind (out PortableExecutableKinds peKind, out ImageFileMachine machine)
+ public void GetPEKind (out PortableExecutableKinds peKind, out ImageFileMachine machine)
{
if (value == IntPtr.Zero)
throw new ArgumentNullException (String.Empty, "Invalid handle");
diff --git a/mcs/class/corlib/System/TimeSpan.cs b/mcs/class/corlib/System/TimeSpan.cs
index dd7c230d845..adc326f1605 100644
--- a/mcs/class/corlib/System/TimeSpan.cs
+++ b/mcs/class/corlib/System/TimeSpan.cs
@@ -331,19 +331,6 @@ namespace System
return p.Execute ();
}
-#if NET_2_0
- public static bool TryParse (string s, out TimeSpan result)
- {
- try {
- result = Parse (s);
- return true;
- } catch {
- result = TimeSpan.Zero;
- return false;
- }
- }
-#endif
-
public TimeSpan Subtract (TimeSpan ts)
{
try {
diff --git a/mcs/class/corlib/Test/System.Collections.Generic/ChangeLog b/mcs/class/corlib/Test/System.Collections.Generic/ChangeLog
index e5a47afe973..0d2074f5d50 100644
--- a/mcs/class/corlib/Test/System.Collections.Generic/ChangeLog
+++ b/mcs/class/corlib/Test/System.Collections.Generic/ChangeLog
@@ -1,16 +1,3 @@
-2006-01-19 Raja R Harinath <rharinath@novell.com>
-
- * DictionaryTest.cs: Remove NotWorking annotations.
- (Empty_CopyTo, Empty_Values_CopyTo): Fix tests to check that
- CopyTo from an empty dictionary does not throw an exception when
- 'index==array.Length'.
- (PlainEnumeratorReturnTest): Check the type of 'Entry' property too.
-
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * DictionaryTest.cs : fixed several tests to not fail under .NET 2.0
- and thus marked some as NotWorking. Numbered some assertions.
-
2005-12-21 Sebastien Pouliot <sebastien@ximian.com>
* ListTest.cs: Added test cases for #77039 for sorting a list with
diff --git a/mcs/class/corlib/Test/System.Collections.Generic/DictionaryTest.cs b/mcs/class/corlib/Test/System.Collections.Generic/DictionaryTest.cs
index ea0d3953d1f..b4ad8323e7b 100644
--- a/mcs/class/corlib/Test/System.Collections.Generic/DictionaryTest.cs
+++ b/mcs/class/corlib/Test/System.Collections.Generic/DictionaryTest.cs
@@ -341,8 +341,10 @@ namespace MonoTests.System.Collections.Generic {
IEnumerator itr = ((IEnumerable)_dictionary).GetEnumerator ();
while (itr.MoveNext ()) {
object o = itr.Current;
- Assert.AreEqual (typeof (KeyValuePair<string,object>), o.GetType (), "Current should return a type of KeyValuePair");
- KeyValuePair<string,object> entry = (KeyValuePair<string,object>) itr.Current;
+ Assert.AreEqual (typeof (DictionaryEntry), o.GetType (), "Current should return a type of DictionaryEntry");
+ DictionaryEntry entry = (DictionaryEntry)itr.Current;
+ if (entry.Key.ToString () == "key4")
+ entry.Value = "value33";
}
Assert.AreEqual ("value4", _dictionary ["key4"].ToString (), "");
}
@@ -358,7 +360,7 @@ namespace MonoTests.System.Collections.Generic {
IEnumerator <KeyValuePair <string, object>> itr = ((IEnumerable <KeyValuePair <string, object>>)_dictionary).GetEnumerator ();
while (itr.MoveNext ()) {
object o = itr.Current;
- Assert.AreEqual (typeof (KeyValuePair <string, object>), o.GetType (), "Current should return a type of KeyValuePair<object,string>");
+ Assert.AreEqual (typeof (KeyValuePair <string, object>), o.GetType (), "Current should return a type of DictionaryEntry");
KeyValuePair <string, object> entry = (KeyValuePair <string, object>)itr.Current;
}
Assert.AreEqual ("value4", _dictionary ["key4"].ToString (), "");
@@ -376,7 +378,9 @@ namespace MonoTests.System.Collections.Generic {
while (itr.MoveNext ()) {
object o = itr.Current;
Assert.AreEqual (typeof (DictionaryEntry), o.GetType (), "Current should return a type of DictionaryEntry");
- DictionaryEntry entry = (DictionaryEntry) itr.Current;
+ DictionaryEntry entry = (DictionaryEntry)itr.Current;
+ if (entry.Key.ToString () == "key4")
+ entry.Value = "value33";
}
Assert.AreEqual ("value4", _dictionary ["key4"].ToString (), "");
@@ -392,17 +396,23 @@ namespace MonoTests.System.Collections.Generic {
int i = 0;
foreach (KeyValuePair <string, object> entry in _dictionary)
+ {
i++;
+ }
Assert.AreEqual(4, i, "fail1: foreach entry failed!");
i = 0;
- foreach (KeyValuePair <string, object> entry in ((IEnumerable)_dictionary))
+ foreach (DictionaryEntry entry in ((IEnumerable)_dictionary))
+ {
i++;
+ }
Assert.AreEqual(4, i, "fail2: foreach entry failed!");
i = 0;
foreach (DictionaryEntry entry in ((IDictionary)_dictionary))
+ {
i++;
+ }
Assert.AreEqual (4, i, "fail3: foreach entry failed!");
}
@@ -490,14 +500,13 @@ namespace MonoTests.System.Collections.Generic {
[Test]
public void PlainEnumeratorReturnTest ()
{
- // Test that we return a KeyValuePair even for non-generic dictionary iteration
+ // Test that we return a DictionaryEntry for non-generic dictionary iteration
_dictionary["foo"] = "bar";
IEnumerator<KeyValuePair<string, object>> enumerator = _dictionary.GetEnumerator();
- Assert.IsTrue(enumerator.MoveNext(), "#1");
- Assert.AreEqual (typeof (KeyValuePair<string,object>), ((IEnumerator)enumerator).Current.GetType (), "#2");
- Assert.AreEqual (typeof (DictionaryEntry), ((IDictionaryEnumerator)enumerator).Entry.GetType (), "#3");
- Assert.AreEqual (typeof (KeyValuePair<string,object>), ((IDictionaryEnumerator)enumerator).Current.GetType (), "#4");
- Assert.AreEqual (typeof (KeyValuePair<string,object>), ((object) enumerator.Current).GetType (), "#5");
+ Assert.IsTrue(enumerator.MoveNext());
+ Assert.IsTrue(((IEnumerator)enumerator).Current is DictionaryEntry);
+ Assert.IsTrue(((IDictionaryEnumerator)enumerator).Current is DictionaryEntry);
+ Assert.IsFalse(((object) enumerator.Current) is DictionaryEntry);
}
[Test, ExpectedException (typeof (InvalidOperationException))]
@@ -606,12 +615,11 @@ namespace MonoTests.System.Collections.Generic {
}
[Test]
- public void Empty_KeysValues_CopyTo ()
+ public void Empty_Values_CopyTo ()
{
Dictionary<int, int> d = new Dictionary<int, int> ();
- int[] array = new int[1];
- d.Keys.CopyTo (array, array.Length);
- d.Values.CopyTo (array, array.Length);
+ int[] array = new int[10];
+ d.Values.CopyTo (array, 0);
}
[Test]
@@ -619,12 +627,8 @@ namespace MonoTests.System.Collections.Generic {
{
Dictionary<int, int> d = new Dictionary<int, int> ();
ICollection c = (ICollection) d;
- DictionaryEntry [] array = new DictionaryEntry [1];
- c.CopyTo (array, array.Length);
-
- ICollection<KeyValuePair<int,int>> c2 = d;
- KeyValuePair<int,int> [] array2 = new KeyValuePair<int,int> [1];
- c2.CopyTo (array2, array2.Length);
+ DictionaryEntry[] array = new DictionaryEntry[1];
+ c.CopyTo (array, 0);
}
}
}
diff --git a/mcs/class/corlib/Test/System.IO/ChangeLog b/mcs/class/corlib/Test/System.IO/ChangeLog
index 221bc0d887c..9773e19a9a6 100644
--- a/mcs/class/corlib/Test/System.IO/ChangeLog
+++ b/mcs/class/corlib/Test/System.IO/ChangeLog
@@ -1,17 +1,8 @@
-2006-01-18 Atsushi Enomoto <atsushi@ximian.com>
-
- * DirectoryInfoTest.cs : don't expect "/" as a top directory on
- Windows.
-
2006-01-13 Ben Maurer <bmaurer@andrew.cmu.edu>
* TextWriterTest.cs: Make sure TextWriter calls the char[],int,int
overload when calling the char[].
-
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * FileTest.cs: Tests tests for read/writealltext.
-
+
2006-01-02 Sebastien Pouliot <sebastien@ximian.com>
* StreamReaderTest.cs: Added test case when reading a new line (see
diff --git a/mcs/class/corlib/Test/System.IO/DirectoryInfoTest.cs b/mcs/class/corlib/Test/System.IO/DirectoryInfoTest.cs
index 766ad1b17e0..8d3dbb1cce7 100644
--- a/mcs/class/corlib/Test/System.IO/DirectoryInfoTest.cs
+++ b/mcs/class/corlib/Test/System.IO/DirectoryInfoTest.cs
@@ -766,11 +766,7 @@ namespace MonoTests.System.IO
public void Parent_Bug77090 ()
{
DirectoryInfo di = new DirectoryInfo ("/home");
- if (Path.DirectorySeparatorChar == '\\') {
- Assert ("/home parent (Windows path)", di.Parent.Name.EndsWith (":\\"));
- }
- else
- AssertEquals ("/home parent", "/", di.Parent.Name);
+ AssertEquals ("/home parent", "/", di.Parent.Name);
AssertNull ("/home parent parent", di.Parent.Parent);
}
}
diff --git a/mcs/class/corlib/Test/System.IO/FileTest.cs b/mcs/class/corlib/Test/System.IO/FileTest.cs
index 561eb48b5dc..3c2635d892a 100644
--- a/mcs/class/corlib/Test/System.IO/FileTest.cs
+++ b/mcs/class/corlib/Test/System.IO/FileTest.cs
@@ -1499,42 +1499,6 @@ namespace MonoTests.System.IO
DeleteFile (fn);
}
-#if NET_2_0
- void TestRWAT (string s)
- {
- string f = Path.GetTempFileName ();
- try {
- File.WriteAllText (f, s);
- string r = File.ReadAllText (f);
- AssertEquals (r, s);
- } finally {
- DeleteFile (f);
- }
- }
- [Test]
- public void ReadWriteAllText ()
- {
- // The MSDN docs said something about
- // not including a final new line. it looks
- // like that was not true. I'm not sure what
- // that was talking about
- TestRWAT ("");
- TestRWAT ("\r");
- TestRWAT ("\n");
- TestRWAT ("\r\n");
- TestRWAT ("a\r");
- TestRWAT ("a\n");
- TestRWAT ("a\r\n");
- TestRWAT ("a\ra");
- TestRWAT ("a\na");
- TestRWAT ("a\r\na");
- TestRWAT ("a");
- TestRWAT ("\r\r");
- TestRWAT ("\n\n");
- TestRWAT ("\r\n\r\n");
- }
-#endif
-
private void DeleteFile (string path)
{
if (File.Exists (path))
diff --git a/mcs/class/corlib/Test/System.Reflection/ChangeLog b/mcs/class/corlib/Test/System.Reflection/ChangeLog
index e194ab2795e..da497efae9d 100644
--- a/mcs/class/corlib/Test/System.Reflection/ChangeLog
+++ b/mcs/class/corlib/Test/System.Reflection/ChangeLog
@@ -1,7 +1,3 @@
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * ModuleTest.cs : ResolveString() does not work under .NET 2.0 either.
-
2006-01-06 Raja R Harinath <rharinath@novell.com>
* PropertyInfoTest.cs: Use newer nunit API.
diff --git a/mcs/class/corlib/Test/System.Reflection/ModuleTest.cs b/mcs/class/corlib/Test/System.Reflection/ModuleTest.cs
index a1d3e242e04..00d4155b4dd 100644
--- a/mcs/class/corlib/Test/System.Reflection/ModuleTest.cs
+++ b/mcs/class/corlib/Test/System.Reflection/ModuleTest.cs
@@ -211,7 +211,7 @@ public class ModuleTest : Assertion
}
}
- [Ignore ("it breaks nunit-console.exe execution under .NET 2.0")]
+ [Category ("NotWorking")]
[Test]
public void ResolveString () {
Type t = typeof (ModuleTest);
diff --git a/mcs/class/corlib/Test/System.Resources/ChangeLog b/mcs/class/corlib/Test/System.Resources/ChangeLog
index 86822fcbecc..964cfec9c2f 100644
--- a/mcs/class/corlib/Test/System.Resources/ChangeLog
+++ b/mcs/class/corlib/Test/System.Resources/ChangeLog
@@ -1,8 +1,3 @@
-2006-01-13 Robert Jordan <robertj@gmx.net>
-
- * ResourceManagerTest.cs: New. Unit tests for ResourceManager.
- See bug #77242.
-
2005-03-31 Sebastien Pouliot <sebastien@ximian.com>
* ResourceReaderCas.cs: New. CAS unit tests for ResourceReader.
diff --git a/mcs/class/corlib/Test/System.Resources/ResourceManagerTest.cs b/mcs/class/corlib/Test/System.Resources/ResourceManagerTest.cs
deleted file mode 100644
index c4fd1acec91..00000000000
--- a/mcs/class/corlib/Test/System.Resources/ResourceManagerTest.cs
+++ /dev/null
@@ -1,68 +0,0 @@
-//
-// ResourceManager.cs:
-// NUnit Test Cases for System.Resources.ResourceManager
-//
-// Authors:
-// Robert Jordan (robertj@gmx.net)
-//
-// Copyright (C) 2005 Novell, Inc. (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Globalization;
-using System.Resources;
-using System.Threading;
-
-using NUnit.Framework;
-
-namespace MonoTests.System.Resources
-{
- [TestFixture]
- public class ResourceManagerTest
- {
- [Test]
- [Category ("NotWorking")]
- public void TestInvariantCulture ()
- {
- Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture;
- ResourceManager rm = ResourceManager.
- CreateFileBasedResourceManager ("MyResources", "Test/resources", null);
- Assert.AreEqual ("Hello World", rm.GetString ("HelloWorld"), "#01");
- Assert.AreEqual ("Hello World", rm.GetObject ("HelloWorld"), "#02");
- }
-
- [Test]
- [Category ("NotWorking")]
- public void TestGermanCulture ()
- {
- Thread.CurrentThread.CurrentUICulture = new CultureInfo ("de-DE");
- ResourceManager rm = ResourceManager.
- CreateFileBasedResourceManager ("MyResources", "Test/resources", null);
- Assert.AreEqual ("Hello World", rm.GetString ("HelloWorld"), "#01");
- Assert.AreEqual ("Hello World", rm.GetObject ("HelloWorld"), "#02");
- Assert.AreEqual ("Hallo Welt", rm.GetString ("deHelloWorld"), "#03");
- Assert.AreEqual ("Hallo Welt", rm.GetObject ("deHelloWorld"), "#04");
- }
- }
-}
diff --git a/mcs/class/corlib/Test/System.Text/ChangeLog b/mcs/class/corlib/Test/System.Text/ChangeLog
index 25cc2603d54..f11e87811ea 100644
--- a/mcs/class/corlib/Test/System.Text/ChangeLog
+++ b/mcs/class/corlib/Test/System.Text/ChangeLog
@@ -1,19 +1,3 @@
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * UnicodeEncodingTest.cs, DecoderReplacementFallbackBufferTest.cs,
- EncoderReplacementFallbackBufferTest.cs : tests were fixed but
- "NotWorking" were not marked correctly.
-
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * UTF7EncodingTest.cs UTF8EncodingTest.cs UnicodeEncodingTest.cs :
- due to the introduction of fallback, some of their internals have
- changed. Thus marked some tests as NotWorking.
- * DecoderReplacementFallbackBufferTest.cs,
- EncoderReplacementFallbackBufferTest.cs :
- some behaviors have changed since beta2, so marked old tests as
- NotWorking.
-
2005-12-05 Sebastien Pouliot <sebastien@ximian.com>
* StringBuilderTest.cs: Test case MaxCapacity_Overflow3 doesn't work
diff --git a/mcs/class/corlib/Test/System.Text/DecoderReplacementFallbackBufferTest.cs b/mcs/class/corlib/Test/System.Text/DecoderReplacementFallbackBufferTest.cs
index 9aab4b8147c..86d07841316 100644
--- a/mcs/class/corlib/Test/System.Text/DecoderReplacementFallbackBufferTest.cs
+++ b/mcs/class/corlib/Test/System.Text/DecoderReplacementFallbackBufferTest.cs
@@ -69,21 +69,20 @@ namespace MonoTests.System.Text
}
[Test]
- [Category ("NotWorking")]
public void Iterate ()
{
Assert.AreEqual ('\0', Encoding.UTF8.DecoderFallback
.CreateFallbackBuffer ().GetNextChar (), "#1");
Buffer b = NewInstance ();
-// Assert.AreEqual (1, b.Remaining, "#2");
-// Assert.AreEqual ('?', b.GetNextChar (), "#3");
+ Assert.AreEqual (1, b.Remaining, "#2");
+ Assert.AreEqual ('?', b.GetNextChar (), "#3");
Assert.AreEqual (0, b.Remaining, "#4");
Assert.AreEqual ('\0', b.GetNextChar (), "#5");
-// Assert.IsTrue (b.MovePrevious (), "#6");
-// Assert.AreEqual (1, b.Remaining, "#7");
+ Assert.IsTrue (b.MovePrevious (), "#6");
+ Assert.AreEqual (1, b.Remaining, "#7");
Assert.IsFalse (b.MovePrevious (), "#8");
-// Assert.AreEqual ('?', b.GetNextChar (), "#9");
+ Assert.AreEqual ('?', b.GetNextChar (), "#9");
}
}
}
diff --git a/mcs/class/corlib/Test/System.Text/EncoderReplacementFallbackBufferTest.cs b/mcs/class/corlib/Test/System.Text/EncoderReplacementFallbackBufferTest.cs
index 2c700ade783..9abf2fa0ec4 100644
--- a/mcs/class/corlib/Test/System.Text/EncoderReplacementFallbackBufferTest.cs
+++ b/mcs/class/corlib/Test/System.Text/EncoderReplacementFallbackBufferTest.cs
@@ -69,21 +69,20 @@ namespace MonoTests.System.Text
}
[Test]
- [Category ("NotWorking")]
public void Iterate ()
{
Assert.AreEqual ('\0', Encoding.UTF8.EncoderFallback
.CreateFallbackBuffer ().GetNextChar (), "#1");
Buffer b = NewInstance ();
-// Assert.AreEqual (1, b.Remaining, "#2");
-// Assert.AreEqual ('?', b.GetNextChar (), "#3");
+ Assert.AreEqual (1, b.Remaining, "#2");
+ Assert.AreEqual ('?', b.GetNextChar (), "#3");
Assert.AreEqual (0, b.Remaining, "#4");
Assert.AreEqual ('\0', b.GetNextChar (), "#5");
-// Assert.IsTrue (b.MovePrevious (), "#6");
-// Assert.AreEqual (1, b.Remaining, "#7");
+ Assert.IsTrue (b.MovePrevious (), "#6");
+ Assert.AreEqual (1, b.Remaining, "#7");
Assert.IsFalse (b.MovePrevious (), "#8");
-// Assert.AreEqual ('?', b.GetNextChar (), "#9");
+ Assert.AreEqual ('?', b.GetNextChar (), "#9");
}
}
}
diff --git a/mcs/class/corlib/Test/System.Text/UTF7EncodingTest.cs b/mcs/class/corlib/Test/System.Text/UTF7EncodingTest.cs
index 45813ba0c56..f1786a99ce1 100644
--- a/mcs/class/corlib/Test/System.Text/UTF7EncodingTest.cs
+++ b/mcs/class/corlib/Test/System.Text/UTF7EncodingTest.cs
@@ -230,17 +230,10 @@ namespace MonoTests.System.Text
}
[Test]
-#if NET_2_0
- [Category ("NotWorking")]
-#endif
public void TestMaxByteCount()
{
UTF7Encoding UTF7enc = new UTF7Encoding ();
-#if NET_2_0
- Assertion.AssertEquals ("UTF #1", 152, UTF7enc.GetMaxByteCount(50));
-#else
Assertion.AssertEquals ("UTF #1", 136, UTF7enc.GetMaxByteCount(50));
-#endif
}
}
}
diff --git a/mcs/class/corlib/Test/System.Text/UTF8EncodingTest.cs b/mcs/class/corlib/Test/System.Text/UTF8EncodingTest.cs
index b743c49a4c3..fa3152b10a6 100644
--- a/mcs/class/corlib/Test/System.Text/UTF8EncodingTest.cs
+++ b/mcs/class/corlib/Test/System.Text/UTF8EncodingTest.cs
@@ -93,33 +93,17 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [Category ("NotWorking")]
-#endif
public void TestMaxCharCount()
{
UTF8Encoding UTF8enc = new UTF8Encoding ();
-#if NET_2_0
- // hmm, where is this extra 1 coming from?
- Assertion.AssertEquals ("UTF #1", 51, UTF8enc.GetMaxCharCount(50));
-#else
Assertion.AssertEquals ("UTF #1", 50, UTF8enc.GetMaxCharCount(50));
-#endif
}
[Test]
-#if NET_2_0
- [Category ("NotWorking")]
-#endif
public void TestMaxByteCount()
{
UTF8Encoding UTF8enc = new UTF8Encoding ();
-#if NET_2_0
- // maybe under .NET 2.0 insufficient surrogate pair is just not handled, and 3 is Preamble size.
- Assertion.AssertEquals ("UTF #1", 153, UTF8enc.GetMaxByteCount(50));
-#else
Assertion.AssertEquals ("UTF #1", 200, UTF8enc.GetMaxByteCount(50));
-#endif
}
// regression for bug #59648
@@ -706,10 +690,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_511 ()
@@ -721,10 +701,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_512 ()
@@ -736,10 +712,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_513 ()
@@ -751,10 +723,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_514 ()
@@ -766,10 +734,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_515 ()
@@ -781,10 +745,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_516 ()
@@ -796,10 +756,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_1_UTF16Surrogates_517 ()
@@ -811,10 +767,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_521 ()
@@ -827,10 +779,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_522 ()
@@ -843,10 +791,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_523 ()
@@ -859,10 +803,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_524 ()
@@ -875,10 +815,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_525 ()
@@ -891,10 +827,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_526 ()
@@ -907,10 +839,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_527 ()
@@ -923,10 +851,6 @@ namespace MonoTests.System.Text {
}
[Test]
-#if NET_2_0
- [ExpectedException (typeof (DecoderFallbackException))]
- [Category ("NotWorking")]
-#endif
// MS Fx 1.1 accept this
// [ExpectedException (typeof (DecoderException))]
public void T5_IllegalCodePosition_2_PairedUTF16Surrogates_528 ()
diff --git a/mcs/class/corlib/Test/System.Text/UnicodeEncodingTest.cs b/mcs/class/corlib/Test/System.Text/UnicodeEncodingTest.cs
index a74dc3238ef..4f4b1b6c342 100644
--- a/mcs/class/corlib/Test/System.Text/UnicodeEncodingTest.cs
+++ b/mcs/class/corlib/Test/System.Text/UnicodeEncodingTest.cs
@@ -136,34 +136,17 @@ namespace MonoTests.System.Text
}
[Test]
-#if NET_2_0
- [Category ("NotWorking")]
-#endif
public void TestMaxCharCount()
{
UnicodeEncoding UnicodeEnc = new UnicodeEncoding ();
-#if NET_2_0
- // where is this extra 1 coming from?
- Assertion.AssertEquals ("UTF #1", 25, UnicodeEnc.GetMaxCharCount(51));
-#else
Assertion.AssertEquals ("UTF #1", 25, UnicodeEnc.GetMaxCharCount(50));
-#endif
}
[Test]
-#if NET_2_0
- [Category ("NotWorking")]
-#endif
public void TestMaxByteCount()
{
UnicodeEncoding UnicodeEnc = new UnicodeEncoding ();
-#if NET_2_0
- // is this extra 2 BOM?
- Assertion.AssertEquals ("UTF #1", 102, UnicodeEnc.GetMaxByteCount(50));
-#else
- UnicodeEncoding UnicodeEnc = new UnicodeEncoding ();
Assertion.AssertEquals ("UTF #1", 100, UnicodeEnc.GetMaxByteCount(50));
-#endif
}
}
}
diff --git a/mcs/class/corlib/Test/System.Threading/ChangeLog b/mcs/class/corlib/Test/System.Threading/ChangeLog
index fafd9048c98..0d4008cc68c 100644
--- a/mcs/class/corlib/Test/System.Threading/ChangeLog
+++ b/mcs/class/corlib/Test/System.Threading/ChangeLog
@@ -1,13 +1,3 @@
-2006-01-18 Atsushi Enomoto <atsushi@ximian.com>
-
- * ThreadTest.cs : mark not-working tests as [Ignore] since it blocks
- run-test-ondotnet under 2.0 profile.
-
-2006-01-18 Atsushi Enomoto <atsushi@ximian.com>
-
- * MutexTest.cs : Marked TestWaitAndFoget1 as [Ignore]. Under
- .NET 2.0 it breaks nunit-console (breaks its own AppDomain).
-
2005-10-06 Sebastien Pouliot <sebastien@ximian.com>
* ThreadTest.cs: Added regression test for #76332 when an IPrincipal
diff --git a/mcs/class/corlib/Test/System.Threading/MutexTest.cs b/mcs/class/corlib/Test/System.Threading/MutexTest.cs
index 2fa5a2b3082..0104086bb8a 100644
--- a/mcs/class/corlib/Test/System.Threading/MutexTest.cs
+++ b/mcs/class/corlib/Test/System.Threading/MutexTest.cs
@@ -144,7 +144,6 @@ namespace MonoTests.System.Threading
// Hangs
[Category("NotWorking")]
- [Ignore ("It hangs and breaks the domain which runs nunit-console itself")]
public void TestWaitAndFoget1()
{
Mutex Sem = new Mutex(false);
diff --git a/mcs/class/corlib/Test/System.Threading/ThreadTest.cs b/mcs/class/corlib/Test/System.Threading/ThreadTest.cs
index 39c445c9a38..1ff215e79ad 100644
--- a/mcs/class/corlib/Test/System.Threading/ThreadTest.cs
+++ b/mcs/class/corlib/Test/System.Threading/ThreadTest.cs
@@ -476,7 +476,6 @@ namespace MonoTests.System.Threading {
}
[Test]
- [Ignore ("see comment below.")]
public void CurrentPrincipal_PrincipalPolicy_NoPrincipal ()
{
// note: switching from PrincipalPolicy won't work inside the same thread
@@ -492,7 +491,6 @@ namespace MonoTests.System.Threading {
}
[Test]
- [Ignore ("see comment below.")]
public void CurrentPrincipal_PrincipalPolicy_UnauthenticatedPrincipal ()
{
// note: switching from PrincipalPolicy won't work inside the same thread
diff --git a/mcs/class/corlib/Test/System/ChangeLog b/mcs/class/corlib/Test/System/ChangeLog
index 83509b6ab05..36fa209b198 100644
--- a/mcs/class/corlib/Test/System/ChangeLog
+++ b/mcs/class/corlib/Test/System/ChangeLog
@@ -1,11 +1,3 @@
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * StringTest.cs : numbered some assertions.
-
-2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
-
- * ModuleHandleTest.cs : GetPEKind() is not public in 2.0 RTM.
-
2006-01-03 Zoltan Varga <vargaz@gmail.com>
* ActivatorTest.cs: Add Nullable tests.
diff --git a/mcs/class/corlib/Test/System/ModuleHandleTest.cs b/mcs/class/corlib/Test/System/ModuleHandleTest.cs
index b966c5aa797..976de22253a 100644
--- a/mcs/class/corlib/Test/System/ModuleHandleTest.cs
+++ b/mcs/class/corlib/Test/System/ModuleHandleTest.cs
@@ -159,7 +159,6 @@ public class ModuleHandleTest : Assertion
module.ResolveMethodHandle (0x60f0001);
}
-/* it is not public in 2.0 RTM.
[Test]
public void GetPEKind () {
PortableExecutableKinds pe_kind;
@@ -178,7 +177,6 @@ public class ModuleHandleTest : Assertion
ModuleHandle.EmptyHandle.GetPEKind (out pe_kind, out machine);
}
-*/
}
}
diff --git a/mcs/class/corlib/Test/System/StringTest.cs b/mcs/class/corlib/Test/System/StringTest.cs
index 424a42e8311..8d851dc6fe2 100644
--- a/mcs/class/corlib/Test/System/StringTest.cs
+++ b/mcs/class/corlib/Test/System/StringTest.cs
@@ -544,20 +544,20 @@ public class StringTest : Assertion
Assert("null string error", errorThrown);
AssertEquals("basic char index", 1, s1.IndexOf('r'));
- AssertEquals("basic char index 2", 2, s1.IndexOf('i'));
+ AssertEquals("basic char index", 2, s1.IndexOf('i'));
AssertEquals("basic char index - no", -1, s1.IndexOf('q'));
AssertEquals("basic string index", 1, s1.IndexOf("rig"));
- AssertEquals("basic string index 2", 2, s1.IndexOf("i"));
- AssertEquals("basic string index 3", 0, "".IndexOf(""));
- AssertEquals("basic string index 4", 0, "ABC".IndexOf(""));
+ AssertEquals("basic string index", 2, s1.IndexOf("i"));
+ AssertEquals("basic string index", 0, "".IndexOf(""));
+ AssertEquals("basic string index", 0, "ABC".IndexOf(""));
AssertEquals("basic string index - no", -1, s1.IndexOf("rag"));
AssertEquals("stepped char index", 1, s1.IndexOf('r', 1));
- AssertEquals("stepped char index 2", 2, s1.IndexOf('i', 1));
- AssertEquals("stepped char index 3", 4, s1.IndexOf('i', 3));
- AssertEquals("stepped char index 4", -1, s1.IndexOf('i', 5));
- AssertEquals("stepped char index 5", -1, s1.IndexOf('l', s1.Length));
+ AssertEquals("stepped char index", 2, s1.IndexOf('i', 1));
+ AssertEquals("stepped char index", 4, s1.IndexOf('i', 3));
+ AssertEquals("stepped char index", -1, s1.IndexOf('i', 5));
+ AssertEquals("stepped char index", -1, s1.IndexOf('l', s1.Length));
AssertEquals("stepped limited char index",
1, s1.IndexOf('r', 1, 1));
diff --git a/mcs/class/corlib/Test/resources/MyResources.de.resources b/mcs/class/corlib/Test/resources/MyResources.de.resources
deleted file mode 100644
index acc57a03ef9..00000000000
--- a/mcs/class/corlib/Test/resources/MyResources.de.resources
+++ /dev/null
Binary files differ
diff --git a/mcs/class/System.Web/Test/System.Web.Compilation/ChangeLog b/mcs/class/corlib/corlib_plattest.dll.excludes
index e69de29bb2d..e69de29bb2d 100644
--- a/mcs/class/System.Web/Test/System.Web.Compilation/ChangeLog
+++ b/mcs/class/corlib/corlib_plattest.dll.excludes
diff --git a/mcs/class/corlib/corlib_res.dll.excludes b/mcs/class/corlib/corlib_res.dll.excludes
new file mode 100644
index 00000000000..688550ea906
--- /dev/null
+++ b/mcs/class/corlib/corlib_res.dll.excludes
@@ -0,0 +1,22 @@
+System/Object.cs
+System/ValueType.cs
+System/Enum.cs
+System/Delegate.cs
+System/MulticastDelegate.cs
+System.Runtime.CompilerServices/RuntimeHelpers.cs
+System/Decimal.cs
+System/DecimalFormatter.cs
+System/MonoType.cs
+System/Array.cs
+System/String.cs
+System/Console.cs
+System/RuntimeTypeHandle.cs
+System/ArgIterator.cs
+System/ICloneable.cs
+System.Collections/Queue.cs
+System.Collections/ICollection.cs
+System.Collections/IEnumerator.cs
+System.Collections/IEnumerable.cs
+System.Collections/IList.cs
+System.Reflection/TargetInvocationException.cs
+System.Security.Permissions/SecurityPermissionAttribute.cs
diff --git a/mcs/class/corlib/corlib_test.dll.sources b/mcs/class/corlib/corlib_test.dll.sources
index c0f2f2ab2b8..3ea294e0f20 100644
--- a/mcs/class/corlib/corlib_test.dll.sources
+++ b/mcs/class/corlib/corlib_test.dll.sources
@@ -120,7 +120,6 @@ System.Reflection/ModuleTest.cs
System.Reflection/StrongNameKeyPairTest.cs
System/ResolveEventArgsTest.cs
System.Resources/ResourceReaderTest.cs
-System.Resources/ResourceManagerTest.cs
System.Runtime.CompilerServices/RuntimeHelpersTest.cs
System.Runtime.InteropServices/GCHandleTest.cs
System.Runtime.InteropServices/MarshalTest.cs
diff --git a/mcs/errors/ChangeLog b/mcs/errors/ChangeLog
index cecb5b496aa..e8e9461b28f 100644
--- a/mcs/errors/ChangeLog
+++ b/mcs/errors/ChangeLog
@@ -1,19 +1,3 @@
-2006-01-18 Raja R Harinath <rharinath@novell.com>
-
- * cs1026-2.cs: New test from #76656.
-
-2006-01-17 Raja R Harinath <rharinath@novell.com>
-
- * cs0201-2.cs, cs0201-3.cs: New tests from #76824.
-
-2006-01-16 Raja R Harinath <rharinath@novell.com>
-
- * cs1654.cs, cs1654-2, cs1656-4: New tests from #76874.
-
-2006-01-11 Raja R Harinath <rharinath@novell.com>
-
- * cs0023-3.cs: New test from #77204.
-
2006-01-06 Ankit Jain <jankit@novell.com>
* known-issues-gmcs: Removed cs0619-18.cs and cs0619-24.cs (working now).
diff --git a/mcs/errors/cs0023-3.cs b/mcs/errors/cs0023-3.cs
deleted file mode 100644
index 5ce866d779c..00000000000
--- a/mcs/errors/cs0023-3.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-// cs0023-3.cs: The `.' operator can not be applied to operands of type 'void'
-// Line: 12
-
-using System;
-
-public class Testing
-{
- public static void DoNothing() {}
-
- public static void Main()
- {
- Console.WriteLine(DoNothing().ToString());
- }
-}
diff --git a/mcs/errors/cs0165-11.cs b/mcs/errors/cs0165-11.cs
index ad5c1ee3015..ad5c1ee3015 100644..100755
--- a/mcs/errors/cs0165-11.cs
+++ b/mcs/errors/cs0165-11.cs
diff --git a/mcs/errors/cs0165-8.cs b/mcs/errors/cs0165-8.cs
index b6f8ddd5dc3..b6f8ddd5dc3 100644..100755
--- a/mcs/errors/cs0165-8.cs
+++ b/mcs/errors/cs0165-8.cs
diff --git a/mcs/errors/cs0201-2.cs b/mcs/errors/cs0201-2.cs
deleted file mode 100644
index 260186d2df6..00000000000
--- a/mcs/errors/cs0201-2.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-// cs0201-2.cs: Only assignment, call, increment, decrement, and new object expressions can be used as a statement
-// Line: 7
-
-class T {
- static string XX;
- static void Main () {
- T.XX;
- }
-}
diff --git a/mcs/errors/cs0201-3.cs b/mcs/errors/cs0201-3.cs
deleted file mode 100644
index 623fd7fea4f..00000000000
--- a/mcs/errors/cs0201-3.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-// cs0201-3.cs: Only assignment, call, increment, decrement, and new object expressions can be used as a statement
-// Line: 7
-
-class T {
- static string XX {
- get {return "";}
- }
- static void Main () {
- T.XX;
- }
-}
diff --git a/mcs/errors/cs1026-2.cs b/mcs/errors/cs1026-2.cs
deleted file mode 100644
index 2ef8ebfba3f..00000000000
--- a/mcs/errors/cs1026-2.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-// cs1026-2.cs: Expecting `)'
-// Line: 10
-
-using System;
-
-class Test {
- static void Main ()
- {
- string uri = "http://localhost/";
- int default_port = (uri.StartsWith ("http://") ? 80 : -1;
- }
-}
diff --git a/mcs/errors/cs1654-2.cs b/mcs/errors/cs1654-2.cs
deleted file mode 100644
index 1305053eb43..00000000000
--- a/mcs/errors/cs1654-2.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-// cs1654-2.cs: Cannot assign to members of `q' because it is a `foreach iteration variable'
-// Line: 22
-
-using System.Collections;
-
-struct P {
- public int x;
-}
-
-struct Q {
- public P p;
-}
-
-class Test {
- static IEnumerable foo () { return null; }
-
- static void Main ()
- {
- IEnumerable f = foo ();
- if (f != null)
- foreach (Q q in f)
- q.p.x = 0;
- }
-}
diff --git a/mcs/errors/cs1654.cs b/mcs/errors/cs1654.cs
deleted file mode 100644
index b9b316ea09a..00000000000
--- a/mcs/errors/cs1654.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-// cs1654.cs: Cannot assign to members of `p' because it is a `foreach iteration variable'
-// Line: 18
-
-using System.Collections;
-
-struct P {
- public int x;
-}
-
-class Test {
- static IEnumerable foo () { return null; }
-
- static void Main ()
- {
- IEnumerable f = foo ();
- if (f != null)
- foreach (P p in f)
- p.x = 0;
- }
-}
diff --git a/mcs/errors/cs1656-4.cs b/mcs/errors/cs1656-4.cs
deleted file mode 100644
index 491fd7f3f1e..00000000000
--- a/mcs/errors/cs1656-4.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-// cs1656-4.cs: Cannot assign to `i' because it is a `foreach iteration variable'
-// Line: 14
-
-using System.Collections;
-
-class Test {
- static IEnumerable foo () { return null; }
-
- static void Main ()
- {
- IEnumerable f = foo ();
- if (f != null)
- foreach (int i in f)
- i = 0;
- }
-}
diff --git a/mcs/errors/gcs0021.cs b/mcs/errors/gcs0021.cs
index 0c2ff6b1921..0c2ff6b1921 100644..100755
--- a/mcs/errors/gcs0021.cs
+++ b/mcs/errors/gcs0021.cs
diff --git a/mcs/errors/gcs0121.cs b/mcs/errors/gcs0121.cs
deleted file mode 100755
index 39711b8a9f1..00000000000
--- a/mcs/errors/gcs0121.cs
+++ /dev/null
@@ -1,25 +0,0 @@
-// CS0121: The call is ambiguous between the following methods or properties: `Foo<int,int>.Test<>(in int)' and `Foo<int,int>.Test<>(in int)'
-// Line: 23
-using System;
-
-public class Foo<T,U>
-{
- public void Test (T index)
- {
- Console.WriteLine ("Test 1: {0}", index);
- }
-
- public void Test (U index)
- {
- Console.WriteLine ("Test 2: {0}", index);
- }
-}
-
-class X
-{
- static void Main ()
- {
- Foo<int,int> foo = new Foo<int,int> ();
- foo.Test (3);
- }
-}
diff --git a/mcs/errors/known-issues-gmcs b/mcs/errors/known-issues-gmcs
index f4931b3f6a4..00e35265e26 100644
--- a/mcs/errors/known-issues-gmcs
+++ b/mcs/errors/known-issues-gmcs
@@ -13,6 +13,7 @@
cs0229-2.cs
cs0229.cs NO ERROR
+cs0231-2.cs
cs0525.cs
cs0526.cs
cs0531.cs
@@ -24,6 +25,7 @@ cs0560.cs
cs0567.cs
cs0612-2.cs NO ERROR
cs0619-42.cs
+cs0628-3.cs NO ERROR
cs0631-2.cs
cs0647-3.cs
cs1035.cs
diff --git a/mcs/errors/known-issues-mcs b/mcs/errors/known-issues-mcs
index 59b82912c51..5b7227669b7 100644
--- a/mcs/errors/known-issues-mcs
+++ b/mcs/errors/known-issues-mcs
@@ -13,6 +13,7 @@
cs0229-2.cs
cs0229.cs NO ERROR
+cs0231-2.cs
cs0525.cs
cs0526.cs
cs0547.cs
@@ -31,4 +32,4 @@ cs1525.cs
cs1528.cs
cs1586.cs
cs1641.cs
-cs1670-2.cs
+cs1670-2.cs \ No newline at end of file
diff --git a/mcs/gmcs/ChangeLog b/mcs/gmcs/ChangeLog
index f662515dd0b..7313b6f8fd2 100644
--- a/mcs/gmcs/ChangeLog
+++ b/mcs/gmcs/ChangeLog
@@ -19,57 +19,6 @@
14.4.2.2 of the spec: if two methods unify for some type parameter
substitution, we need to pick the more specific one.
-2006-01-18 Raja R Harinath <rharinath@novell.com>
-
- Fix #76656, cs0231-2.cs.
- * cs-parser.jay (formal_parameter_list): Make error case catch
- more issues.
- (parenthesized_expression_0): Add CS1026 check.
- (invocation_expression): Remove unused { $$ = lexer.Location }.
-
-2006-01-17 Raja R Harinath <rharinath@novell.com>
-
- Fix #76824.
- * cs-parser.jay (statement_expression): Don't list out the
- individual statement-expressions. Convert syntax error into
- CS0201 check.
-
-2006-01-16 Raja R Harinath <rharinath@novell.com>
-
- Fix #76874.
- * ecore.cs (MemberAccess.CheckIntermediateModification): Remove.
- (UnboxCast.DoResolveLValue): New. Move CS0445 check from
- CheckIntermediateModification.
- (FieldExpr.DoResolve): Add new two-argument version that
- allows us to resolve the InstanceExpression as an lvalue.
- The one-argument variant is now just a wrapper.
- (FieldExpr.DoResolveLValue): Use two-argument DoResolve.
- Resolve the lhs as an lvalue if the it has a value type.
- (FieldExpr.AssignToReadonly): Move CS1648 and CS1650 checks
- from Assign.DoResolve.
- (PropertyExpr.InstanceResolve): Allow InstanceExpression to be
- resolved as an lvalue.
- (PropertyExpr.DoResolve): Update.
- (PropertyExpr.DoResolveLValue): Resolve the lhs as an lvalue if it
- has a value type. Move CS1612 check here from
- CheckIntermediateModification.
- * assign.cs (Assign.DoResolve): Remove CS1648 and CS1650 checks.
- * expression.cs (EmptyExpression.OutAccess): New. Used as the
- 'right_side' of a ResolveLValue on an 'out' argument.
- (EmptyExpression.LValueMemberAccess): New. Used as the
- 'right_side' of a propagated ResolveLValue on a value type.
- (LocalVariableReference.DoResolveBase): Recognize
- EmptyExpression.OutAccess and EmptyExpression.LValueMemberAccess.
- Add CS1654 check.
- (Argument.Resolve): Use EmptyExpression.OutAccess rather than
- EmptyExpression.Null.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * typemanager.cs : added IsGenericParameter(). In gmcs it returns
- Type.IsGenericParameter(). Fixed bug #77183.
- * doc.cs : it is now identical to doc.cs in mcs.
-
2006-01-16 Martin Baulig <martin@ximian.com>
* generic.cs (ConstraintChecker.CheckConstraint): Fix #77167.
@@ -161,6 +110,20 @@
Fix #77035.
* expression.cs (ComposedCast.GetSignatureForError): Define.
+2006-01-10 Martin Baulig <martin@ximian.com>
+
+ * generic.cs
+ (TypeParameter.InflateConstraints): New public method.
+
+ * iterators.cs (Iterator.DefineNestedTypes): Also inflate the
+ constraints; fixes #77042.
+
+2006-01-10 Martin Baulig <martin@ximian.com>
+
+ * anonymous.cs (ScopeInfo.EmitScopeType): Use the `CurrentType'
+ instead of the `TypeBuilder' for this "<>THIS" variable; fixes
+ #77061.
+
2006-01-05 Jb Evain <jbevain@gmail.com>
* class.cs (Property.Define, Indexer.Define): do not tag the
diff --git a/mcs/gmcs/assign.cs b/mcs/gmcs/assign.cs
index ddc3e3d41ba..6b81d51f4b6 100644
--- a/mcs/gmcs/assign.cs
+++ b/mcs/gmcs/assign.cs
@@ -400,6 +400,21 @@ namespace Mono.CSharp {
}
}
+ FieldExpr field_exp = target as FieldExpr;
+ if (field_exp != null && field_exp.DeclaringType.IsValueType && !ec.IsConstructor && !ec.IsFieldInitializer) {
+ field_exp = field_exp.InstanceExpression as FieldExpr;
+ if (field_exp != null && field_exp.FieldInfo.IsInitOnly) {
+ if (field_exp.IsStatic) {
+ Report.Error (1650, loc, "Fields of static readonly field `{0}' cannot be assigned to (except in a static constructor or a variable initializer)",
+ field_exp.GetSignatureForError ());
+ } else {
+ Report.Error (1648, loc, "Members of readonly field `{0}' cannot be modified (except in a constructor or a variable initializer)",
+ field_exp.GetSignatureForError ());
+ }
+ return null;
+ }
+ }
+
if (!(target is IAssignMethod) && (target.eclass != ExprClass.EventAccess)) {
Report.Error (131, loc,
"Left hand of an assignment must be a variable, " +
diff --git a/mcs/gmcs/cs-parser.jay b/mcs/gmcs/cs-parser.jay
index cbd8f95dfb0..fc62f9fc2c5 100644
--- a/mcs/gmcs/cs-parser.jay
+++ b/mcs/gmcs/cs-parser.jay
@@ -1244,13 +1244,13 @@ formal_parameter_list
$$ = new Parameters (pars, true);
}
- | parameter_array COMMA error
+ | parameter_array COMMA fixed_parameters
{
if ($1 != null)
Report.Error (231, ((Parameter) $1).Location, "A params parameter must be the last parameter in a formal parameter list");
$$ = null;
}
- | ARGLIST COMMA error
+ | ARGLIST COMMA fixed_parameters
{
Report.Error (257, (Location) $1, "An __arglist parameter must be the last parameter in a formal parameter list");
$$ = null;
@@ -2975,7 +2975,6 @@ parenthesized_expression_0
// CLOSE_PARENS_CAST, CLOSE_PARENS_NO_CAST, CLOSE_PARENS_OPEN_PARENS
// or CLOSE_PARENS_MINUS.
}
- | OPEN_PARENS expression error { CheckToken (1026, yyToken, "Expecting ')'", lexer.Location); }
;
parenthesized_expression
@@ -2990,7 +2989,7 @@ parenthesized_expression
// in Binary.DoResolve().
$$ = new ParenthesizedExpression ((Expression) $1);
}
- ;
+ ;;
member_access
: primary_expression DOT IDENTIFIER opt_type_argument_list
@@ -3012,12 +3011,15 @@ predefined_type
;
invocation_expression
- : primary_expression OPEN_PARENS opt_argument_list CLOSE_PARENS
+ : primary_expression {
+ $$ = lexer.Location;
+ } OPEN_PARENS opt_argument_list CLOSE_PARENS
{
- if ($1 == null)
- Report.Error (1, (Location) $2, "Parse error");
- else
- $$ = new Invocation ((Expression) $1, (ArrayList) $3);
+ if ($1 == null) {
+ Location l = (Location) $3;
+ Report.Error (1, l, "Parse error");
+ }
+ $$ = new Invocation ((Expression) $1, (ArrayList) $4);
}
| parenthesized_expression_0 CLOSE_PARENS_OPEN_PARENS OPEN_PARENS CLOSE_PARENS
{
@@ -4238,7 +4240,10 @@ local_constant_declaration
;
expression_statement
- : statement_expression SEMICOLON { $$ = $1; }
+ : statement_expression SEMICOLON
+ {
+ $$ = $1;
+ }
;
//
@@ -4246,18 +4251,14 @@ expression_statement
// because statement_expression is used for example in for_statement
//
statement_expression
- : expression
- {
- Expression expr = (Expression) $1;
- ExpressionStatement s = expr as ExpressionStatement;
- if (s == null) {
- Report.Error (201, expr.Location, "Only assignment, call, increment, decrement, and new object expressions can be used as a statement");
- $$ = null;
- }
- $$ = new StatementExpression (s);
- }
- | error
- {
+ : invocation_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | object_creation_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | assignment_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | post_increment_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | post_decrement_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | pre_increment_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | pre_decrement_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | error {
Report.Error (1002, GetLocation ($1), "Expecting `;'");
$$ = null;
}
@@ -5272,7 +5273,6 @@ public CSharpParser (SeekableStreamReader reader, SourceFile file, ArrayList def
public void parse ()
{
- int errors = Report.Errors;
try {
if (yacc_verbose_flag > 1)
yyparse (lexer, new yydebug.yyDebugSimple ());
@@ -5285,8 +5285,7 @@ public void parse ()
// Removed for production use, use parser verbose to get the output.
//
// Console.WriteLine (e);
- if (Report.Errors == errors)
- Report.Error (-25, lexer.Location, "Parsing error");
+ Report.Error (-25, lexer.Location, "Parsing error");
if (yacc_verbose_flag > 0)
Console.WriteLine (e);
}
@@ -5296,10 +5295,11 @@ public void parse ()
void CheckToken (int error, int yyToken, string msg, Location loc)
{
- if (yyToken >= Token.FIRST_KEYWORD && yyToken <= Token.LAST_KEYWORD)
- Report.Error (error, loc, "{0}: `{1}' is a keyword", msg, yyNames [yyToken].ToLower ());
- else
- Report.Error (error, loc, msg);
+ if (yyToken >= Token.FIRST_KEYWORD && yyToken <= Token.LAST_KEYWORD){
+ Report.Error (error, loc, String.Format ("{0}: `{1}' is a keyword", msg, yyNames [yyToken].ToLower ()));
+ return;
+ }
+ Report.Error (error, loc, msg);
}
void CheckIdentifierToken (int yyToken, Location loc)
diff --git a/mcs/gmcs/doc.cs b/mcs/gmcs/doc.cs
index 5dc90161d3a..a0c81d475da 100644
--- a/mcs/gmcs/doc.cs
+++ b/mcs/gmcs/doc.cs
@@ -9,7 +9,6 @@
// (C) 2004 Novell, Inc.
//
//
-#if ! BOOTSTRAP_WITH_OLDLIB
using System;
using System.Collections;
using System.Collections.Specialized;
@@ -30,16 +29,8 @@ namespace Mono.CSharp {
//
// Support class for XML documentation.
//
-#if NET_2_0
- static
-#else
- abstract
-#endif
- public class DocUtil
+ public static class DocUtil
{
-#if !NET_2_0
- private DocUtil () {}
-#endif
// TypeContainer
//
@@ -706,7 +697,7 @@ namespace Mono.CSharp {
// delegate must not be referenced with args
&& (!type.IsSubclassOf (typeof (System.Delegate))
|| parameterTypes == null)) {
- string result = GetSignatureForDoc (type)
+ string result = type.FullName.Replace ("+", ".")
+ (bracePos < 0 ? String.Empty : signature.Substring (bracePos));
xref.SetAttribute ("cref", "T:" + result);
return; // a type
@@ -729,7 +720,7 @@ namespace Mono.CSharp {
// to get its name, since mi
// could be from DeclaringType
// for nested types.
- xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + GetSignatureForDoc (fm.Type) + "." + memberName + GetParametersFormatted (mi));
+ xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + fm.Type.FullName.Replace ("+", ".") + "." + memberName + GetParametersFormatted (mi));
return; // a member of a type
}
}
@@ -745,7 +736,7 @@ namespace Mono.CSharp {
// to get its name, since mi
// could be from DeclaringType
// for nested types.
- xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + GetSignatureForDoc (fm.Type) + "." + name + GetParametersFormatted (mi));
+ xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + fm.Type.FullName.Replace ("+", ".") + "." + name + GetParametersFormatted (mi));
return; // local member name
}
}
@@ -794,7 +785,7 @@ namespace Mono.CSharp {
if (i > 0)
sb.Append (',');
Type t = parameters.ParameterType (i);
- sb.Append (GetSignatureForDoc (t));
+ sb.Append (t.FullName.Replace ('+', '.').Replace ('&', '@'));
}
sb.Append (')');
return sb.ToString ();
@@ -860,7 +851,7 @@ namespace Mono.CSharp {
StringBuilder psb = new StringBuilder ();
foreach (Parameter p in plist) {
psb.Append (psb.Length != 0 ? "," : "(");
- psb.Append (GetSignatureForDoc (p.ExternalType ()));
+ psb.Append (p.ExternalType ().FullName.Replace ("+", ".").Replace ('&', '@'));
}
paramSpec = psb.ToString ();
}
@@ -875,20 +866,13 @@ namespace Mono.CSharp {
switch (op.OperatorType) {
case Operator.OpType.Implicit:
case Operator.OpType.Explicit:
- suffix = "~" + GetSignatureForDoc (op.OperatorMethodBuilder.ReturnType);
+ suffix = "~" + op.OperatorMethodBuilder.ReturnType.FullName.Replace ('+', '.');
break;
}
}
return String.Concat (mc.DocCommentHeader, ds.Name, ".", name, paramSpec, suffix);
}
- static string GetSignatureForDoc (Type type)
- {
- return TypeManager.IsGenericParameter (type) ?
- "`" + type.GenericParameterPosition :
- type.FullName.Replace ("+", ".").Replace ('&', '@');
- }
-
//
// Raised (and passed an XmlElement that contains the comment)
// when GenerateDocComment is writing documentation expectedly.
@@ -1071,4 +1055,3 @@ namespace Mono.CSharp {
}
}
}
-#endif
diff --git a/mcs/gmcs/ecore.cs b/mcs/gmcs/ecore.cs
index 7b516cb3515..fdbea06e164 100644
--- a/mcs/gmcs/ecore.cs
+++ b/mcs/gmcs/ecore.cs
@@ -1523,13 +1523,6 @@ namespace Mono.CSharp {
return this;
}
- public override Expression DoResolveLValue (EmitContext ec, Expression right_side)
- {
- if (right_side == EmptyExpression.LValueMemberAccess)
- Report.Error (445, loc, "Cannot modify the result of an unboxing conversion");
- return base.DoResolveLValue (ec, right_side);
- }
-
public override void Emit (EmitContext ec)
{
Type t = type;
@@ -2636,6 +2629,25 @@ namespace Mono.CSharp {
"with an instance reference, qualify it with a type name instead", name);
}
+ protected bool CheckIntermediateModification ()
+ {
+ if (!InstanceExpression.Type.IsValueType)
+ return true;
+
+ if (InstanceExpression is UnboxCast) {
+ Report.Error (445, loc, "Cannot modify the result of an unboxing conversion");
+ return false;
+ }
+
+ if (!(InstanceExpression is IMemoryLocation)) {
+ Report.Error (1612, loc, "Cannot modify the return value of `{0}' because it is not a variable",
+ InstanceExpression.GetSignatureForError ());
+ return false;
+ }
+
+ return true;
+ }
+
// TODO: possible optimalization
// Cache resolved constant result in FieldBuilder <-> expression map
public virtual Expression ResolveMemberAccess (EmitContext ec, Expression left, Location loc,
@@ -3033,11 +3045,6 @@ namespace Mono.CSharp {
override public Expression DoResolve (EmitContext ec)
{
- return DoResolve (ec, false);
- }
-
- Expression DoResolve (EmitContext ec, bool lvalue_instance)
- {
if (ec.InRefOutArgumentResolving && FieldInfo.IsInitOnly && !ec.IsConstructor && FieldInfo.FieldType.IsValueType) {
if (FieldInfo.FieldType is TypeBuilder) {
if (FieldInfo.IsStatic)
@@ -3070,17 +3077,8 @@ namespace Mono.CSharp {
// Resolve the field's instance expression while flow analysis is turned
// off: when accessing a field "a.b", we must check whether the field
// "a.b" is initialized, not whether the whole struct "a" is initialized.
-
- if (lvalue_instance) {
- bool old_do_flow_analysis = ec.DoFlowAnalysis;
- ec.DoFlowAnalysis = false;
- InstanceExpression = InstanceExpression.ResolveLValue (ec, EmptyExpression.LValueMemberAccess, loc);
- ec.DoFlowAnalysis = old_do_flow_analysis;
- } else {
- ResolveFlags rf = ResolveFlags.VariableOrValue | ResolveFlags.DisableFlowAnalysis;
- InstanceExpression = InstanceExpression.Resolve (ec, rf);
- }
-
+ InstanceExpression = InstanceExpression.Resolve (
+ ec, ResolveFlags.VariableOrValue | ResolveFlags.DisableFlowAnalysis);
if (InstanceExpression == null)
return null;
}
@@ -3126,32 +3124,16 @@ namespace Mono.CSharp {
return this;
}
- void Report_AssignToReadonly (Expression right_side)
+ void Report_AssignToReadonly (bool is_instance)
{
- int code;
string msg;
- bool need_error_sig = false;
- if (right_side == EmptyExpression.LValueMemberAccess) {
- if (IsStatic) {
- code = 1650;
- msg = "Fields of static readonly field `{0}' cannot be assigned to (except in a static constructor or a variable initializer)";
- } else {
- code = 1648;
- msg = "Members of readonly field `{0}' cannot be modified (except in a constructor or a variable initializer)";
- }
- need_error_sig = true;
- } else if (IsStatic) {
- code = 198;
- msg = "A static readonly field cannot be assigned to (except in a static constructor or a variable initializer)";
- } else {
- code = 191;
+
+ if (is_instance)
msg = "A readonly field cannot be assigned to (except in a constructor or a variable initializer)";
- }
-
- if (need_error_sig)
- Report.Error (code, loc, msg, GetSignatureForError ());
else
- Report.Error (code, loc, msg);
+ msg = "A static readonly field cannot be assigned to (except in a static constructor or a variable initializer)";
+
+ Report.Error (is_instance ? 191 : 198, loc, msg);
}
override public Expression DoResolveLValue (EmitContext ec, Expression right_side)
@@ -3160,13 +3142,14 @@ namespace Mono.CSharp {
if ((var != null) && (var.VariableInfo != null))
var.VariableInfo.SetFieldAssigned (ec, FieldInfo.Name);
- bool lvalue_instance = !FieldInfo.IsStatic && FieldInfo.DeclaringType.IsValueType;
-
- Expression e = DoResolve (ec, lvalue_instance);
+ Expression e = DoResolve (ec);
if (e == null)
return null;
+ if (!FieldInfo.IsStatic && !CheckIntermediateModification ())
+ return null;
+
FieldBase fb = TypeManager.GetField (FieldInfo);
if (fb != null)
fb.SetAssigned ();
@@ -3180,7 +3163,7 @@ namespace Mono.CSharp {
if (ec.IsConstructor){
if (IsStatic && !ec.IsStatic)
- Report_AssignToReadonly (right_side);
+ Report_AssignToReadonly (false);
Type ctype;
if (ec.TypeContainer.CurrentType != null)
@@ -3192,7 +3175,7 @@ namespace Mono.CSharp {
return this;
}
- Report_AssignToReadonly (right_side);
+ Report_AssignToReadonly (!IsStatic);
return null;
}
@@ -3292,7 +3275,7 @@ namespace Mono.CSharp {
prepared = prepare_for_load;
if (is_readonly && !ec.IsConstructor){
- Report_AssignToReadonly (source);
+ Report_AssignToReadonly (!is_static);
return;
}
@@ -3533,7 +3516,7 @@ namespace Mono.CSharp {
}
}
- bool InstanceResolve (EmitContext ec, bool lvalue_instance, bool must_do_cs1540_check)
+ bool InstanceResolve (EmitContext ec, bool must_do_cs1540_check)
{
if (is_static) {
InstanceExpression = null;
@@ -3545,10 +3528,7 @@ namespace Mono.CSharp {
return false;
}
- if (lvalue_instance)
- InstanceExpression = InstanceExpression.ResolveLValue (ec, EmptyExpression.LValueMemberAccess, loc);
- else
- InstanceExpression = InstanceExpression.DoResolve (ec);
+ InstanceExpression = InstanceExpression.DoResolve (ec);
if (InstanceExpression == null)
return false;
@@ -3628,7 +3608,7 @@ namespace Mono.CSharp {
return null;
}
- if (!InstanceResolve (ec, false, must_do_cs1540_check))
+ if (!InstanceResolve (ec, must_do_cs1540_check))
return null;
//
@@ -3660,13 +3640,9 @@ namespace Mono.CSharp {
//
if (getter == null)
return null;
-
- if (right_side == EmptyExpression.LValueMemberAccess)
- Report.Error (1612, loc, "Cannot modify the return value of `{0}' because it is not a variable",
- GetSignatureForError ());
- else
- Report.Error (200, loc, "Property or indexer `{0}' cannot be assigned to (it is read only)",
- GetSignatureForError ());
+
+ Report.Error (200, loc, " Property or indexer `{0}' cannot be assigned to (it is read only)",
+ TypeManager.GetFullNameSignature (PropertyInfo));
return null;
}
@@ -3688,7 +3664,7 @@ namespace Mono.CSharp {
return null;
}
- if (!InstanceResolve (ec, PropertyInfo.DeclaringType.IsValueType, must_do_cs1540_check))
+ if (!InstanceResolve (ec, must_do_cs1540_check))
return null;
//
@@ -3699,6 +3675,12 @@ namespace Mono.CSharp {
return null;
}
+ //
+ // Check that we are not making changes to a temporary memory location
+ //
+ if (InstanceExpression != null && !CheckIntermediateModification ())
+ return null;
+
return this;
}
diff --git a/mcs/gmcs/expression.cs b/mcs/gmcs/expression.cs
index 2afc8b1afa5..2f1cf7c021d 100644
--- a/mcs/gmcs/expression.cs
+++ b/mcs/gmcs/expression.cs
@@ -3489,7 +3489,7 @@ namespace Mono.CSharp {
local_info = Block.GetLocalInfo (Name);
// is out param
- if (lvalue_right_side == EmptyExpression.OutAccess)
+ if (lvalue_right_side == EmptyExpression.Null)
local_info.Used = true;
is_readonly = local_info.ReadOnly;
@@ -3500,12 +3500,9 @@ namespace Mono.CSharp {
VariableInfo variable_info = local_info.VariableInfo;
if (lvalue_right_side != null){
if (is_readonly){
- if (lvalue_right_side is LocalVariableReference || lvalue_right_side == EmptyExpression.OutAccess)
+ if (lvalue_right_side is LocalVariableReference || lvalue_right_side == EmptyExpression.Null)
Report.Error (1657, loc, "Cannot pass `{0}' as a ref or out argument because it is a `{1}'",
Name, local_info.GetReadOnlyContext ());
- else if (lvalue_right_side == EmptyExpression.LValueMemberAccess)
- Report.Error (1654, loc, "Cannot assign to members of `{0}' because it is a `{1}'",
- Name, local_info.GetReadOnlyContext ());
else
Report.Error (1656, loc, "Cannot assign to `{0}' because it is a `{1}'",
Name, local_info.GetReadOnlyContext ());
@@ -4075,7 +4072,7 @@ namespace Mono.CSharp {
Error_LValueRequired (loc);
} else if (ArgType == AType.Out) {
ec.InRefOutArgumentResolving = true;
- Expr = Expr.DoResolveLValue (ec, EmptyExpression.OutAccess);
+ Expr = Expr.DoResolveLValue (ec, EmptyExpression.Null);
ec.InRefOutArgumentResolving = false;
if (Expr == null)
@@ -8581,9 +8578,6 @@ namespace Mono.CSharp {
public class EmptyExpression : Expression {
public static readonly EmptyExpression Null = new EmptyExpression ();
- public static readonly EmptyExpression OutAccess = new EmptyExpression ();
- public static readonly EmptyExpression LValueMemberAccess = new EmptyExpression ();
-
static EmptyExpression temp = new EmptyExpression ();
public static EmptyExpression Grab ()
{
diff --git a/mcs/gmcs/typemanager.cs b/mcs/gmcs/typemanager.cs
index 91a28d33f8e..981b4fd73c7 100644
--- a/mcs/gmcs/typemanager.cs
+++ b/mcs/gmcs/typemanager.cs
@@ -2436,13 +2436,6 @@ public partial class TypeManager {
return target_list;
}
- // This method always return false for non-generic compiler,
- // while Type.IsGenericParameter is returned if it is supported.
- public static bool IsGenericParameter (Type type)
- {
- return type.IsGenericParameter;
- }
-
#region MemberLookup implementation
//
diff --git a/mcs/mcs/ChangeLog b/mcs/mcs/ChangeLog
index a3beb979a30..946fc43ae80 100644
--- a/mcs/mcs/ChangeLog
+++ b/mcs/mcs/ChangeLog
@@ -1,74 +1,3 @@
-2006-01-18 Raja R Harinath <rharinath@novell.com>
-
- Fix #76656, cs0231-2.cs.
- * cs-parser.jay (formal_parameter_list): Make error case catch
- more issues.
- (parenthesized_expression_0): Add CS1026 check.
- (invocation_expression): Remove unused { $$ = lexer.Location }.
-
-2006-01-17 Raja R Harinath <rharinath@novell.com>
-
- Fix #76824.
- * cs-parser.jay (statement_expression): Don't list out the
- individual statement-expressions. Convert syntax error into
- CS0201 check.
-
-2006-01-16 Raja R Harinath <rharinath@novell.com>
-
- Fix #76874.
- * ecore.cs (MemberAccess.CheckIntermediateModification): Remove.
- (UnboxCast.DoResolveLValue): New. Move CS0445 check from
- CheckIntermediateModification.
- (FieldExpr.DoResolve): Add new two-argument version that
- allows us to resolve the InstanceExpression as an lvalue.
- The one-argument variant is now just a wrapper.
- (FieldExpr.DoResolveLValue): Use two-argument DoResolve.
- Resolve the lhs as an lvalue if the it has a value type.
- (FieldExpr.AssignToReadonly): Move CS1648 and CS1650 checks
- from Assign.DoResolve.
- (PropertyExpr.InstanceResolve): Allow InstanceExpression to be
- resolved as an lvalue.
- (PropertyExpr.DoResolve): Update.
- (PropertyExpr.DoResolveLValue): Resolve the lhs as an lvalue if it
- has a value type. Move CS1612 check here from
- CheckIntermediateModification.
- * assign.cs (Assign.DoResolve): Remove CS1648 and CS1650 checks.
- * expression.cs (EmptyExpression.OutAccess): New. Used as the
- 'right_side' of a ResolveLValue on an 'out' argument.
- (EmptyExpression.LValueMemberAccess): New. Used as the
- 'right_side' of a propagated ResolveLValue on a value type.
- (LocalVariableReference.DoResolveBase): Recognize
- EmptyExpression.OutAccess and EmptyExpression.LValueMemberAccess.
- Add CS1654 check.
- (Argument.Resolve): Use EmptyExpression.OutAccess rather than
- EmptyExpression.Null.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * typemanager.cs : added IsGenericParameter(). In mcs it always
- return false.
- * doc.cs : for generic parameters, use GenericParameterPosition,
- not FullName.
-
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * expression.cs: Fix Console.WriteLine ((this = x).foo);
-
-2006-01-12 Miguel de Icaza <miguel@novell.com>
-
- This fixes the problem where we used ldfld instead of ldflda to
- load the "THIS" pointer on captured parameters, when THIS is a
- value type. See bug #77205.
-
- * iterators.cs (CapturedThisReference.Emit): Pass false to
- EmitThis (we do not need the address).
-
- * codegen.cs (EmitThis): it needs to know whether we need the
- address of `this' or not. This is used by value types.
-
- * expression.cs (This.AddressOf): Pass true to the EmitThis call,
- every other call passes false.
-
2006-01-12 Raja R Harinath <rharinath@novell.com>
Fix #77221.
diff --git a/mcs/mcs/assign.cs b/mcs/mcs/assign.cs
index c692474c096..ef46657107c 100644
--- a/mcs/mcs/assign.cs
+++ b/mcs/mcs/assign.cs
@@ -400,6 +400,21 @@ namespace Mono.CSharp {
}
}
+ FieldExpr field_exp = target as FieldExpr;
+ if (field_exp != null && field_exp.DeclaringType.IsValueType && !ec.IsConstructor && !ec.IsFieldInitializer) {
+ field_exp = field_exp.InstanceExpression as FieldExpr;
+ if (field_exp != null && field_exp.FieldInfo.IsInitOnly) {
+ if (field_exp.IsStatic) {
+ Report.Error (1650, loc, "Fields of static readonly field `{0}' cannot be assigned to (except in a static constructor or a variable initializer)",
+ field_exp.GetSignatureForError ());
+ } else {
+ Report.Error (1648, loc, "Members of readonly field `{0}' cannot be modified (except in a constructor or a variable initializer)",
+ field_exp.GetSignatureForError ());
+ }
+ return null;
+ }
+ }
+
if (!(target is IAssignMethod) && (target.eclass != ExprClass.EventAccess)) {
Report.Error (131, loc,
"Left hand of an assignment must be a variable, " +
diff --git a/mcs/mcs/codegen.cs b/mcs/mcs/codegen.cs
index a05e2853f42..a6f2449e888 100644
--- a/mcs/mcs/codegen.cs
+++ b/mcs/mcs/codegen.cs
@@ -886,7 +886,7 @@ namespace Mono.CSharp {
// Emits the proper object to address fields on a remapped
// variable/parameter to field in anonymous-method/iterator proxy classes.
//
- public void EmitThis (bool need_address)
+ public void EmitThis ()
{
ig.Emit (OpCodes.Ldarg_0);
if (capture_context != null && CurrentAnonymousMethod != null){
@@ -895,10 +895,7 @@ namespace Mono.CSharp {
if (si.ParentLink != null)
ig.Emit (OpCodes.Ldfld, si.ParentLink);
if (si.THIS != null){
- if (need_address && TypeManager.IsValueType (si.THIS.FieldType))
- ig.Emit (OpCodes.Ldflda, si.THIS);
- else
- ig.Emit (OpCodes.Ldfld, si.THIS);
+ ig.Emit (OpCodes.Ldfld, si.THIS);
break;
}
si = si.ParentScope;
diff --git a/mcs/mcs/cs-parser.jay b/mcs/mcs/cs-parser.jay
index 8a70d97127d..a88ca9764f7 100644
--- a/mcs/mcs/cs-parser.jay
+++ b/mcs/mcs/cs-parser.jay
@@ -1176,13 +1176,13 @@ formal_parameter_list
$$ = new Parameters (pars, true);
}
- | parameter_array COMMA error
+ | parameter_array COMMA fixed_parameters
{
if ($1 != null)
Report.Error (231, ((Parameter) $1).Location, "A params parameter must be the last parameter in a formal parameter list");
$$ = null;
}
- | ARGLIST COMMA error
+ | ARGLIST COMMA fixed_parameters
{
Report.Error (257, (Location) $1, "An __arglist parameter must be the last parameter in a formal parameter list");
$$ = null;
@@ -2743,7 +2743,6 @@ parenthesized_expression_0
// CLOSE_PARENS_CAST, CLOSE_PARENS_NO_CAST, CLOSE_PARENS_OPEN_PARENS
// or CLOSE_PARENS_MINUS.
}
- | OPEN_PARENS expression error { CheckToken (1026, yyToken, "Expecting ')'", lexer.Location); }
;
parenthesized_expression
@@ -2758,7 +2757,7 @@ parenthesized_expression
// in Binary.DoResolve().
$$ = new ParenthesizedExpression ((Expression) $1);
}
- ;
+ ;;
member_access
: primary_expression DOT IDENTIFIER
@@ -2778,12 +2777,15 @@ predefined_type
;
invocation_expression
- : primary_expression OPEN_PARENS opt_argument_list CLOSE_PARENS
+ : primary_expression {
+ $$ = lexer.Location;
+ } OPEN_PARENS opt_argument_list CLOSE_PARENS
{
- if ($1 == null)
- Report.Error (1, (Location) $2, "Parse error");
- else
- $$ = new Invocation ((Expression) $1, (ArrayList) $3);
+ if ($1 == null) {
+ Location l = (Location) $3;
+ Report.Error (1, l, "Parse error");
+ }
+ $$ = new Invocation ((Expression) $1, (ArrayList) $4);
}
| parenthesized_expression_0 CLOSE_PARENS_OPEN_PARENS OPEN_PARENS CLOSE_PARENS
{
@@ -3851,7 +3853,10 @@ local_constant_declaration
;
expression_statement
- : statement_expression SEMICOLON { $$ = $1; }
+ : statement_expression SEMICOLON
+ {
+ $$ = $1;
+ }
;
//
@@ -3859,18 +3864,14 @@ expression_statement
// because statement_expression is used for example in for_statement
//
statement_expression
- : expression
- {
- Expression expr = (Expression) $1;
- ExpressionStatement s = expr as ExpressionStatement;
- if (s == null) {
- Report.Error (201, expr.Location, "Only assignment, call, increment, decrement, and new object expressions can be used as a statement");
- $$ = null;
- }
- $$ = new StatementExpression (s);
- }
- | error
- {
+ : invocation_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | object_creation_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | assignment_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | post_increment_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | post_decrement_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | pre_increment_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | pre_decrement_expression { $$ = new StatementExpression ((ExpressionStatement) $1); }
+ | error {
Report.Error (1002, GetLocation ($1), "Expecting `;'");
$$ = null;
}
@@ -4885,7 +4886,6 @@ public CSharpParser (SeekableStreamReader reader, SourceFile file, ArrayList def
public void parse ()
{
- int errors = Report.Errors;
try {
if (yacc_verbose_flag > 1)
yyparse (lexer, new yydebug.yyDebugSimple ());
@@ -4898,8 +4898,7 @@ public void parse ()
// Removed for production use, use parser verbose to get the output.
//
// Console.WriteLine (e);
- if (Report.Errors == errors)
- Report.Error (-25, lexer.Location, "Parsing error");
+ Report.Error (-25, lexer.Location, "Parsing error");
if (yacc_verbose_flag > 0)
Console.WriteLine (e);
}
@@ -4909,10 +4908,11 @@ public void parse ()
void CheckToken (int error, int yyToken, string msg, Location loc)
{
- if (yyToken >= Token.FIRST_KEYWORD && yyToken <= Token.LAST_KEYWORD)
- Report.Error (error, loc, "{0}: `{1}' is a keyword", msg, yyNames [yyToken].ToLower ());
- else
- Report.Error (error, loc, msg);
+ if (yyToken >= Token.FIRST_KEYWORD && yyToken <= Token.LAST_KEYWORD){
+ Report.Error (error, loc, String.Format ("{0}: `{1}' is a keyword", msg, yyNames [yyToken].ToLower ()));
+ return;
+ }
+ Report.Error (error, loc, msg);
}
void CheckIdentifierToken (int yyToken, Location loc)
diff --git a/mcs/mcs/doc.cs b/mcs/mcs/doc.cs
index 9e6ca327654..8f0d14fbce4 100644
--- a/mcs/mcs/doc.cs
+++ b/mcs/mcs/doc.cs
@@ -9,6 +9,7 @@
// (C) 2004 Novell, Inc.
//
//
+
#if ! BOOTSTRAP_WITH_OLDLIB
using System;
using System.Collections;
@@ -30,16 +31,8 @@ namespace Mono.CSharp {
//
// Support class for XML documentation.
//
-#if NET_2_0
- static
-#else
- abstract
-#endif
public class DocUtil
{
-#if !NET_2_0
- private DocUtil () {}
-#endif
// TypeContainer
//
@@ -706,7 +699,7 @@ namespace Mono.CSharp {
// delegate must not be referenced with args
&& (!type.IsSubclassOf (typeof (System.Delegate))
|| parameterTypes == null)) {
- string result = GetSignatureForDoc (type)
+ string result = type.FullName.Replace ("+", ".")
+ (bracePos < 0 ? String.Empty : signature.Substring (bracePos));
xref.SetAttribute ("cref", "T:" + result);
return; // a type
@@ -729,7 +722,7 @@ namespace Mono.CSharp {
// to get its name, since mi
// could be from DeclaringType
// for nested types.
- xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + GetSignatureForDoc (fm.Type) + "." + memberName + GetParametersFormatted (mi));
+ xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + fm.Type.FullName.Replace ("+", ".") + "." + memberName + GetParametersFormatted (mi));
return; // a member of a type
}
}
@@ -745,7 +738,7 @@ namespace Mono.CSharp {
// to get its name, since mi
// could be from DeclaringType
// for nested types.
- xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + GetSignatureForDoc (fm.Type) + "." + name + GetParametersFormatted (mi));
+ xref.SetAttribute ("cref", GetMemberDocHead (mi.MemberType) + fm.Type.FullName.Replace ("+", ".") + "." + name + GetParametersFormatted (mi));
return; // local member name
}
}
@@ -794,7 +787,7 @@ namespace Mono.CSharp {
if (i > 0)
sb.Append (',');
Type t = parameters.ParameterType (i);
- sb.Append (GetSignatureForDoc (t));
+ sb.Append (t.FullName.Replace ('+', '.').Replace ('&', '@'));
}
sb.Append (')');
return sb.ToString ();
@@ -860,7 +853,7 @@ namespace Mono.CSharp {
StringBuilder psb = new StringBuilder ();
foreach (Parameter p in plist) {
psb.Append (psb.Length != 0 ? "," : "(");
- psb.Append (GetSignatureForDoc (p.ExternalType ()));
+ psb.Append (p.ExternalType ().FullName.Replace ("+", ".").Replace ('&', '@'));
}
paramSpec = psb.ToString ();
}
@@ -875,20 +868,13 @@ namespace Mono.CSharp {
switch (op.OperatorType) {
case Operator.OpType.Implicit:
case Operator.OpType.Explicit:
- suffix = "~" + GetSignatureForDoc (op.OperatorMethodBuilder.ReturnType);
+ suffix = "~" + op.OperatorMethodBuilder.ReturnType.FullName.Replace ('+', '.');
break;
}
}
return String.Concat (mc.DocCommentHeader, ds.Name, ".", name, paramSpec, suffix);
}
- static string GetSignatureForDoc (Type type)
- {
- return TypeManager.IsGenericParameter (type) ?
- type.Name :
- type.FullName.Replace ("+", ".").Replace ('&', '@');
- }
-
//
// Raised (and passed an XmlElement that contains the comment)
// when GenerateDocComment is writing documentation expectedly.
@@ -1071,4 +1057,5 @@ namespace Mono.CSharp {
}
}
}
+
#endif
diff --git a/mcs/mcs/ecore.cs b/mcs/mcs/ecore.cs
index dbecb8fd6dd..91f013ef80d 100644
--- a/mcs/mcs/ecore.cs
+++ b/mcs/mcs/ecore.cs
@@ -1484,13 +1484,6 @@ namespace Mono.CSharp {
return this;
}
- public override Expression DoResolveLValue (EmitContext ec, Expression right_side)
- {
- if (right_side == EmptyExpression.LValueMemberAccess)
- Report.Error (445, loc, "Cannot modify the result of an unboxing conversion");
- return base.DoResolveLValue (ec, right_side);
- }
-
public override void Emit (EmitContext ec)
{
Type t = type;
@@ -2393,6 +2386,25 @@ namespace Mono.CSharp {
"with an instance reference, qualify it with a type name instead", name);
}
+ protected bool CheckIntermediateModification ()
+ {
+ if (!InstanceExpression.Type.IsValueType)
+ return true;
+
+ if (InstanceExpression is UnboxCast) {
+ Report.Error (445, loc, "Cannot modify the result of an unboxing conversion");
+ return false;
+ }
+
+ if (!(InstanceExpression is IMemoryLocation)) {
+ Report.Error (1612, loc, "Cannot modify the return value of `{0}' because it is not a variable",
+ InstanceExpression.GetSignatureForError ());
+ return false;
+ }
+
+ return true;
+ }
+
// TODO: possible optimalization
// Cache resolved constant result in FieldBuilder <-> expression map
public virtual Expression ResolveMemberAccess (EmitContext ec, Expression left, Location loc,
@@ -2728,11 +2740,6 @@ namespace Mono.CSharp {
override public Expression DoResolve (EmitContext ec)
{
- return DoResolve (ec, false);
- }
-
- Expression DoResolve (EmitContext ec, bool lvalue_instance)
- {
if (ec.InRefOutArgumentResolving && FieldInfo.IsInitOnly && !ec.IsConstructor && FieldInfo.FieldType.IsValueType) {
if (FieldInfo.FieldType is TypeBuilder) {
if (FieldInfo.IsStatic)
@@ -2765,17 +2772,8 @@ namespace Mono.CSharp {
// Resolve the field's instance expression while flow analysis is turned
// off: when accessing a field "a.b", we must check whether the field
// "a.b" is initialized, not whether the whole struct "a" is initialized.
-
- if (lvalue_instance) {
- bool old_do_flow_analysis = ec.DoFlowAnalysis;
- ec.DoFlowAnalysis = false;
- InstanceExpression = InstanceExpression.ResolveLValue (ec, EmptyExpression.LValueMemberAccess, loc);
- ec.DoFlowAnalysis = old_do_flow_analysis;
- } else {
- ResolveFlags rf = ResolveFlags.VariableOrValue | ResolveFlags.DisableFlowAnalysis;
- InstanceExpression = InstanceExpression.Resolve (ec, rf);
- }
-
+ InstanceExpression = InstanceExpression.Resolve (
+ ec, ResolveFlags.VariableOrValue | ResolveFlags.DisableFlowAnalysis);
if (InstanceExpression == null)
return null;
}
@@ -2822,32 +2820,16 @@ namespace Mono.CSharp {
return this;
}
- void Report_AssignToReadonly (Expression right_side)
+ void Report_AssignToReadonly (bool is_instance)
{
- int code;
string msg;
- bool need_error_sig = false;
- if (right_side == EmptyExpression.LValueMemberAccess) {
- if (IsStatic) {
- code = 1650;
- msg = "Fields of static readonly field `{0}' cannot be assigned to (except in a static constructor or a variable initializer)";
- } else {
- code = 1648;
- msg = "Members of readonly field `{0}' cannot be modified (except in a constructor or a variable initializer)";
- }
- need_error_sig = true;
- } else if (IsStatic) {
- code = 198;
- msg = "A static readonly field cannot be assigned to (except in a static constructor or a variable initializer)";
- } else {
- code = 191;
+
+ if (is_instance)
msg = "A readonly field cannot be assigned to (except in a constructor or a variable initializer)";
- }
-
- if (need_error_sig)
- Report.Error (code, loc, msg, GetSignatureForError ());
else
- Report.Error (code, loc, msg);
+ msg = "A static readonly field cannot be assigned to (except in a static constructor or a variable initializer)";
+
+ Report.Error (is_instance ? 191 : 198, loc, msg);
}
override public Expression DoResolveLValue (EmitContext ec, Expression right_side)
@@ -2856,13 +2838,14 @@ namespace Mono.CSharp {
if ((var != null) && (var.VariableInfo != null))
var.VariableInfo.SetFieldAssigned (ec, FieldInfo.Name);
- bool lvalue_instance = !FieldInfo.IsStatic && FieldInfo.DeclaringType.IsValueType;
-
- Expression e = DoResolve (ec, lvalue_instance);
+ Expression e = DoResolve (ec);
if (e == null)
return null;
+ if (!FieldInfo.IsStatic && !CheckIntermediateModification ())
+ return null;
+
FieldBase fb = TypeManager.GetField (FieldInfo);
if (fb != null)
fb.SetAssigned ();
@@ -2876,13 +2859,13 @@ namespace Mono.CSharp {
if (ec.IsConstructor){
if (IsStatic && !ec.IsStatic)
- Report_AssignToReadonly (right_side);
+ Report_AssignToReadonly (false);
if (ec.ContainerType == FieldInfo.DeclaringType)
return this;
}
- Report_AssignToReadonly (right_side);
+ Report_AssignToReadonly (!IsStatic);
return null;
}
@@ -2981,7 +2964,7 @@ namespace Mono.CSharp {
prepared = prepare_for_load;
if (is_readonly && !ec.IsConstructor){
- Report_AssignToReadonly (source);
+ Report_AssignToReadonly (!is_static);
return;
}
@@ -3216,7 +3199,7 @@ namespace Mono.CSharp {
}
}
- bool InstanceResolve (EmitContext ec, bool lvalue_instance, bool must_do_cs1540_check)
+ bool InstanceResolve (EmitContext ec, bool must_do_cs1540_check)
{
if (is_static) {
InstanceExpression = null;
@@ -3228,10 +3211,7 @@ namespace Mono.CSharp {
return false;
}
- if (lvalue_instance)
- InstanceExpression = InstanceExpression.ResolveLValue (ec, EmptyExpression.LValueMemberAccess, loc);
- else
- InstanceExpression = InstanceExpression.DoResolve (ec);
+ InstanceExpression = InstanceExpression.DoResolve (ec);
if (InstanceExpression == null)
return false;
@@ -3311,7 +3291,7 @@ namespace Mono.CSharp {
return null;
}
- if (!InstanceResolve (ec, false, must_do_cs1540_check))
+ if (!InstanceResolve (ec, must_do_cs1540_check))
return null;
//
@@ -3343,13 +3323,9 @@ namespace Mono.CSharp {
//
if (getter == null)
return null;
-
- if (right_side == EmptyExpression.LValueMemberAccess)
- Report.Error (1612, loc, "Cannot modify the return value of `{0}' because it is not a variable",
- GetSignatureForError ());
- else
- Report.Error (200, loc, "Property or indexer `{0}' cannot be assigned to (it is read only)",
- GetSignatureForError ());
+
+ Report.Error (200, loc, " Property or indexer `{0}' cannot be assigned to (it is read only)",
+ TypeManager.GetFullNameSignature (PropertyInfo));
return null;
}
@@ -3371,7 +3347,7 @@ namespace Mono.CSharp {
return null;
}
- if (!InstanceResolve (ec, PropertyInfo.DeclaringType.IsValueType, must_do_cs1540_check))
+ if (!InstanceResolve (ec, must_do_cs1540_check))
return null;
//
@@ -3382,6 +3358,12 @@ namespace Mono.CSharp {
return null;
}
+ //
+ // Check that we are not making changes to a temporary memory location
+ //
+ if (InstanceExpression != null && !CheckIntermediateModification ())
+ return null;
+
return this;
}
diff --git a/mcs/mcs/expression.cs b/mcs/mcs/expression.cs
index f508f16e406..b9eccc180f9 100644
--- a/mcs/mcs/expression.cs
+++ b/mcs/mcs/expression.cs
@@ -3410,7 +3410,7 @@ namespace Mono.CSharp {
local_info = Block.GetLocalInfo (Name);
// is out param
- if (lvalue_right_side == EmptyExpression.OutAccess)
+ if (lvalue_right_side == EmptyExpression.Null)
local_info.Used = true;
is_readonly = local_info.ReadOnly;
@@ -3421,12 +3421,9 @@ namespace Mono.CSharp {
VariableInfo variable_info = local_info.VariableInfo;
if (lvalue_right_side != null){
if (is_readonly){
- if (lvalue_right_side is LocalVariableReference || lvalue_right_side == EmptyExpression.OutAccess)
+ if (lvalue_right_side is LocalVariableReference || lvalue_right_side == EmptyExpression.Null)
Report.Error (1657, loc, "Cannot pass `{0}' as a ref or out argument because it is a `{1}'",
Name, local_info.GetReadOnlyContext ());
- else if (lvalue_right_side == EmptyExpression.LValueMemberAccess)
- Report.Error (1654, loc, "Cannot assign to members of `{0}' because it is a `{1}'",
- Name, local_info.GetReadOnlyContext ());
else
Report.Error (1656, loc, "Cannot assign to `{0}' because it is a `{1}'",
Name, local_info.GetReadOnlyContext ());
@@ -3992,7 +3989,7 @@ namespace Mono.CSharp {
Error_LValueRequired (loc);
} else if (ArgType == AType.Out) {
ec.InRefOutArgumentResolving = true;
- Expr = Expr.DoResolveLValue (ec, EmptyExpression.OutAccess);
+ Expr = Expr.DoResolveLValue (ec, EmptyExpression.Null);
ec.InRefOutArgumentResolving = false;
if (Expr == null)
@@ -6638,20 +6635,11 @@ namespace Mono.CSharp {
ILGenerator ig = ec.ig;
if (ec.TypeContainer is Struct){
- ec.EmitThis (false);
+ ec.EmitThis ();
source.Emit (ec);
-
- LocalTemporary t = null;
- if (leave_copy) {
- t = new LocalTemporary (ec, type);
+ if (leave_copy)
ec.ig.Emit (OpCodes.Dup);
- t.Store (ec);
- }
-
ig.Emit (OpCodes.Stobj, type);
-
- if (leave_copy)
- t.Emit (ec);
} else {
throw new Exception ("how did you get here");
}
@@ -6661,7 +6649,7 @@ namespace Mono.CSharp {
{
ILGenerator ig = ec.ig;
- ec.EmitThis (false);
+ ec.EmitThis ();
if (ec.TypeContainer is Struct)
ig.Emit (OpCodes.Ldobj, type);
}
@@ -6682,7 +6670,7 @@ namespace Mono.CSharp {
public void AddressOf (EmitContext ec, AddressOp mode)
{
- ec.EmitThis (true);
+ ec.EmitThis ();
// FIMXE
// FIGURE OUT WHY LDARG_S does not work
@@ -8215,9 +8203,6 @@ namespace Mono.CSharp {
public class EmptyExpression : Expression {
public static readonly EmptyExpression Null = new EmptyExpression ();
- public static readonly EmptyExpression OutAccess = new EmptyExpression ();
- public static readonly EmptyExpression LValueMemberAccess = new EmptyExpression ();
-
static EmptyExpression temp = new EmptyExpression ();
public static EmptyExpression Grab ()
{
diff --git a/mcs/mcs/iterators.cs b/mcs/mcs/iterators.cs
index 8d105c37ddc..4f36dc10b8a 100644
--- a/mcs/mcs/iterators.cs
+++ b/mcs/mcs/iterators.cs
@@ -781,7 +781,7 @@ namespace Mono.CSharp {
public override void Emit (EmitContext ec)
{
- ec.EmitThis (false);
+ ec.EmitThis ();
}
}
diff --git a/mcs/mcs/typemanager.cs b/mcs/mcs/typemanager.cs
index 47591325b5f..342daf3983b 100644
--- a/mcs/mcs/typemanager.cs
+++ b/mcs/mcs/typemanager.cs
@@ -2110,13 +2110,6 @@ public class TypeManager {
}
- // This method always return false for non-generic compiler,
- // while Type.IsGenericParameter is returned if it is supported.
- public static bool IsGenericParameter (Type type)
- {
- return false;
- }
-
#region MemberLookup implementation
//
diff --git a/mcs/nunit20/ChangeLog b/mcs/nunit20/ChangeLog
index 76aaa8ce11f..ef28a576698 100755
--- a/mcs/nunit20/ChangeLog
+++ b/mcs/nunit20/ChangeLog
@@ -1,3 +1,4 @@
+
Wed Apr 20 18:05:41 CEST 2005 Paolo Molaro <lupus@ximian.com>
* */AssemblyInfo.cs: fixed path to key file.
diff --git a/mcs/nunit20/nunit-console/ChangeLog b/mcs/nunit20/nunit-console/ChangeLog
index d1594fcb373..a4da4e4d6a1 100644
--- a/mcs/nunit20/nunit-console/ChangeLog
+++ b/mcs/nunit20/nunit-console/ChangeLog
@@ -1,26 +1,3 @@
-2006-01-12 Raja R Harinath <rharinath@novell.com>
-
- * Makefile: Revert my '2006-01-10' commit. Prefer the more
- generic fix to build/executable.make.
- (DISTFILES): Distribute nunit-console.exe.config.net_2_0.
- * nunit-console.exe.net_2_0.config: Delete.
-
-2006-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
-
- * nunit-console.exe.config.net_2_0: configuration for
- nunit-console in the 2.0 profile.
-
-2006-01-10 Raja R Harinath <rharinath@novell.com>
-
- This should fix #76928. This fix incorporates ideas from a patch
- posted on that bugreport.
- * Makefile [net_2_0 profile]: Don't build nunit-console.exe. Copy
- the executable from the 'default' profile, and use a slightly
- customized nunit-console.exe.config.
- * nunit-console.exe.net_2_0.config: New config file for the
- net_2_0 profile. Alter the list of 'supportedRuntime's to prefer
- the 2.0 runtime.
-
2005-11-05 Kornél Pál <kornelpal@hotmail.com>
* nunit-console.exe.config: Updated runtime version to v2.0.50727 (2.0 RTM).
diff --git a/mcs/nunit20/nunit-console/Makefile b/mcs/nunit20/nunit-console/Makefile
index 59c2ea7e8a3..0a33bca390a 100644
--- a/mcs/nunit20/nunit-console/Makefile
+++ b/mcs/nunit20/nunit-console/Makefile
@@ -4,6 +4,6 @@ include ../../build/rules.make
PROGRAM = $(topdir)/class/lib/$(PROFILE)/nunit-console.exe
LOCAL_MCS_FLAGS = /r:nunit.framework.dll /r:nunit.util.dll /r:nunit.core.dll
-DISTFILES = app.config App.ico nunit-console.csproj nunit-console.exe.config.net_2_0
+DISTFILES = app.config App.ico nunit-console.csproj
include ../../build/executable.make
diff --git a/mcs/nunit20/nunit-console/nunit-console.exe.config b/mcs/nunit20/nunit-console/nunit-console.exe.config
index 777966b1f69..777966b1f69 100644..100755
--- a/mcs/nunit20/nunit-console/nunit-console.exe.config
+++ b/mcs/nunit20/nunit-console/nunit-console.exe.config
diff --git a/mcs/nunit20/nunit-console/nunit-console.exe.config.net_2_0 b/mcs/nunit20/nunit-console/nunit-console.exe.config.net_2_0
deleted file mode 100644
index d5d1e397d45..00000000000
--- a/mcs/nunit20/nunit-console/nunit-console.exe.config.net_2_0
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<configuration>
- <!--
- Application settings for NUnit-console.exe. Do NOT put settings
- for use by your tests here.
- -->
- <appSettings>
-
- <!-- Specify the location to be used by .NET for the cache -->
- <add key="shadowfiles.path" value="%temp%\nunit20\ShadowCopyCache" />
-
- </appSettings>
-
- <!--
- These statements specify the runtime versions supported
- in the order that they will be used if more than one
- is present. You can change the order of these if you like
- or remove any that do not apply.
-
- Since .NET 1.0 does not recognize the <supportedRuntime> elements,
- a <requiredRuntime> element is used in case it is the only version
- of the framework that is installed.
- -->
- <startup>
- <supportedRuntime version="v2.0.50727" />
- </startup>
-
- <!--
- The following <runtime> section allows running nunit under
- .NET 1.0 by redirecting assemblies. The appliesTo attribute
- causes the section to be ignored except under .NET 1.0version 1
- on a machine with only the .NET version 1.0 runtime installed.
- If application and its tests were built for .NET 1.1 you will
- also need to redirect system assemblies in the test config file.
- -->
-
- <runtime>
-
- <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"
- appliesTo="v1.0.3705">
-
- <dependentAssembly>
- <assemblyIdentity name="System"
- publicKeyToken="b77a5c561934e089"
- culture=""/>
- <bindingRedirect oldVersion="1.0.5000.0"
- newVersion="1.0.3300.0"/>
- </dependentAssembly>
-
- <dependentAssembly>
- <assemblyIdentity name="System.Data"
- publicKeyToken="b77a5c561934e089"
- culture=""/>
- <bindingRedirect oldVersion="1.0.5000.0"
- newVersion="1.0.3300.0"/>
- </dependentAssembly>
-
- <dependentAssembly>
- <assemblyIdentity name="System.Drawing"
- publicKeyToken="b03f5f7f11d50a3a"
- culture=""/>
- <bindingRedirect oldVersion="1.0.5000.0"
- newVersion="1.0.3300.0"/>
- </dependentAssembly>
-
- <dependentAssembly>
- <assemblyIdentity name="System.Windows.Forms"
- publicKeyToken="b77a5c561934e089"
- culture=""/>
- <bindingRedirect oldVersion="1.0.5000.0"
- newVersion="1.0.3300.0"/>
- </dependentAssembly>
-
- <dependentAssembly>
- <assemblyIdentity name="System.Xml"
- publicKeyToken="b77a5c561934e089"
- culture=""/>
- <bindingRedirect oldVersion="1.0.5000.0"
- newVersion="1.0.3300.0"/>
- </dependentAssembly>
-
- </assemblyBinding>
-
- </runtime>
-
-</configuration>
diff --git a/mcs/tests/ChangeLog b/mcs/tests/ChangeLog
index 502b0fa0cda..0b1b2bb3bb7 100644
--- a/mcs/tests/ChangeLog
+++ b/mcs/tests/ChangeLog
@@ -1,33 +1,3 @@
-2006-01-16 Raja R Harinath <rharinath@novell.com>
-
- * test-488.cs: New test based on #76874.
-
-2006-01-16 Atsushi Enomoto <atsushi@ximian.com>
-
- * gtest-xml-1-ref.xml, gtest-xml-1.cs : test for bug #77183.
-
-2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * test-437.cs: New test for Console.WriteLine ((this = x).foo)
-
-2006-01-12 Raja R Harinath <rharinath@novell.com>
-
- * test-486.cs: New test from #77221.
-
-2006-01-11 Raja R Harinath <rharinath@novell.com>
-
- * test-485.cs: New test from #77180.
-
- * test-484.cs: New test based on #77200.
-
- * test-xml-050.cs: Set output to xml-050.xml, not xml-050.cs.
- * gtest-233.cs: Rename from gtest-233-exe.cs.
-
-2006-01-09 Raja R Harinath <rharinath@novell.com>
-
- * Makefile (TEST_ILS): New list of CIL test libraries.
- * test-483-lib.il, test-483.cs: New test from #75636.
-
2005-12-21 Carlos Alberto Cortez <calberto.cortez@gmail.com>
* gtest-friend-00-lib.cs: Include the public key in
diff --git a/mcs/tests/Makefile b/mcs/tests/Makefile
index 43dac1baa97..fd283e2ee4b 100644
--- a/mcs/tests/Makefile
+++ b/mcs/tests/Makefile
@@ -61,9 +61,7 @@ COMPILER = $(topdir)/class/lib/$(PROFILE)/mcs.exe
TEST_PATTERN = 'test-*.cs'
endif
-TEST_ILS := $(wildcard *-lib.il)
-
-run-test-local: $(TEST_ILS:.il=.dll)
+run-test-local: test-377-lib.dll test-443-lib.dll
MONO_RUNTIME='$(RUNTIME)' $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/compiler-tester.exe positive $(TEST_PATTERN) $(COMPILER) known-issues-$(COMPILER_NAME) $(COMPILER_NAME).log
# do nothing for this target
diff --git a/mcs/tests/gtest-233.cs b/mcs/tests/gtest-233-exe.cs
index 8a52828d070..ea331614261 100644
--- a/mcs/tests/gtest-233.cs
+++ b/mcs/tests/gtest-233-exe.cs
@@ -1,4 +1,5 @@
// Compiler options: /r:gtest-233-lib.dll
+// Dependencies: gtest-233-lib.cs
using System;
using System.Collections.Generic;
using System.Text;
diff --git a/mcs/tests/gtest-235.cs b/mcs/tests/gtest-235-exe.cs
index 9a3ea01098a..7af72fa9325 100755
--- a/mcs/tests/gtest-235.cs
+++ b/mcs/tests/gtest-235-exe.cs
@@ -1,4 +1,5 @@
// Compiler options: /r:gtest-235-lib.dll
+// Dependencies: gtest-235-lib.cs
using System;
class GettingStarted
diff --git a/mcs/tests/gtest-xml-1-ref.xml b/mcs/tests/gtest-xml-1-ref.xml
deleted file mode 100644
index a90f1e3b8ac..00000000000
--- a/mcs/tests/gtest-xml-1-ref.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0"?>
-<doc>
- <assembly>
- <name>gtest-xml-1</name>
- </assembly>
- <members>
- <member name="T:GenericClass`1">
- <summary>This file throws an error when compiled with XML documentation</summary>
- </member>
- <member name="M:GenericClass`1.#ctor(`0)">
- <summary>This line caused bug #77183</summary>
- </member>
- </members>
-</doc>
diff --git a/mcs/tests/gtest-xml-1.cs b/mcs/tests/gtest-xml-1.cs
deleted file mode 100644
index d2a2dc460b4..00000000000
--- a/mcs/tests/gtest-xml-1.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-// Compiler options: -doc:gxml-1.xml
-using System;
-
-///<summary>This file throws an error when compiled with XML documentation</summary>
-public class GenericClass <gT>
-{
- gT m_data;
-
- ///<summary>This line caused bug #77183</summary>
- public GenericClass (gT Data)
- {
- m_data = Data;
- }
-}
-
-class Foo
-{
- public static void Main () {}
-}
diff --git a/mcs/tests/known-issues-gmcs b/mcs/tests/known-issues-gmcs
index fa5f02cf2cb..92e3a2f89e3 100644
--- a/mcs/tests/known-issues-gmcs
+++ b/mcs/tests/known-issues-gmcs
@@ -4,6 +4,7 @@
# csXXXX.cs : test case causes error
# csXXXX.cs IGNORE : adds test to ignore list
+test-442.cs IGNORE # Causes runtime to crash
test-50.cs IGNORE # Windows-only test
test-67.cs IGNORE # Windows-only test
test-anon-27.cs
@@ -12,3 +13,4 @@ test-465.cs IGNORE # need to fix the path separator to work both on Unix and Win
test-476.cs
gtest-230.cs
+gtest-231.cs
diff --git a/mcs/tests/test-483-lib.il b/mcs/tests/test-483-lib.il
deleted file mode 100644
index adc80ca3296..00000000000
--- a/mcs/tests/test-483-lib.il
+++ /dev/null
@@ -1,24 +0,0 @@
-.assembly 'test-483-lib' {}
-.assembly extern mscorlib {}
-
-.class public auto ansi beforefieldinit Foo {
-
- .method famorassem virtual newslot
- instance default object clone () cil managed
- {
- .maxstack 8
- ldarg.0
- ret
- }
-}
-
-.class public auto ansi Bar extends Foo {
-
- .method public virtual
- instance default object clone () cil managed
- {
- .maxstack 8
- ldarg.0
- ret
- }
-}
diff --git a/mcs/tests/test-483.cs b/mcs/tests/test-483.cs
deleted file mode 100644
index 666ae5d83d3..00000000000
--- a/mcs/tests/test-483.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-// Compiler options: -r:test-483-lib.dll
-
-using System;
-
-public class Tests {
-
- public static void Main () {
- Bar bar = null;
- try { bar.clone (); } catch (NullReferenceException) {}
- }
-}
diff --git a/mcs/tests/test-484.cs b/mcs/tests/test-484.cs
deleted file mode 100644
index ea6e1914ac7..00000000000
--- a/mcs/tests/test-484.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using System;
-
-namespace Test
-{
- public class TestBit {
- const bool a00 = false & false;
- const bool a01 = false & true;
- const bool a10 = true & false;
- const bool a11 = true & true;
-
- const bool o00 = false | false;
- const bool o01 = false | true;
- const bool o10 = true | false;
- const bool o11 = true | true;
-
- const bool x00 = false ^ false;
- const bool x01 = false ^ true;
- const bool x10 = true ^ false;
- const bool x11 = true ^ true;
-
- const bool correct = !a00 & !a01 & !a10 & a11 & !o00 & o01 & o10 & o11 & !x00 & x01 & x10 & !x11;
-
- public static void Main()
- {
- if (!correct)
- throw new Exception ();
- }
- }
-}
diff --git a/mcs/tests/test-485.cs b/mcs/tests/test-485.cs
deleted file mode 100644
index 909fc5f8f6e..00000000000
--- a/mcs/tests/test-485.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-// Compiler options: /checked+
-
-using System;
-
-
-public class MonoBUG
-{
- public static void Main (string[] args)
- {
- double B = 4.0;
- double K = 2.0;
- double A = - B / (K * K);
-
- Console.WriteLine ("{0}", A);
- }
-}
diff --git a/mcs/tests/test-486.cs b/mcs/tests/test-486.cs
deleted file mode 100644
index 91dd76b4aa0..00000000000
--- a/mcs/tests/test-486.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-using System;
-
-public class Test
-{
- public static void Main ()
- {
- string[] aPath = {"a","b"};
- char c = '.';
- if (c.ToString () != ".")
- throw new Exception ("c.ToString () is not \".\"");
- string erg = "";
- erg += String.Join (c.ToString (), aPath);
- if (erg != "a.b")
- throw new Exception ("erg is " + erg);
- }
-}
diff --git a/mcs/tests/test-487.cs b/mcs/tests/test-487.cs
deleted file mode 100644
index d692ea9b942..00000000000
--- a/mcs/tests/test-487.cs
+++ /dev/null
@@ -1,25 +0,0 @@
-using System;
-struct X {
- int i;
- static bool pass = false;
-
- X (object dummy)
- {
- X x = new X ();
- x.i = 1;
- int n = 0;
-
- if ((this = x).i == 1)
- n ++;
-
- if (this.i == 1)
- n ++;
-
- pass = (n == 2);
- }
- static int Main ()
- {
- new X (null);
- return pass ? 0 : 1;
- }
-} \ No newline at end of file
diff --git a/mcs/tests/test-488.cs b/mcs/tests/test-488.cs
deleted file mode 100644
index 62794ff50b8..00000000000
--- a/mcs/tests/test-488.cs
+++ /dev/null
@@ -1,25 +0,0 @@
-using System.Collections;
-
-class P {
- public int x;
-}
-
-struct Q {
- public P p;
- public Q (P p) { this.p = p; }
-}
-
-class Test {
- static IEnumerable foo () { return null; }
-
- static void Main ()
- {
- IEnumerable f = foo ();
- if (f != null)
- foreach (P p in f)
- p.x = 0;
- if (f != null)
- foreach (Q q in f)
- q.p.x = 0;
- }
-}
diff --git a/mcs/tests/test-xml-050.cs b/mcs/tests/test-xml-050.cs
index 5be57b7f10f..d1edc58f2b8 100644
--- a/mcs/tests/test-xml-050.cs
+++ b/mcs/tests/test-xml-050.cs
@@ -1,4 +1,4 @@
-// Compiler options: -doc:xml-050.xml -warnaserror
+// Compiler options: -doc:xml-050.cs -warnaserror
// see bug #76954.
// NOTE: It might got broken after some /doc related merge.
/// <summary>
diff --git a/mcs/tools/mjs/ChangeLog b/mcs/tools/mjs/ChangeLog
index 2795d359efb..6707afb0e2a 100644
--- a/mcs/tools/mjs/ChangeLog
+++ b/mcs/tools/mjs/ChangeLog
@@ -1,11 +1,3 @@
-2006-01-11 Evan Briones <evan@evanbriones.com>
-
- * mjs.cs: Fixed out by adding SetOption to the compiler engine.
-
-2006-01-08 Cesar Lopez Nataren <cnataren@novell.com>
-
- * mjs.cs: Add support for nostdlib, out, pkg and reference.
-
2005-09-13 Cesar Lopez Nataren <cnataren@novell.com>
* mjs.cs: Add support for flags parsing.
diff --git a/mcs/tools/mjs/mjs.cs b/mcs/tools/mjs/mjs.cs
index 48afccbe150..dafc67fac00 100644
--- a/mcs/tools/mjs/mjs.cs
+++ b/mcs/tools/mjs/mjs.cs
@@ -5,7 +5,7 @@
// Cesar Lopez Nataren (cesar@ciencias.unam.mx)
//
// (C) 2003, Cesar Lopez Nataren
-// (C) Copyright 2005, 2006, Novell Inc. (http://www.novell.com)
+// (C) Copyright 2005, Novell Inc. (http://www.novell.com)
//
//
@@ -36,7 +36,6 @@ using Microsoft.Vsa;
using Microsoft.JScript;
using System.Reflection;
using System.Collections;
-using System.Diagnostics;
using Microsoft.JScript.Vsa;
using System.Reflection.Emit;
using Mono.CSharp;
@@ -64,33 +63,25 @@ namespace Mono.JScript {
private static Assembly [] assemblies = new Assembly [0];
- private static bool StdLib = true;
+ private static bool StdLib;
private static void Usage ()
{
Console.WriteLine ("Mono JScript compiler\n" +
- "Copyright (C) 2003 - 2004 Cesar Lopez Nataren\n" +
- "Copyright (C) 2004 - 2006 Novell Inc (http://novell.com)\n\n" +
+ "(C) 2003 - 2004 Cesar Lopez Nataren\n" +
+ "(C) 2004 - 2005 Novell Inc (http://novell.com)\n\n" +
"mjs [options] source-file\n" +
" /about About the Mono JScript compiler\n" +
" /lib:PATH1,PATH2 Adds the paths to the assembly link path\n" +
- " /nostdlib[+|-] Does not load core libraries\n" +
- " /out:<file> Specify name of binary output file\n" +
- " /pkg:P1[,Pn] References packages P1..Pn\n" +
- " /r[eference]:ASS Reference the specified assembly\n" +
-
- "\n" +
- "Resources:\n" +
- " @file Read response file for more options\n\n" +
- "Options can be of the form -option or /option");
+ " /r[eference]:ASS Reference the specified assembly\n");
}
private static void About ()
{
Console.WriteLine (
"The Mono JScript compiler is:\n" +
- "Copyright (C) 2003 - 2004 Cesar Lopez Nataren\n" +
- "Copyright (C) 2004 - 2006 Novell Inc.\n\n" +
+ "(C) 2003 - 2004 Cesar Lopez Nataren\n" +
+ "(C) 2004 - 2005 Novell Inc.\n\n" +
"The compiler source code is released under the terms of both the MIT X11 and MPL\n" +
"The compiler was written by Cesar Lopez Nataren");
Environment.Exit (0);
@@ -103,6 +94,7 @@ namespace Mono.JScript {
{
foreach (string r in references)
LoadAssembly (r, false);
+ return;
}
private static void LoadAssembly (string assembly, bool soft)
@@ -163,10 +155,10 @@ namespace Mono.JScript {
Assembly [] n = new Assembly [top + 1];
assemblies.CopyTo (n, 0);
-
+
n [top] = a;
assemblies = n;
- }
+ }
static string [] LoadArgs (string file)
{
@@ -263,7 +255,7 @@ namespace Mono.JScript {
Usage ();
Environment.Exit (1);
}
-
+
references.Add (args [++i]);
return true;
@@ -311,47 +303,6 @@ namespace Mono.JScript {
SetOutputFile (value);
return true;
- case "/pkg":
- string packages;
-
- if (value == String.Empty) {
- Usage ();
- Environment.Exit (1);
- }
- packages = String.Join (" ", value.Split (new Char [] { ';', ',', '\n', '\r'}));
-
- ProcessStartInfo pi = new ProcessStartInfo ();
- pi.FileName = "pkg-config";
- pi.RedirectStandardOutput = true;
- pi.UseShellExecute = false;
- pi.Arguments = "--libs " + packages;
- Process p = null;
- try {
- p = Process.Start (pi);
- } catch (Exception e) {
- Console.Error.WriteLine ("Couldn't run pkg-config: " + e.Message);
- Environment.Exit (1);
- }
-
- if (p.StandardOutput == null){
- Console.Error.WriteLine ("Specified package did not return any information");
- return true;
- }
- string pkgout = p.StandardOutput.ReadToEnd ();
- p.WaitForExit ();
- if (p.ExitCode != 0) {
- Console.Error.WriteLine ("Error running pkg-config. Check the above output.");
- Environment.Exit (1);
- }
-
- if (pkgout != null){
- string [] xargs = pkgout.Trim (new Char [] {' ', '\n', '\r', '\t'}).
- Split (new Char [] { ' ', '\t'});
- args = AddArgs (args, xargs);
- }
- p.Close ();
- return true;
-
case "/r":
case "/reference": {
if (value == ""){
@@ -360,8 +311,9 @@ namespace Mono.JScript {
}
string [] refs = value.Split (new char [] { ';', ',' });
- foreach (string r in refs)
+ foreach (string r in refs){
references.Add (r);
+ }
return true;
}
@@ -382,16 +334,6 @@ namespace Mono.JScript {
case "/about":
About ();
return true;
-
-
- case "/nostdlib":
- case "/nostdlib+":
- StdLib = false;
- return true;
-
- case "/nostdlib-":
- StdLib = true;
- return true;
}
return false;
}
@@ -405,14 +347,18 @@ namespace Mono.JScript {
// split args into first half and second half based on '--'
// and add the extra_args before --
int split_position = Array.IndexOf (args, "--");
- if (split_position != -1) {
- Array.Copy (args, new_args, split_position);
- extra_args.CopyTo (new_args, split_position);
- Array.Copy (args, split_position, new_args, split_position + extra_args.Length, args.Length - split_position);
- } else {
- args.CopyTo (new_args, 0);
- extra_args.CopyTo (new_args, args.Length);
- }
+ if (split_position != -1)
+ {
+ Array.Copy (args, new_args, split_position);
+ extra_args.CopyTo (new_args, split_position);
+ Array.Copy (args, split_position, new_args, split_position + extra_args.Length, args.Length - split_position);
+ }
+ else
+ {
+ args.CopyTo (new_args, 0);
+ extra_args.CopyTo (new_args, args.Length);
+ }
+
return new_args;
}
@@ -589,6 +535,7 @@ namespace Mono.JScript {
// Entry point
//
private static void Main (string [] args) {
+
if (args.Length < 1) {
Usage ();
Environment.Exit (0);
@@ -618,7 +565,6 @@ namespace Mono.JScript {
engine.SetOption ("link_path", link_paths);
engine.SetOption ("first_source", first_source);
engine.SetOption ("assemblies", assemblies);
- engine.SetOption ("out", output_file);
engine.Compile ();
}
diff --git a/mcs/tools/mkbundle/ChangeLog b/mcs/tools/mkbundle/ChangeLog
index 874559c3c00..7d0fcc7cefc 100644
--- a/mcs/tools/mkbundle/ChangeLog
+++ b/mcs/tools/mkbundle/ChangeLog
@@ -1,7 +1,3 @@
-2005-12-29 Robert Jordan <robertj@gmx.net>
-
- * mkbundle.cs, template.c, template_z.c: Added support for Windows.
-
2005-12-18 Alexandre Rocha Lima e Marcondes
<alexandre@psl-pr.softwarelivre.org>
diff --git a/mcs/tools/mkbundle/TODO b/mcs/tools/mkbundle/TODO
index 58eb944c9a0..36397b20a94 100644
--- a/mcs/tools/mkbundle/TODO
+++ b/mcs/tools/mkbundle/TODO
@@ -8,25 +8,3 @@ Files:
* Need to trace a typical execution and locate the files that this
will require at runtime, provide hooks of some form.
-Windows Issues:
-
---static doesn't work because libmono.a is not distributed with the
-Windows package.
-
-Not a big deal, because the needed dlls can be simply distributed with
-the mkbundle-generated executable.
-
-For example, a bundled XSP needs:
-
-mono-1.dll
-libglib*.dll
-libgmodule*.dll
-libgthread*.dll
-iconv.dll
-intl.dll
-
-(roundabout 10MB). This seems to be the minimal working set of dlls
-that have to be distributed with a bundled application.
-
--z doesn't work due to some weird cygwin zlib problems.
-
diff --git a/mcs/tools/mkbundle/mkbundle.cs b/mcs/tools/mkbundle/mkbundle.cs
index 7fbda6bc581..959e0d6e146 100644
--- a/mcs/tools/mkbundle/mkbundle.cs
+++ b/mcs/tools/mkbundle/mkbundle.cs
@@ -9,7 +9,6 @@
// (C) Novell, Inc 2004
//
using System;
-using System.Diagnostics;
using System.Xml;
using System.Collections;
using System.Reflection;
@@ -36,8 +35,6 @@ class MakeBundle {
ArrayList sources = new ArrayList ();
int top = args.Length;
link_paths.Add (".");
-
- DetectOS ();
for (int i = 0; i < top; i++){
switch (args [i]){
@@ -85,10 +82,6 @@ class MakeBundle {
keeptemp = true;
break;
case "--static":
- if (style == "windows") {
- Console.Error.WriteLine ("The option `{0}' is not supported on this platform.", args [i]);
- return 1;
- }
static_link = true;
Console.WriteLine ("Note that statically linking the LGPL Mono runtime has more licensing restrictions than dynamically linking.");
Console.WriteLine ("See http://www.mono-project.com/Licensing for details on licensing.");
@@ -110,10 +103,6 @@ class MakeBundle {
config_dir = args [++i];
break;
case "-z":
- if (style == "windows") {
- Console.Error.WriteLine ("The option `{0}' is not supported on this platform.", args [i]);
- return 1;
- }
compress = true;
break;
default:
@@ -122,6 +111,8 @@ class MakeBundle {
}
}
+ DetectOS ();
+
Console.WriteLine ("Sources: {0} Auto-dependencies: {1}", sources.Count, autodeps);
if (sources.Count == 0 || output == null) {
Help ();
@@ -162,14 +153,6 @@ class MakeBundle {
"_{0}:\n",
name, size);
break;
- case "windows":
- sw.WriteLine (
- ".globl _{0}\n" +
- "\t.section .rdata,\"dr\"\n" +
- "\t.align 32\n" +
- "_{0}:\n",
- name, size);
- break;
}
}
@@ -177,7 +160,7 @@ class MakeBundle {
{
string temp_s = "temp.s"; // Path.GetTempFileName ();
string temp_c = "temp.c";
- string temp_o = "temp.o";
+ string temp_o = Path.GetTempFileName () + ".o";
if (compile_only)
temp_c = output;
@@ -204,8 +187,8 @@ class MakeBundle {
}
foreach (string url in files){
- string fname = new Uri (url).LocalPath;
- string aname = Path.GetFileName (fname);
+ string fname = url.Substring (7);
+ string aname = fname.Substring (fname.LastIndexOf ("/") + 1);
string encoded = aname.Replace ("-", "_").Replace (".", "_");
if (prog == null)
@@ -296,8 +279,9 @@ class MakeBundle {
ts.Close ();
Console.WriteLine ("Compiling:");
- string cmd = String.Format ("{0} -o {1} {2} ", GetEnv ("AS", "as"), temp_o, temp_s);
- int ret = Execute (cmd);
+ string cmd = String.Format ("as -o {0} {1} ", temp_o, temp_s);
+ Console.WriteLine (cmd);
+ int ret = system (cmd);
if (ret != 0){
Error ("[Fail]");
return;
@@ -344,7 +328,6 @@ class MakeBundle {
string zlib = (compress ? "-lz" : "");
string debugging = "-g";
- string cc = GetEnv ("CC", IsUnix ? "cc" : "gcc -mno-cygwin");
if (style == "linux")
debugging = "-ggdb";
@@ -354,17 +337,18 @@ class MakeBundle {
smonolib = "`pkg-config --variable=libdir mono`/libmono.a ";
else
smonolib = "-Wl,-Bstatic -lmono -Wl,-Bdynamic ";
- cmd = String.Format ("{4} -o {2} -Wall `pkg-config --cflags mono` {0} {3} " +
+ cmd = String.Format ("cc -o {2} -Wall `pkg-config --cflags mono` {0} {3}" +
"`pkg-config --libs-only-L mono` " + smonolib +
"`pkg-config --libs-only-l mono | sed -e \"s/\\-lmono //\"` {1}",
- temp_c, temp_o, output, zlib, cc);
+ temp_c, temp_o, output, zlib);
} else {
- cmd = String.Format ("{4} " + debugging + " -o {2} -Wall {0} `pkg-config --cflags --libs mono` {3} {1}",
- temp_c, temp_o, output, zlib, cc);
+ cmd = String.Format ("cc " + debugging + " -o {2} -Wall {0} `pkg-config --cflags --libs mono` {3} {1}",
+ temp_c, temp_o, output, zlib);
}
- ret = Execute (cmd);
+ Console.WriteLine (cmd);
+ ret = system (cmd);
if (ret != 0){
Error ("[Fail]");
return;
@@ -411,7 +395,7 @@ class MakeBundle {
return;
files.Add (codebase);
- Assembly a = Assembly.LoadFrom (new Uri(codebase).LocalPath);
+ Assembly a = Assembly.LoadFrom (codebase);
if (!autodeps)
return;
@@ -486,7 +470,7 @@ class MakeBundle {
" --config F Bundle system config file `F'\n" +
" --config-dir D Set MONO_CFG_DIR to `D'\n" +
" --static Statically link to mono libs\n" +
- " -z Compress the assemblies before embedding.\n");
+ " -z Compress the assemblies before embedding.\n");
}
[DllImport ("libc")]
@@ -496,12 +480,6 @@ class MakeBundle {
static void DetectOS ()
{
- if (!IsUnix) {
- Console.WriteLine ("OS is: Windows");
- style = "windows";
- return;
- }
-
IntPtr buf = UnixMarshal.AllocHeap(8192);
if (uname (buf) != 0){
Console.WriteLine ("Warning: Unable to detect OS");
@@ -514,29 +492,6 @@ class MakeBundle {
UnixMarshal.FreeHeap(buf);
}
-
- static bool IsUnix {
- get {
- int p = (int) Environment.OSVersion.Platform;
- return ((p == 4) || (p == 128));
- }
- }
-
- static int Execute (string cmdLine)
- {
- Console.WriteLine (cmdLine);
- if (IsUnix) {
- return system (cmdLine);
- } else {
- Process p = Process.Start ("sh", String.Format ("-c \"{0}\"", cmdLine));
- p.WaitForExit ();
- return p.ExitCode;
- }
- }
-
- static string GetEnv (string name, string defaultValue)
- {
- string s = Environment.GetEnvironmentVariable (name);
- return s != null ? s : defaultValue;
- }
+
}
+
diff --git a/mcs/tools/mkbundle/template.c b/mcs/tools/mkbundle/template.c
index 86fa34c704c..74f2d6a6fd4 100644
--- a/mcs/tools/mkbundle/template.c
+++ b/mcs/tools/mkbundle/template.c
@@ -14,7 +14,7 @@ int main (int argc, char* argv[])
newargs [++i] = NULL;
if (config_dir != NULL && getenv ("MONO_CFG_DIR") == NULL)
- mono_set_dirs (getenv ("MONO_PATH"), config_dir);
+ setenv ("MONO_CFG_DIR", config_dir, 1);
install_dll_config_files ();
mono_register_bundled_assemblies(bundled);
diff --git a/mcs/tools/mkbundle/template_z.c b/mcs/tools/mkbundle/template_z.c
index 053cdba5683..a0bdecd616f 100644
--- a/mcs/tools/mkbundle/template_z.c
+++ b/mcs/tools/mkbundle/template_z.c
@@ -55,7 +55,7 @@ int main (int argc, char* argv[])
newargs [++i] = NULL;
if (config_dir != NULL && getenv ("MONO_CFG_DIR") == NULL)
- mono_set_dirs (getenv ("MONO_PATH"), config_dir);
+ setenv ("MONO_CFG_DIR", config_dir, 1);
install_dll_config_files ();
diff --git a/mono/metadata/ChangeLog b/mono/metadata/ChangeLog
index 751d784843f..dae46f090fc 100644
--- a/mono/metadata/ChangeLog
+++ b/mono/metadata/ChangeLog
@@ -10,14 +10,6 @@
(method_from_memberref): Compare the uninstantiated signatures;
fixes #76417.
-2006-01-18 Robert Jordan <robertj@gmx.net>
-
- * boehm-gc.c, null-gc.c (mono_gc_weak_link_remove):
- Clear the weak link. Fixes bug #77170.
-
- * gc.c (mono_gchandle_free):
- Reflect *-gc.c changes (tiny optimization).
-
2006-01-18 Zoltan Varga <vargaz@gmail.com>
* metadata.c (mono_metadata_signature_dup): Applied patch from
@@ -49,24 +41,15 @@ Mon Jan 16 19:20:43 CET 2006 Paolo Molaro <lupus@ximian.com>
don't need that anymore.
2006-01-12 Miguel de Icaza <miguel@novell.com>
-
+
* socket-io.c
(ves_icall_System_Net_Sockets_Socket_GetSocketOption_obj_internal):
To avoid initing the nested_classes when not needed I turned the
PeerCredData as a toplevel internal class, as it has to be shared
anyways.
- Fixes the CASA issue.
-
-2006-01-11 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * domain.c: Accessors for MonoJitInfo
-
- * profiler-private.h: Add jitinfo to the end jit hook
-
- * profiler.[ch]: Define new hooks, called after jitting which give
- the MonoJitInfo that was compiled
-
+ Fixes the CASA issue.
+
2006-01-10 Martin Baulig <martin@ximian.com>
* class.c (mono_class_setup_events): Add support for generic
diff --git a/mono/metadata/appdomain.h b/mono/metadata/appdomain.h
index 7fc842fb046..b9f37c8ca0d 100644
--- a/mono/metadata/appdomain.h
+++ b/mono/metadata/appdomain.h
@@ -115,18 +115,6 @@ mono_context_get (void);
MonoJitInfo *
mono_jit_info_table_find (MonoDomain *domain, char *addr);
-/* MonoJitInfo accessors */
-
-gpointer
-mono_jit_info_get_code_start (MonoJitInfo* ji);
-
-int
-mono_jit_info_get_code_size (MonoJitInfo* ji);
-
-MonoMethod*
-mono_jit_info_get_method (MonoJitInfo* ji);
-
-
MonoImage*
mono_get_corlib (void);
diff --git a/mono/metadata/boehm-gc.c b/mono/metadata/boehm-gc.c
index 9cccd11b062..04a8af07018 100644
--- a/mono/metadata/boehm-gc.c
+++ b/mono/metadata/boehm-gc.c
@@ -132,7 +132,6 @@ void
mono_gc_weak_link_remove (void **link_addr)
{
GC_unregister_disappearing_link (link_addr);
- *link_addr = NULL;
}
MonoObject*
diff --git a/mono/metadata/domain.c b/mono/metadata/domain.c
index 3acf3963c81..ac7ab955d46 100644
--- a/mono/metadata/domain.c
+++ b/mono/metadata/domain.c
@@ -320,24 +320,6 @@ mono_install_jit_info_find_in_aot (MonoJitInfoFindInAot func)
jit_info_find_in_aot_func = func;
}
-gpointer
-mono_jit_info_get_code_start (MonoJitInfo* ji)
-{
- return ji->code_start;
-}
-
-int
-mono_jit_info_get_code_size (MonoJitInfo* ji)
-{
- return ji->code_size;
-}
-
-MonoMethod*
-mono_jit_info_get_method (MonoJitInfo* ji)
-{
- return ji->method;
-}
-
gboolean
mono_string_equal (MonoString *s1, MonoString *s2)
{
diff --git a/mono/metadata/gc.c b/mono/metadata/gc.c
index 00fecb0bd33..b8374c6d064 100644
--- a/mono/metadata/gc.c
+++ b/mono/metadata/gc.c
@@ -665,8 +665,7 @@ mono_gchandle_free (guint32 gchandle)
if (slot < handles->size && (handles->bitmap [slot / 32] & (1 << (slot % 32)))) {
if (handles->type <= HANDLE_WEAK_TRACK)
mono_gc_weak_link_remove (&handles->entries [slot]);
- else
- handles->entries [slot] = NULL;
+ handles->entries [slot] = NULL;
handles->bitmap [slot / 32] &= ~(1 << (slot % 32));
} else {
/* print a warning? */
diff --git a/mono/metadata/null-gc.c b/mono/metadata/null-gc.c
index 397da356f56..cad88bdad3d 100644
--- a/mono/metadata/null-gc.c
+++ b/mono/metadata/null-gc.c
@@ -76,7 +76,6 @@ mono_gc_weak_link_add (void **link_addr, MonoObject *obj)
void
mono_gc_weak_link_remove (void **link_addr)
{
- *link_addr = NULL;
}
MonoObject*
diff --git a/mono/metadata/profiler-private.h b/mono/metadata/profiler-private.h
index 3885e42cbca..5381ad935a1 100644
--- a/mono/metadata/profiler-private.h
+++ b/mono/metadata/profiler-private.h
@@ -26,7 +26,7 @@ void mono_profiler_shutdown (void);
void mono_profiler_method_enter (MonoMethod *method);
void mono_profiler_method_leave (MonoMethod *method);
void mono_profiler_method_jit (MonoMethod *method);
-void mono_profiler_method_end_jit (MonoMethod *method, MonoJitInfo* jinfo, int result);
+void mono_profiler_method_end_jit (MonoMethod *method, int result);
void mono_profiler_code_transition (MonoMethod *method, int result);
void mono_profiler_allocation (MonoObject *obj, MonoClass *klass);
diff --git a/mono/metadata/profiler.c b/mono/metadata/profiler.c
index c40bf099018..27eba5f6062 100644
--- a/mono/metadata/profiler.c
+++ b/mono/metadata/profiler.c
@@ -38,7 +38,6 @@ static MonoProfileClassFunc class_end_unload;
static MonoProfileMethodFunc jit_start;
static MonoProfileMethodResult jit_end;
-static MonoProfileJitResult jit_end2;
static MonoProfileMethodResult man_unman_transition;
static MonoProfileAllocFunc allocation_cb;
static MonoProfileStatFunc statistical_cb;
@@ -99,12 +98,6 @@ mono_profiler_install_jit_compile (MonoProfileMethodFunc start, MonoProfileMetho
}
void
-mono_profiler_install_jit_end (MonoProfileJitResult end)
-{
- jit_end2 = end;
-}
-
-void
mono_profiler_install_thread (MonoProfileThreadFunc start, MonoProfileThreadFunc end)
{
thread_start = start;
@@ -198,14 +191,10 @@ mono_profiler_method_jit (MonoMethod *method)
}
void
-mono_profiler_method_end_jit (MonoMethod *method, MonoJitInfo* jinfo, int result)
+mono_profiler_method_end_jit (MonoMethod *method, int result)
{
- if ((mono_profiler_events & MONO_PROFILE_JIT_COMPILATION)) {
- if (jit_end)
- jit_end (current_profiler, method, result);
- if (jit_end2)
- jit_end2 (current_profiler, method, jinfo, result);
- }
+ if ((mono_profiler_events & MONO_PROFILE_JIT_COMPILATION) && jit_end)
+ jit_end (current_profiler, method, result);
}
void
diff --git a/mono/metadata/profiler.h b/mono/metadata/profiler.h
index 1d9e713560b..a689304b007 100644
--- a/mono/metadata/profiler.h
+++ b/mono/metadata/profiler.h
@@ -67,7 +67,6 @@ typedef void (*MonoProfileAssemblyFunc) (MonoProfiler *prof, MonoAssembly *assem
typedef void (*MonoProfileAppDomainResult)(MonoProfiler *prof, MonoDomain *domain, int result);
typedef void (*MonoProfileMethodResult) (MonoProfiler *prof, MonoMethod *method, int result);
-typedef void (*MonoProfileJitResult) (MonoProfiler *prof, MonoMethod *method, MonoJitInfo* jinfo, int result);
typedef void (*MonoProfileClassResult) (MonoProfiler *prof, MonoClass *klass, int result);
typedef void (*MonoProfileModuleResult) (MonoProfiler *prof, MonoImage *module, int result);
typedef void (*MonoProfileAssemblyResult) (MonoProfiler *prof, MonoAssembly *assembly, int result);
@@ -102,7 +101,6 @@ void mono_profiler_install_class (MonoProfileClassFunc start_load, MonoPro
MonoProfileClassFunc start_unload, MonoProfileClassFunc end_unload);
void mono_profiler_install_jit_compile (MonoProfileMethodFunc start, MonoProfileMethodResult end);
-void mono_profiler_install_jit_end (MonoProfileJitResult end);
void mono_profiler_install_enter_leave (MonoProfileMethodFunc enter, MonoProfileMethodFunc fleave);
void mono_profiler_install_thread (MonoProfileThreadFunc start, MonoProfileThreadFunc end);
void mono_profiler_install_transition (MonoProfileMethodResult callback);
diff --git a/mono/mini/ChangeLog b/mono/mini/ChangeLog
index e74602bebce..c2b58f20e97 100644
--- a/mono/mini/ChangeLog
+++ b/mono/mini/ChangeLog
@@ -1,19 +1,8 @@
-2006-01-17 Zoltan Varga <vargaz@gmail.com>
-
- * mini.h: Move mono_bitset_test_fast macro to monobitset.h where it belongs.
-
2006-01-16 Zoltan Varga <vargaz@gmail.com>
- * mini.h (mono_bitset_test_fast): Disable the 'fast' implementation which
- depends on implementation details of monobitset.
-
* mini.c (mini_get_ldelema_ins): Fix handling of 1 dimensional arrays.
Fixes #77271.
-2006-01-15 Zoltan Varga <vargaz@gmail.com>
-
- * liveness.c: Update after monobitset changes.
-
2006-01-14 Zoltan Varga <vargaz@gmail.com>
* mini-amd64.c (mono_arch_compute_omit_fp): Fix a leak.
@@ -24,14 +13,6 @@
* mini-s390x.c: Remove warning messages.
-2006-01-11 Ben Maurer <bmaurer@andrew.cmu.edu>
-
- * mini.c: pass the jitinfo to mono_profiler_method_end_jit.
-
-2006-01-10 Zoltan Varga <vargaz@gmail.com>
-
- * generics.2.cs: Add ldelem/stelem_any test.
-
2006-01-10 Neale Ferguson <neale@sinenomine.net>
* mini-s390.c: Fix ATOMIC_ADD_I4 operation.
@@ -40,12 +21,6 @@
* inssel-long.brg: Fix int->long ovf conversion rules. Fixes #77172.
-2006-01-06 Zoltan Varga <vargaz@gmail.com>
-
- * generics.2.cs: Reenable vtype tests.
-
- * inssel-x86.brg: Remove an icorrect valuetype rule.
-
2006-01-06 Neale Ferguson <neale@sinenomine.net>
* mini-s390x.c, inssel-s390x.brg, cpu-s390x.md: Fix ATOMIC_I8 operations. Provide
diff --git a/mono/mini/generics.2.cs b/mono/mini/generics.2.cs
index 1688c779f1f..dfab228c0b8 100644
--- a/mono/mini/generics.2.cs
+++ b/mono/mini/generics.2.cs
@@ -14,7 +14,7 @@ class Tests {
{
return TestDriver.RunTests (typeof (Tests));
}
-
+
public static int test_1_nullable_unbox ()
{
return Unbox<int?> (1).Value;
@@ -41,6 +41,8 @@ class Tests {
return (o is int?) ? 1 : 0;
}
+ /* FIXME: This doesn't work yet
+
public static int test_1_nullable_unbox_vtype ()
{
return Unbox<TestStruct?> (new TestStruct (1)).Value.i;
@@ -66,21 +68,7 @@ class Tests {
object o = new TestStruct (1);
return (o is TestStruct?) ? 1 : 0;
}
-
- public static void stelem_any<T> (T[] arr, T elem) {
- arr [0] = elem;
- }
-
- public static T ldelem_any<T> (T[] arr) {
- return arr [0];
- }
-
- public static int test_1_ldelem_stelem_any_int () {
- int[] arr = new int [3];
- stelem_any (arr, 1);
-
- return ldelem_any (arr);
- }
+ */
static object Box<T> (T t)
{
diff --git a/mono/mini/inssel-x86.brg b/mono/mini/inssel-x86.brg
index 9e44c67a8bd..44939553877 100644
--- a/mono/mini/inssel-x86.brg
+++ b/mono/mini/inssel-x86.brg
@@ -335,6 +335,12 @@ stmt: OP_OUTARG (CEE_LDIND_REF (base)) {
mono_bblock_add_inst (s->cbb, tree);
}
+stmt: OP_OUTARG (CEE_LDOBJ (reg)) {
+ tree->opcode = OP_X86_PUSH;
+ tree->sreg1 = state->left->reg1;
+ mono_bblock_add_inst (s->cbb, tree);
+}
+
stmt: OP_OUTARG (freg) {
MONO_EMIT_NEW_BIALU_IMM (s, OP_SUB_IMM, X86_ESP, X86_ESP, 8);
tree->opcode = OP_STORER8_MEMBASE_REG;
diff --git a/mono/mini/liveness.c b/mono/mini/liveness.c
index 38fe980a0b0..36710656a70 100644
--- a/mono/mini/liveness.c
+++ b/mono/mini/liveness.c
@@ -13,12 +13,6 @@
//#define DEBUG_LIVENESS
-#if SIZEOF_VOID_P == 8
-#define BITS_PER_CHUNK 64
-#else
-#define BITS_PER_CHUNK 32
-#endif
-
extern guint8 mono_burg_arity [];
/* mono_bitset_mp_new:
@@ -410,27 +404,27 @@ mono_analyze_liveness (MonoCompile *cfg)
MonoBasicBlock *bb = cfg->bblocks [i];
guint32 rem;
- rem = max_vars % BITS_PER_CHUNK;
- for (j = 0; j < (max_vars / BITS_PER_CHUNK) + 1; ++j) {
- gsize bits_in;
- gsize bits_out;
+ rem = max_vars % 32;
+ for (j = 0; j < (max_vars / 32) + 1; ++j) {
+ guint32 bits_in;
+ guint32 bits_out;
int k, nbits;
- if (j > (max_vars / BITS_PER_CHUNK))
+ if (j > (max_vars / 32))
break;
else
- if (j == (max_vars / BITS_PER_CHUNK))
+ if (j == (max_vars / 32))
nbits = rem;
else
- nbits = BITS_PER_CHUNK;
+ nbits = 32;
- bits_in = mono_bitset_test_bulk (bb->live_in_set, j * BITS_PER_CHUNK);
- bits_out = mono_bitset_test_bulk (bb->live_out_set, j * BITS_PER_CHUNK);
+ bits_in = mono_bitset_test_bulk (bb->live_in_set, j * 32);
+ bits_out = mono_bitset_test_bulk (bb->live_out_set, j * 32);
for (k = 0; k < nbits; ++k) {
- if (bits_in & ((gsize)1 << k))
- update_live_range (cfg, (j * BITS_PER_CHUNK) + k, bb->dfn, 0);
- if (bits_out & ((gsize)1 << k))
- update_live_range (cfg, (j * BITS_PER_CHUNK) + k, bb->dfn, 0xffff);
+ if (bits_in & (1 << k))
+ update_live_range (cfg, (j * 32) + k, bb->dfn, 0);
+ if (bits_out & (1 << k))
+ update_live_range (cfg, (j * 32) + k, bb->dfn, 0xffff);
}
}
}
diff --git a/mono/mini/mini.c b/mono/mini/mini.c
index 039e13e0714..8e5e4091847 100644
--- a/mono/mini/mini.c
+++ b/mono/mini/mini.c
@@ -9269,7 +9269,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
if ((i = mono_method_to_ir (cfg, method, NULL, NULL, cfg->locals_start, NULL, NULL, NULL, 0, FALSE)) < 0) {
if (cfg->prof_options & MONO_PROFILE_JIT_COMPILATION)
- mono_profiler_method_end_jit (method, NULL, MONO_PROFILE_FAILED);
+ mono_profiler_method_end_jit (method, MONO_PROFILE_FAILED);
mono_destroy_compile (cfg);
return NULL;
}
@@ -9549,7 +9549,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
mono_jit_stats.native_code_size += cfg->code_len;
if (cfg->prof_options & MONO_PROFILE_JIT_COMPILATION)
- mono_profiler_method_end_jit (method, jinfo, MONO_PROFILE_OK);
+ mono_profiler_method_end_jit (method, MONO_PROFILE_OK);
/* this can only be set if the security manager is active */
if (cfg->exception_type == MONO_EXCEPTION_SECURITY_LINKDEMAND) {
diff --git a/mono/mini/mini.h b/mono/mini/mini.h
index 85a74f7ee5b..c61cf21b823 100644
--- a/mono/mini/mini.h
+++ b/mono/mini/mini.h
@@ -39,6 +39,12 @@
/* Version number of the AOT file format */
#define MONO_AOT_FILE_VERSION "25"
+#if 1
+#define mono_bitset_test_fast(set,n) (((guint32*)set)[2+(n)/32] & (1 << ((n) % 32)))
+#else
+#define mono_bitset_test_fast(set,n) mono_bitset_test(set,n)
+#endif
+
#if 0
#define mono_bitset_foreach_bit(set,b,n) \
for (b = 0; b < n; b++)\
diff --git a/mono/utils/ChangeLog b/mono/utils/ChangeLog
index 8e5a30ffd3a..194c8073af1 100644
--- a/mono/utils/ChangeLog
+++ b/mono/utils/ChangeLog
@@ -1,12 +1,3 @@
-2006-01-17 Zoltan Varga <vargaz@gmail.com>
-
- * monobitset.h monobitset.c: Move the mono_bitset_test_fast macro here
- from mini.h. Also fix it after the 64 bit changes.
-
-2006-01-15 Zoltan Varga <vargaz@gmail.com>
-
- * monobitset.h monobitset.c: Use 64 bit chunks on 64 bit machines.
-
2006-01-04 Zoltan Varga <vargaz@gmail.com>
* mono-codeman.c (new_codechunk): Fix warnings.
diff --git a/mono/utils/monobitset.c b/mono/utils/monobitset.c
index c23381f7608..a39820c51aa 100644
--- a/mono/utils/monobitset.c
+++ b/mono/utils/monobitset.c
@@ -10,12 +10,12 @@
#define MONO_ZERO_LEN_ARRAY 1
#endif
-#define BITS_PER_CHUNK MONO_BITSET_BITS_PER_CHUNK
+#define BITS_PER_CHUNK (8 * sizeof (guint32))
struct MonoBitSet {
- gsize size;
- gsize flags;
- gsize data [MONO_ZERO_LEN_ARRAY];
+ guint32 size;
+ guint32 flags;
+ guint32 data [MONO_ZERO_LEN_ARRAY];
};
/*
@@ -31,7 +31,7 @@ guint32
mono_bitset_alloc_size (guint32 max_size, guint32 flags) {
guint32 real_size = (max_size + BITS_PER_CHUNK - 1) / BITS_PER_CHUNK;
- return sizeof (MonoBitSet) + sizeof (gsize) * (real_size - MONO_ZERO_LEN_ARRAY);
+ return sizeof (MonoBitSet) + sizeof (guint32) * (real_size - MONO_ZERO_LEN_ARRAY);
}
/*
@@ -47,7 +47,7 @@ mono_bitset_new (guint32 max_size, guint32 flags) {
guint32 real_size = (max_size + BITS_PER_CHUNK - 1) / BITS_PER_CHUNK;
MonoBitSet *result;
- result = g_malloc0 (sizeof (MonoBitSet) + sizeof (gsize) * (real_size - MONO_ZERO_LEN_ARRAY));
+ result = g_malloc0 (sizeof (MonoBitSet) + sizeof (guint32) * (real_size - MONO_ZERO_LEN_ARRAY));
result->size = real_size * BITS_PER_CHUNK;
result->flags = flags;
return result;
@@ -101,7 +101,7 @@ mono_bitset_set (MonoBitSet *set, guint32 pos) {
g_return_if_fail (pos < set->size);
- set->data [j] |= (gsize)1 << bit;
+ set->data [j] |= 1 << bit;
}
/*
@@ -119,7 +119,7 @@ mono_bitset_test (const MonoBitSet *set, guint32 pos) {
g_return_val_if_fail (pos < set->size, 0);
- return (set->data [j] & ((gsize)1 << bit)) > 0;
+ return set->data [j] & (1 << bit);
}
/*
@@ -127,10 +127,10 @@ mono_bitset_test (const MonoBitSet *set, guint32 pos) {
* @set: bitset ptr
* @pos: test bit at this pos
*
- * Return 32/64 bits from the bitset, starting from @pos, which must be
- * divisible with 32/64.
+ * Return 32 bits from the bitset, starting from @pos, which must be divisible
+ * with 32.
*/
-gsize
+guint32
mono_bitset_test_bulk (const MonoBitSet *set, guint32 pos) {
int j = pos / BITS_PER_CHUNK;
@@ -154,7 +154,7 @@ mono_bitset_clear (MonoBitSet *set, guint32 pos) {
g_return_if_fail (pos < set->size);
- set->data [j] &= ~((gsize)1 << bit);
+ set->data [j] &= ~(1 << bit);
}
/*
@@ -180,7 +180,7 @@ void
mono_bitset_set_all (MonoBitSet *set) {
int i;
for (i = 0; i < set->size / BITS_PER_CHUNK; ++i)
- set->data [i] = (gsize)-1;
+ set->data [i] = 0xffffffff;
}
/*
@@ -239,16 +239,6 @@ mono_bitset_count (const MonoBitSet *set) {
count += table [b [2] >> 4];
count += table [b [3] & 0xf];
count += table [b [3] >> 4];
-#if SIZEOF_VOID_P == 8
- count += table [b [4] & 0xf];
- count += table [b [4] >> 4];
- count += table [b [5] & 0xf];
- count += table [b [5] >> 4];
- count += table [b [6] & 0xf];
- count += table [b [6] >> 4];
- count += table [b [7] & 0xf];
- count += table [b [7] >> 4];
-#endif
}
}
return count;
@@ -297,18 +287,13 @@ bitstart_mask [] = {
#else
static inline gint
-my_g_bit_nth_lsf (gsize mask, gint nth_bit)
+my_g_bit_nth_lsf (guint32 mask, gint nth_bit)
{
do {
nth_bit++;
- if (mask & ((gsize)1 << nth_bit)) {
- if (nth_bit == BITS_PER_CHUNK)
- /* On 64 bit platforms, 1 << 64 == 1 */
- return -1;
- else
- return nth_bit;
- }
- } while (nth_bit < BITS_PER_CHUNK);
+ if (mask & (1 << (gulong) nth_bit))
+ return nth_bit;
+ } while (nth_bit < 31);
return -1;
}
#define my_g_bit_nth_lsf_nomask(m) (my_g_bit_nth_lsf((m),-1))
@@ -548,7 +533,7 @@ mono_bitset_foreach (MonoBitSet *set, MonoBitSetFunc func, gpointer data)
for (i = 0; i < set->size / BITS_PER_CHUNK; ++i) {
if (set->data [i]) {
for (j = 0; j < BITS_PER_CHUNK; ++j)
- if (set->data [i] & ((gsize)1 << j))
+ if (set->data [i] & (1 << j))
func (j + i * BITS_PER_CHUNK, data);
}
}
diff --git a/mono/utils/monobitset.h b/mono/utils/monobitset.h
index 8a68d81f331..6807336a6c9 100644
--- a/mono/utils/monobitset.h
+++ b/mono/utils/monobitset.h
@@ -10,11 +10,6 @@ enum {
MONO_BITSET_DONT_FREE = 1
};
-#define MONO_BITSET_BITS_PER_CHUNK (8 * sizeof (gsize))
-
-/* Fast access to bits which depends on the implementation of the bitset */
-#define mono_bitset_test_fast(set,n) (((gsize*)set)[2+(n)/MONO_BITSET_BITS_PER_CHUNK] & ((gsize)1 << ((n) % MONO_BITSET_BITS_PER_CHUNK)))
-
/*
* Interface documentation can be found in the c-file.
* Interface documentation by Dennis Haney.
@@ -34,7 +29,7 @@ void mono_bitset_set_all (MonoBitSet *set);
int mono_bitset_test (const MonoBitSet *set, guint32 pos);
-gsize mono_bitset_test_bulk (const MonoBitSet *set, guint32 pos);
+guint32 mono_bitset_test_bulk (const MonoBitSet *set, guint32 pos);
void mono_bitset_clear (MonoBitSet *set, guint32 pos);
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
index b74d809d030..7ddb6fa1780 100644
--- a/scripts/Makefile.am
+++ b/scripts/Makefile.am
@@ -40,7 +40,6 @@ scripts_2_0 = \
gmcs \
ilasm2 \
monop2 \
- nunit-console2 \
wsdl2 \
xbuild