BudgetAnalyser.Engine.Statement.BankImportUtilities.FetchDecimal C# (CSharp) Method

FetchDecimal() private method

private FetchDecimal ( [ array, int index ) : decimal
array [
index int
return decimal
        internal decimal FetchDecimal([NotNull] string[] array, int index)
        {
            if (array == null)
            {
                throw new ArgumentNullException(nameof(array));
            }

            if (index > array.Length - 1 || index < 0)
            {
                ThrowIndexOutOfRangeException(array, index);
            }

            var stringToParse = array[index];
            decimal retval;
            if (!decimal.TryParse(stringToParse, out retval))
            {
                this.logger.LogError(l => "BankImportUtilities: Unable to parse decimal: " + stringToParse);
                throw new InvalidDataException("Expected decimal, but provided data is invalid. " + stringToParse);
            }

            return retval;
        }