public static IEtlConsoleCommand[] GetCommands()
        {
            var types = GetCommandTypes();
            var commands = new IEtlConsoleCommand[types.Length];
            for (var i = 0; i < commands.Length; i++)
            {
                var ctor = types[i].GetConstructor(Type.EmptyTypes);
                if (ctor == null)
                {
                    throw new InvalidOperationException(string.Format("{0} must have parameterless constructor", types[i].FullName));
                }

                commands[i] = (IEtlConsoleCommand)ctor.Invoke(null);
            }

            return commands;
        }
 private static bool IsSupportedCommandName(IEtlConsoleCommand command, string commandName)
 {
     return string.Equals(command.CommandName, commandName, StringComparison.InvariantCultureIgnoreCase);
 }