Show / Hide Table of Contents

Class CommandArgsConfiguration

Provides implementation of configuration based on arguments supplied from command line which is "string[]". Arguments start with either "/" or "-" prefix. If any argument is not prefixed then it is written as an auto-named attribute node of the root with its value set, otherwise a section (under root) with argument's name is created. Any argument may have options. Any option may either consist of name or name value pair delimited by "=". Argument options are written as attribute nodes of their corresponding sections. If option value specified without name (without "=") then option is auto-named

Inheritance
System.Object
Configuration
CommandArgsConfiguration
Implements
System.ICloneable
Inherited Members
Configuration.DEFAULT_CONFIG_INCLUDE_PRAGMA
Configuration.CONFIG_INCLUDE_PRAGMA_PROVIDER_SECTION
Configuration.CONFIG_INCLUDE_PRAGMA_FS_SECTION
Configuration.CONFIG_INCLUDE_PRAGMA_SESSION_SECTION
Configuration.CONFIG_INCLUDE_PRAGMA_FILE_ATTR
Configuration.CONFIG_INCLUDE_PRAGMA_REQUIRED_ATTR
Configuration.DEFAULT_VAR_ESCAPE
Configuration.DEFAULT_VAR_START
Configuration.DEFAULT_VAR_END
Configuration.DEFAULT_VAR_PATH_MOD
Configuration.DEFAULT_VAR_ENV_MOD
Configuration.DEFAULT_VAR_MACRO_START
Configuration.CONFIG_NAME_ATTR
Configuration.CONFIG_ORDER_ATTR
Configuration.CONFIG_LACONIC_FORMAT
Configuration.NewEmptyRoot(String)
Configuration.AllSupportedFormats
Configuration.ProviderLoadFromFile(String)
Configuration.ProviderLoadFromAnySupportedFormatFile(String)
Configuration.ProviderLoadFromString(String, String, String)
Configuration.IsSupportedFormat(String)
Configuration.MakeProviderForFile(String)
Configuration.ProcesswideEnvironmentVarResolver
Configuration.ProcesswideConfigNodeProviderType
Configuration.m_Root
Configuration.m_EmptySectionNode
Configuration.m_EmptyAttrNode
Configuration.Root
Configuration.StrictNames
Configuration.EnvironmentVarResolver
Configuration.MacroRunner
Configuration.MacroRunnerContext
Configuration.EmptySection
Configuration.EmptyAttr
Configuration.Variable_ESCAPE
Configuration.Variable_START
Configuration.Variable_END
Configuration.Variable_PATH_MOD
Configuration.Variable_ENV_MOD
Configuration.Variable_MACRO_START
Configuration.ContentView
Configuration.Create(String)
Configuration.CreateFromMerge(ConfigSectionNode, ConfigSectionNode, NodeOverrideRules)
Configuration.CreateFromNode(IConfigSectionNode)
Configuration.Destroy()
Configuration.Refresh()
Configuration.Save()
Configuration.CheckAndAdjustNodeName(String)
Configuration.ResolveEnvironmentVar(String, IEnvironmentVariableResolver)
Configuration.RunMacro(IConfigSectionNode, String, String, IConfigSectionNode, IMacroRunner, Object)
Configuration.Clone<T>()
Configuration.Clone(Configuration)
Configuration.Clone()
Configuration.Include(ConfigSectionNode, ConfigSectionNode)
Configuration.ToLaconicString(LaconfigWritingOptions)
Configuration.ToLaconicStream(Stream, LaconfigWritingOptions, Encoding)
Configuration.ToLaconicFile(String, LaconfigWritingOptions, Encoding)
Configuration.ToConfigurationJSONDataMap()
Configuration.AdjustNodeName(String)
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: NFX.Environment
Assembly: NFX.dll
Syntax
[Serializable]
public class CommandArgsConfiguration : Configuration, ICloneable
Examples

Given command line:

c:\>dosomething.exe "c:\input.file" "d:\output.file" -compress level=100 method=zip -shadow fast -large

The following configuration object will be created from the supplied args:

  [args ?1="c:\input.file" ?2="c:\output.file"]
    [compress level="100" method="zip"]
    [shadow ?1="fast"]
    [large]

Use args:

 var conf = new CmdArgsConfiguration(args);
 var inFile = conf.Root.AttrByIndex(0).ValueAsString(DEFAULT_INPUT_FILE);
 var outFile = conf.Root.AttrByIndex(1).ValueAsString(DEFAULT_OUTPUT_FILE);
 .....
  if (conf.Root["large"].Exists) .......
 .....
 var level = conf.Root["compress"].AttrByName("level").ValueAsInt(DEFAULT_COMPRESSION_LEVEL);
 .....

Constructors

CommandArgsConfiguration(String[])

Creates an instance of the new configuration parsed from command line arguments

Declaration
public CommandArgsConfiguration(string[] args)
Parameters
Type Name Description
System.String[] args

CommandArgsConfiguration(String[], Boolean)

Creates an instance of the new configuration parsed from command line arguments

Declaration
public CommandArgsConfiguration(string[] args, bool inhibitSlashArg)
Parameters
Type Name Description
System.String[] args
System.Boolean inhibitSlashArg

Fields

ARG_PREFIX_DASH

Declaration
public const string ARG_PREFIX_DASH = "-"
Field Value
Type Description
System.String

ARG_PREFIX_SLASH

Declaration
public const string ARG_PREFIX_SLASH = "/"
Field Value
Type Description
System.String

OPTION_EQ

Declaration
public const char OPTION_EQ = '='
Field Value
Type Description
System.Char

