Вызов необходимых наследников класса Exception. Прочие правки.

This commit is contained in:
Programmist73 2022-11-17 18:35:42 +04:00
parent 06f9ceb75d
commit ea0d683eb1
3 changed files with 13 additions and 4 deletions

View File

@ -26,7 +26,6 @@
<ItemGroup> <ItemGroup>
<Folder Include="метк\" /> <Folder Include="метк\" />
<Folder Include="делите\" /> <Folder Include="делите\" />
<Folder Include="Новая папка\" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@ -79,7 +79,7 @@ namespace Airbus
{ {
if (!File.Exists(filename)) if (!File.Exists(filename))
{ {
throw new Exception("Файл не найден"); throw new FileNotFoundException("Файл не найден");
} }
using (StreamReader sr = new(filename)) using (StreamReader sr = new(filename))
@ -89,7 +89,7 @@ namespace Airbus
//если не содержит такую запись или пустой файл //если не содержит такую запись или пустой файл
if ((str = sr.ReadLine()) == null || !str.Contains("MapsCollection")) if ((str = sr.ReadLine()) == null || !str.Contains("MapsCollection"))
{ {
throw new Exception("Формат данных в файле неправильный"); throw new FileFormatException("Формат данных в файле неправильный");
} }
_mapStorage.Clear(); _mapStorage.Clear();

View File

@ -36,11 +36,21 @@ namespace Airbus
//добавление объекта в набор на конкретную позицию //добавление объекта в набор на конкретную позицию
public int Insert(T plane, int position) public int Insert(T plane, int position)
{ {
if (position >= _maxCount && position < 0) if (position > _maxCount && position < 0)
{ {
return -1; return -1;
} }
if (_places.Contains(plane))
{
throw new ArgumentException($"Объект {plane} уже есть в наборе");
}
if(Count == _maxCount)
{
throw new StorageOverflowException(_maxCount);
}
_places.Insert(position, plane); _places.Insert(position, plane);
return position; return position;