diff --git a/AirBomber/AirBomber/PlanesGenericStorage.cs b/AirBomber/AirBomber/PlanesGenericStorage.cs index 3de897f..de74006 100644 --- a/AirBomber/AirBomber/PlanesGenericStorage.cs +++ b/AirBomber/AirBomber/PlanesGenericStorage.cs @@ -112,7 +112,7 @@ namespace AirBomber } if (data.Length == 0) { - return false; + throw new Exception("Невалидная операция, нет данных для сохранения"); } using StreamWriter sw = new(filename); @@ -128,7 +128,7 @@ namespace AirBomber { if (!File.Exists(filename)) { - return false; + throw new Exception("Файл не найден"); } using (StreamReader sr = new(filename)) { @@ -136,12 +136,12 @@ namespace AirBomber if (str == null || str.Length == 0) { - return false; + throw new Exception("Нет данных для загрузки"); } if (!str.StartsWith("PlaneStorage")) { //если нет такой записи, то это не те данные - return false; + throw new Exception("Неверный формат данных"); } _planeStorages.Clear(); @@ -170,7 +170,7 @@ namespace AirBomber { if ((collection + plane) == -1) { - return false; + throw new Exception("Ошибка добавления в коллекцию"); } } } diff --git a/AirBomber/AirBomber/SetGeneric.cs b/AirBomber/AirBomber/SetGeneric.cs index ca8d15b..731639c 100644 --- a/AirBomber/AirBomber/SetGeneric.cs +++ b/AirBomber/AirBomber/SetGeneric.cs @@ -53,7 +53,10 @@ namespace AirBomber // проверка, что после вставляемого элемента в массиве есть пустой элемент // сдвиг всех объектов, находящихся справа от позиции до первого пустого элемента // TODO вставка по позиции - if (position < 0 || position >= _maxCount) return -1; + if (position < 0 || position >= _maxCount) + { + throw new StorageOverflowException(_maxCount); + } _places.Insert(position, plane); return position; } @@ -68,7 +71,7 @@ namespace AirBomber // TODO удаление объекта из массива, присвоив элементу массива значение null if (!(position >= 0 && position < Count) || _places[position] == null) { - return false; + throw new PlaneNotFoundException(position); } _places[position] = null; return true;