ROOT_NODE_NAME

Declaration
public const string ROOT_NODE_NAME = "args"
Field Value
Type Description
System.String

Properties

Arguments

Returns arguments array that this configuration was parsed from

Declaration
public string[] Arguments { get; }
Property Value
Type Description
System.String[]

InhibitSlashArg

When true, disregards '/' as an argument delimiter

Declaration
public bool InhibitSlashArg { get; }
Property Value
Type Description
System.Boolean

IsReadOnly

Indicates whether configuration is readonly or may be modified and saved

Declaration
public override bool IsReadOnly { get; }
Property Value
Type Description
System.Boolean
Overrides
Configuration.IsReadOnly

Implements

System.ICloneable

Extension Methods

MiscUtils.NonNull<T>(T, Func<Exception>, String)
ObjectValueConversion.AsString(Object, String, ConvertErrorHandling)
ObjectValueConversion.AsNonNullOrEmptyString(Object)
ObjectValueConversion.AsLaconicConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsJSONConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsXMLConfig(Object, ConfigSectionNode, ConvertErrorHandling)
ObjectValueConversion.AsChar(Object, Char, ConvertErrorHandling)
ObjectValueConversion.AsNullableChar(Object, Nullable<Char>, ConvertErrorHandling)
ObjectValueConversion.AsByte(Object, Byte, ConvertErrorHandling)
ObjectValueConversion.AsNullableByte(Object, Nullable<Byte>, ConvertErrorHandling)
ObjectValueConversion.AsSByte(Object, SByte, ConvertErrorHandling)
ObjectValueConversion.AsNullableSByte(Object, Nullable<SByte>, ConvertErrorHandling)
ObjectValueConversion.AsShort(Object, Int16, ConvertErrorHandling)
ObjectValueConversion.AsNullableShort(Object, Nullable<Int16>, ConvertErrorHandling)
ObjectValueConversion.AsUShort(Object, UInt16, ConvertErrorHandling)
ObjectValueConversion.AsNullableUShort(Object, Nullable<UInt16>, ConvertErrorHandling)
ObjectValueConversion.AsInt(Object, Int32, ConvertErrorHandling)
ObjectValueConversion.AsNullableInt(Object, Nullable<Int32>, ConvertErrorHandling)
ObjectValueConversion.AsUInt(Object, UInt32, ConvertErrorHandling)
ObjectValueConversion.AsNullableUInt(Object, Nullable<UInt32>, ConvertErrorHandling)
ObjectValueConversion.AsLong(Object, Int64, ConvertErrorHandling)
ObjectValueConversion.AsNullableLong(Object, Nullable<Int64>, ConvertErrorHandling)
ObjectValueConversion.AsULong(Object, UInt64, ConvertErrorHandling)
ObjectValueConversion.AsNullableULong(Object, Nullable<UInt64>, ConvertErrorHandling)
ObjectValueConversion.AsDouble(Object, Double, ConvertErrorHandling)
ObjectValueConversion.AsNullableDouble(Object, Nullable<Double>, ConvertErrorHandling)
ObjectValueConversion.AsFloat(Object, Single, ConvertErrorHandling)
ObjectValueConversion.AsNullableFloat(Object, Nullable<Single>, ConvertErrorHandling)
ObjectValueConversion.AsDecimal(Object, Decimal, ConvertErrorHandling)
ObjectValueConversion.AsNullableDecimal(Object, Nullable<Decimal>, ConvertErrorHandling)
ObjectValueConversion.AsBool(Object, Boolean, ConvertErrorHandling)
ObjectValueConversion.AsNullableBool(Object, Nullable<Boolean>, ConvertErrorHandling)
ObjectValueConversion.AsGUID(Object, Guid, ConvertErrorHandling)
ObjectValueConversion.AsNullableGUID(Object, Nullable<Guid>, ConvertErrorHandling)
ObjectValueConversion.AsDateTime(Object)
ObjectValueConversion.AsDateTime(Object, DateTime, ConvertErrorHandling)
ObjectValueConversion.AsNullableDateTime(Object, Nullable<DateTime>, ConvertErrorHandling)
ObjectValueConversion.AsGDID(Object)
ObjectValueConversion.AsGDID(Object, GDID, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDID(Object, Nullable<GDID>, ConvertErrorHandling)
ObjectValueConversion.AsGDIDSymbol(Object)
ObjectValueConversion.AsGDIDSymbol(Object, GDIDSymbol, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDIDSymbol(Object, Nullable<GDIDSymbol>, ConvertErrorHandling)
ObjectValueConversion.AsTimeSpan(Object)
ObjectValueConversion.AsTimeSpan(Object, TimeSpan, ConvertErrorHandling)
ObjectValueConversion.AsNullableTimeSpan(Object, Nullable<TimeSpan>, ConvertErrorHandling)
ObjectValueConversion.AsEnum<TEnum>(Object, TEnum, ConvertErrorHandling)
ObjectValueConversion.AsNullableEnum<TEnum>(Object, Nullable<TEnum>, ConvertErrorHandling)
ObjectValueConversion.AsUri(Object, Uri, ConvertErrorHandling)
JSONExtensions.ToJSON(Object, JSONWritingOptions)
JSONExtensions.ToJSON(Object, TextWriter, JSONWritingOptions)
JSONExtensions.ToJSON(Object, Stream, JSONWritingOptions, Encoding)
ErlObject.ToErlObject(Object)
ErlObject.ToErlObject(Object, ErlTypeOrder, Boolean)
Back to top Copyright © 2006-2018 Agnicore Inc
Generated by DocFX