public static function parseInteger($value)
    {
        if (is_null($value))
        {
            return 0;
        }

        if (is_integer($value))
        {
            return $value;
        }

        if (!is_string($value))
        {
            throw new \InvalidArgumentException('Failed to parse as an integer.');
        }

        return intval($value);
    }