2009-06-12 Zoltan Varga <vargaz@gmail.com>
[mcs.git] / tools / svcutil / CommandLineOptions.cs
blobe748a60dcb98b180b57ac6c7b4e6ada6a4a91907
1 using System;
2 using System.Reflection;
3 using System.Runtime.Serialization;
4 using Mono.GetOptions;
6 [assembly: AssemblyTitle ("Mono service contract conversion tool")]
7 [assembly: AssemblyDescription ("")]
8 [assembly: AssemblyVersion ("0.1.0")]
9 [assembly: AssemblyCopyright ("Copyright (C) 2006 Novell, Inc.")]
10 [assembly: Mono.UsageComplement("[metadataPath* | metadataUrl* | assemblyPath*]")]
11 [assembly: Mono.AdditionalInfo (@"
12 metadataPath : ws-mex file path.
13 metadataUrl: URL to ws-mex
14 assemblyPath: path to an assembly")]
16 namespace Mono.ServiceContractTool
18 public enum OutputType
20 None,
21 [EnumMember (Value = "code")]
22 Code,
23 [EnumMember (Value = "metadata")]
24 Metadata,
25 [EnumMember (Value = "xmlSerializer")]
26 XmlSerializer,
29 public class CommandLineOptions : Options
31 public CommandLineOptions ()
35 //[Option ("Target directory to create files", 'd', "directory")]
36 public string TargetDirectory;
38 [Option ("Output code filename", 'o', "out")]
39 public string OutputFilename;
41 //[Option ("Target output type", 't', "target")]
42 public OutputType OutputType = OutputType.Code;
44 //[Option ("Validate all service endpoints", 'v', "validate")]
45 public bool Validate;
47 [Option ("Configuration file names to generate", "config", MaxOccurs = -1)]
48 public string [] ConfigFiles;
50 // FIXME: support it
51 public bool ChannelInterface;
53 // FIXME: support it
54 public bool GenerateProxy;
56 [Option ("Generate async methods.", 'a', "async")]
57 public bool GenerateAsync;
59 [Option ("Generate typed messages.", "typedMessage", "tm")]
60 public bool GenerateTypedMessages;
62 [Option ("Generate types as internal.", 'i', "internal")]
63 public bool GenerateTypesAsInternal;
65 [Option ("Do not generate config file.", "noConfig")]
66 public bool NoConfig;
68 [Option ("Specify target code language. 'csharp' By default.", 'l', "language")]
69 public string Language = "csharp";
71 [Option ("Code namespace name to generate.", 'n', "namespace")]
72 public string Namespace = String.Empty;
74 [Option ("Referenced assembly files", 'r', "reference", MaxOccurs = -1)]
75 public string [] ReferencedAssemblies;
77 [Option ("Do not show tool logo", "noLogo")]
78 public bool NoLogo;