public LoadArg(string arg) { //string[] parts = arg.SplitClean(':'); // ALWAYS PARSE ASSEMBLY/MODULE var sep = arg.IndexOf(':'); string modType = sep >= 0 ? arg.Substring(0, sep) : arg; string[] modTypeParts = modType.SplitClean(','); switch (modTypeParts.Length) { case 2: // Type and AssemblyName given ModuleTypeName = modTypeParts[0]; AssemblyName = modTypeParts[1]; break; case 1: // only TypeName given ModuleTypeName = modTypeParts[0]; break; default: throw new ArgumentException("Assembly/Type names in wrong format: " + modType); } // IF PROVIDED, PARSE PROPERTIES arg = sep >= 0 ? arg.Substring(sep + 1) : string.Empty; if (!String.IsNullOrWhiteSpace(arg)) { string modProps = arg; string[] propParts = modProps.SplitClean(','); foreach (var part in propParts) { var assignmentArg = new AssignmentArg(part); assignmentArg.Key = assignmentArg.Key.ToPropertyFullName(FullyQualifiedTypeName); _properties.Add(assignmentArg); } } }
public LoadArg(string arg) { //string[] parts = arg.SplitClean(':'); // ALWAYS PARSE ASSEMBLY/MODULE var sep = arg.IndexOf(':'); string modType = sep >= 0 ? arg.Substring(0, sep) : arg; string[] modTypeParts = modType.SplitClean(','); switch (modTypeParts.Length) { case 2: // Type and AssemblyName given ModuleTypeName = modTypeParts[0]; AssemblyName = modTypeParts[1]; break; case 1: // only TypeName given ModuleTypeName = modTypeParts[0]; break; default: throw new ArgumentException("Assembly/Type names in wrong format: " + modType); } // IF PROVIDED, PARSE PROPERTIES arg = sep >= 0 ? arg.Substring(sep + 1) : string.Empty; if (!String.IsNullOrWhiteSpace(arg)) { string modProps = arg; string[] propParts = modProps.SplitClean(','); foreach (var part in propParts) { var assignmentArg = new AssignmentArg(part); assignmentArg.Key = assignmentArg.Key.ToPropertyFullName(FullyQualifiedTypeName); _properties.Add(assignmentArg); } } }
public void Add(AssignmentArg a) { var e = new CmdLinePropertyElement(a); BaseAdd(e); }
public void Add(AssignmentArg a) { _properties.Add(a); }
public CmdLinePropertyElement(AssignmentArg a) { base["name"] = a.Key; base["value"] = a.Value; }