[xbuild] Fix make dist broken by a350f8f0f470
[mono.git] / mcs / tools / wsdl / MonoWSDL2.cs
index 85c798a2fa96cb7dcc5a0e4af4af95bd30b3785c..2b00b58c29179b6a2606aa82bf6a829a6de4bf1d 100644 (file)
@@ -7,7 +7,6 @@
 /// Copyright (C) 2003, Erik LeBel,\r
 ///\r
 \r
-#if NET_2_0\r
 \r
 using System;\r
 using System.Xml;\r
@@ -127,9 +126,11 @@ namespace Mono.WebServices
                                codeUnit.Namespaces.Add (proxyCode);\r
                                \r
                                WebReferenceCollection references = new WebReferenceCollection ();\r
+\r
+                               DiscoveryClientProtocol dcc = CreateClient ();\r
+\r
                                foreach (string murl in urls) \r
                                {\r
-                                       DiscoveryClientProtocol dcc = CreateClient ();\r
 \r
                                        string url = murl;\r
                                        if (!url.StartsWith ("http://") && !url.StartsWith ("https://") && !url.StartsWith ("file://"))\r
@@ -138,21 +139,20 @@ namespace Mono.WebServices
                                        dcc.DiscoverAny (url);\r
                                        dcc.ResolveAll ();\r
                                        \r
-                                       WebReference reference = new WebReference (dcc.Documents, proxyCode, protocol, appSettingURLKey, appSettingBaseURL);\r
-                                       references.Add (reference);\r
-                                       \r
-                                       if (sampleSoap != null)\r
-                                               ConsoleSampleGenerator.Generate (descriptions, schemas, sampleSoap, protocol);\r
                                }\r
                                \r
+                               WebReference reference = new WebReference (dcc.Documents, proxyCode, protocol, appSettingURLKey, appSettingBaseURL);\r
+                               references.Add (reference);\r
+                               \r
+                               if (sampleSoap != null)\r
+                                       ConsoleSampleGenerator.Generate (descriptions, schemas, sampleSoap, protocol);\r
+                               \r
                                if (sampleSoap != null)\r
                                        return 0;\r
                                        \r
                                // generate the code\r
-                               if (GenerateCode (references, codeUnit))\r
-                                       return 1;\r
-                               else\r
-                                       return 0;\r
+                               GenerateCode (references, codeUnit);\r
+                               return 0;\r
                        }\r
                        catch (Exception exception)\r
                        {\r
@@ -174,17 +174,20 @@ namespace Mono.WebServices
                        bool hasWarnings = false;\r
                        \r
                        CodeDomProvider provider = GetProvider();\r
-                       ICodeGenerator generator = provider.CreateGenerator();\r
                                \r
                        StringCollection validationWarnings;\r
-                       validationWarnings = ServiceDescriptionImporter.GenerateWebReferences (references, options, style, generator, codeUnit, verbose);\r
+                       WebReferenceOptions opts = new WebReferenceOptions ();\r
+                       opts.CodeGenerationOptions = options;\r
+                       opts.Style = style;\r
+                       opts.Verbose = verbose;\r
+                       validationWarnings = ServiceDescriptionImporter.GenerateWebReferences (references, provider, codeUnit, opts);\r
                        \r
                        for (int n=0; n<references.Count; n++)\r
                        {\r
                                WebReference wr  = references [n];\r
                                \r
                                BasicProfileViolationCollection violations = new BasicProfileViolationCollection ();\r
-                               if (!WebServicesInteroperability.CheckConformance (WsiClaims.BP10, wr, violations)) {\r
+                               if (String.Compare (protocol, "SOAP", StringComparison.OrdinalIgnoreCase) == 0 && !WebServicesInteroperability.CheckConformance (WsiProfiles.BasicProfile1_1, wr, violations)) {\r
                                        wr.Warnings |= ServiceDescriptionImportWarnings.WsiConformance;\r
                                }\r
                                \r
@@ -192,14 +195,14 @@ namespace Mono.WebServices
                                {\r
                                        if (!hasWarnings) {\r
                                                WriteText ("", 0, 0);\r
-                                               WriteText ("There where some warnings while generating the code:", 0, 0);\r
+                                               WriteText ("There were some warnings while generating the code:", 0, 0);\r
                                        }\r
                                        \r
                                        WriteText ("", 0, 0);\r
                                        WriteText (urls[n], 2, 2);\r
                                        \r
                                        if ((wr.Warnings & ServiceDescriptionImportWarnings.WsiConformance) > 0) {\r
-                                               WriteText ("- This web reference does not conform to WS-I Basic Profile v1.0", 4, 6); \r
+                                               WriteText ("- This web reference does not conform to WS-I Basic Profile v1.1", 4, 6); \r
                                                foreach (BasicProfileViolation vio in violations) {\r
                                                        WriteText (vio.NormativeStatement + ": " + vio.Details, 8, 8);\r
                                                        foreach (string ele in vio.Elements)\r
@@ -249,7 +252,7 @@ namespace Mono.WebServices
                                StreamWriter writer = new StreamWriter(filename);\r
                                \r
                                CodeGeneratorOptions compilerOptions = new CodeGeneratorOptions();\r
-                               generator.GenerateCodeFromCompileUnit (codeUnit, writer, compilerOptions);\r
+                               provider.GenerateCodeFromCompileUnit (codeUnit, writer, compilerOptions);\r
                                writer.Close();\r
                        }\r
                        \r
@@ -545,4 +548,3 @@ namespace Mono.WebServices
        }\r
 }\r
 \r
-#endif\r