Настройка логирования действий.
This commit is contained in:
parent
a457ebefcb
commit
828890ba17
@ -1,3 +1,4 @@
|
||||
import org.apache.log4j.Level;
|
||||
import org.apache.log4j.Logger;
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.swing.*;
|
||||
@ -42,7 +43,7 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
private final MapsCollection _mapsCollection;
|
||||
|
||||
//логгер
|
||||
private static Logger logger = Logger.getLogger(Main.class);
|
||||
private static Logger _logger;
|
||||
|
||||
//Для выпадающего списка
|
||||
HashMap<String, AbstractMap> _mapsHashMap = new HashMap<>()
|
||||
@ -55,6 +56,7 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
public FormMapWithSetPlanesGeneric()
|
||||
{
|
||||
super("Хранилище");
|
||||
Logger.getLogger(FormMapWithSetPlanesGeneric.class.getName());
|
||||
CreateWindow();
|
||||
_mapsCollection = new MapsCollection(730, 700);
|
||||
ComboBoxSelectorMap.removeAllItems();
|
||||
@ -127,17 +129,28 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
{
|
||||
JOptionPane.showMessageDialog(null, "Не все данные заполнены", "Ошибка", JOptionPane.ERROR_MESSAGE);
|
||||
|
||||
if(ComboBoxSelectorMap.getSelectedIndex() == -1)
|
||||
{
|
||||
_logger.log(Level.ERROR, "При добавлении карты " + ComboBoxSelectorMap.getSelectedIndex() + "не была выбрана карта");
|
||||
}
|
||||
else
|
||||
{
|
||||
_logger.log(Level.ERROR, "При добавлении карты " + ComboBoxSelectorMap.getSelectedIndex() + "не была названа карта");
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if(!_mapsHashMap.containsKey(ComboBoxSelectorMap.getSelectedItem()))
|
||||
{
|
||||
JOptionPane.showMessageDialog(null, "Данная карта отсутсвует", "Ошибка", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.ERROR, "Отсутствует карта с названием " + TextBoxNewMapName.getText());
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
_mapsCollection.AddMap(TextBoxNewMapName.getText(), _mapsHashMap.get(ComboBoxSelectorMap.getSelectedItem().toString()));
|
||||
_logger.log(Level.INFO, "Добавлена карта " + TextBoxNewMapName.getText());
|
||||
ReloadMaps();
|
||||
}
|
||||
});
|
||||
@ -155,6 +168,7 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
"Удаление", JOptionPane.YES_NO_OPTION) == 0)
|
||||
{
|
||||
_mapsCollection.DelMap(ListBoxMaps.getSelectedValue().toString());
|
||||
_logger.log(Level.INFO, "Удалена карта " + ListBoxMaps.getSelectedValue().toString());
|
||||
ReloadMaps();
|
||||
}
|
||||
}
|
||||
@ -170,6 +184,7 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
}
|
||||
|
||||
UpdateWindow(_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).ShowSet());
|
||||
_logger.log(Level.INFO, "Осуществлён переход на карту под названием " + ListBoxMaps.getSelectedValue().toString());
|
||||
}
|
||||
});
|
||||
|
||||
@ -203,27 +218,46 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FormPlaneConfig form = new FormPlaneConfig();
|
||||
|
||||
form.AddEvent(newPlane ->{
|
||||
if(ListBoxMaps.getSelectedIndex() == -1)
|
||||
form.AddEvent(newPlane -> {
|
||||
try
|
||||
{
|
||||
if (ListBoxMaps.getSelectedIndex() == -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(newPlane != null)
|
||||
{
|
||||
if (newPlane != null) {
|
||||
DrawningObjectPlane plane = new DrawningObjectPlane(newPlane);
|
||||
|
||||
if(_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).Add(plane) != -1)
|
||||
{
|
||||
if (_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).Add(plane) != -1) {
|
||||
JOptionPane.showMessageDialog(null, "Объект добавлен");
|
||||
_logger.log(Level.INFO, "Добавлен объект: " + plane);
|
||||
UpdateWindow(_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).ShowSet());
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(null, "Не удалось добавить объект", "Ошибка", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.INFO, "Не удалось добавить объект: " + plane);
|
||||
}
|
||||
else
|
||||
}
|
||||
}
|
||||
catch(StorageOverflowException ex)
|
||||
{
|
||||
JOptionPane.showMessageDialog(null, "Не удалось добавить объект");
|
||||
_logger.log(Level.WARN, "Ошибка, переполнение хранилища: " + ex.getMessage());
|
||||
JOptionPane.showConfirmDialog(null, "Ошибка, хранилище переполнено: " + ex.getMessage(), "Результат",
|
||||
JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
catch(IllegalArgumentException ex)
|
||||
{
|
||||
_logger.log(Level.ERROR, "Ошибка добавления: " + ex.getMessage());
|
||||
JOptionPane.showConfirmDialog(null, ex.getMessage(), "Результат",
|
||||
JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE);
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
JOptionPane.showConfirmDialog(null, "Неизвестная ошибка: " + ex.getMessage(), "Результат",
|
||||
JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.FATAL, "Неизвестная ошибка: " + ex.getMessage());
|
||||
}
|
||||
});
|
||||
|
||||
form.setSize(975, 360);
|
||||
form.setVisible(true);
|
||||
}
|
||||
@ -248,14 +282,25 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
|
||||
int pos = Integer.parseInt(MaskedTextBoxPosition.getText());
|
||||
|
||||
if(_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).Delete(pos) != null)
|
||||
{
|
||||
JOptionPane.showMessageDialog(null,"Объект удалён");
|
||||
try {
|
||||
if (_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).Delete(pos) != null) {
|
||||
JOptionPane.showMessageDialog(null, "Объект удалён");
|
||||
_logger.log(Level.INFO, "Oбъект удалён: " + _mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).Delete(pos));
|
||||
UpdateWindow(_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).ShowSet());
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(null, "Не удалось удалить объект", "Ошибка", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.ERROR, "Не удалось удалить объект " + _mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).Delete(pos));
|
||||
}
|
||||
else
|
||||
}
|
||||
catch (PlaneNotFoundException ex)
|
||||
{
|
||||
JOptionPane.showMessageDialog(null,"Не удалось удалить объект");
|
||||
JOptionPane.showMessageDialog(null, "Ошибка удаления: " + ex.getMessage(), "Ошибка", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.WARN, "Ошибка удаления: " + ex.getMessage());
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
JOptionPane.showMessageDialog(null, "Неизвестная ошибка: " + ex.getMessage(), "Ошибка", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.FATAL, "Ошибка удаления: " + ex.getMessage());
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -282,7 +327,13 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
UpdateWindow(_mapsCollection.get(ListBoxMaps.getSelectedValue().toString()).ShowOnMap());
|
||||
} catch (StorageOverflowException ex) {
|
||||
ex.printStackTrace();
|
||||
} catch (PlaneNotFoundException ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@ -391,16 +442,19 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
|
||||
if (result == JFileChooser.APPROVE_OPTION)
|
||||
{
|
||||
if (_mapsCollection.LoadData(jfc.getSelectedFile().getPath()))
|
||||
try
|
||||
{
|
||||
_mapsCollection.LoadData(jfc.getSelectedFile().getPath());
|
||||
ReloadMaps();
|
||||
JOptionPane.showMessageDialog(null,"Загрузка данных прошла успешно",
|
||||
"Результат", JOptionPane.INFORMATION_MESSAGE);
|
||||
_logger.log(Level.INFO, "Загрузка карт прошла успешно");
|
||||
}
|
||||
else
|
||||
catch(Exception ex)
|
||||
{
|
||||
JOptionPane.showMessageDialog(null, "Ошибка загрузки данных",
|
||||
JOptionPane.showMessageDialog(null, "Ошибка загрузки данных" + ex.getMessage(),
|
||||
"Результат", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.ERROR, "Ошибка загрузки: " + ex.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -415,15 +469,18 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
|
||||
if (result == JFileChooser.APPROVE_OPTION)
|
||||
{
|
||||
if (_mapsCollection.SaveData(jfc.getSelectedFile().getPath()))
|
||||
try
|
||||
{
|
||||
_mapsCollection.SaveData(jfc.getSelectedFile().getPath());
|
||||
JOptionPane.showMessageDialog(null,"Сохранение прошло успешно",
|
||||
"Результат", JOptionPane.INFORMATION_MESSAGE);
|
||||
_logger.log(Level.ERROR,"Сохранение прошло успешно");
|
||||
}
|
||||
else
|
||||
catch(Exception ex)
|
||||
{
|
||||
JOptionPane.showMessageDialog(null, "Не сохранилось",
|
||||
JOptionPane.showMessageDialog(null, "Не сохранилось" + ex.getMessage(),
|
||||
"Результат", JOptionPane.ERROR_MESSAGE);
|
||||
_logger.log(Level.ERROR,"Ошибка сохранения: " + ex.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -438,18 +495,21 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
|
||||
if (result == JFileChooser.APPROVE_OPTION)
|
||||
{
|
||||
if (_mapsCollection.LoadOneData(jfc.getSelectedFile().getPath()))
|
||||
{
|
||||
try {
|
||||
if (_mapsCollection.LoadOneData(jfc.getSelectedFile().getPath())) {
|
||||
ReloadMaps();
|
||||
JOptionPane.showMessageDialog(null,"Загрузка данных прошла успешно",
|
||||
JOptionPane.showMessageDialog(null, "Загрузка данных прошла успешно",
|
||||
"Результат", JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(null, "Ошибка загрузки данных",
|
||||
"Результат", JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
throw new RuntimeException(ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@ -462,17 +522,20 @@ public class FormMapWithSetPlanesGeneric extends JFrame{
|
||||
|
||||
if (result == JFileChooser.APPROVE_OPTION)
|
||||
{
|
||||
if (_mapsCollection.SaveOneData(jfc.getSelectedFile().getPath(), ListBoxMaps.getSelectedValue().toString()))
|
||||
{
|
||||
JOptionPane.showMessageDialog(null,"Сохранение прошло успешно",
|
||||
try {
|
||||
if (_mapsCollection.SaveOneData(jfc.getSelectedFile().getPath(), ListBoxMaps.getSelectedValue().toString())) {
|
||||
JOptionPane.showMessageDialog(null, "Сохранение прошло успешно",
|
||||
"Результат", JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(null, "Не сохранилось",
|
||||
"Результат", JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
throw new RuntimeException(ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -37,13 +37,12 @@ public class MapWithSetPlanesGeneric <T extends IDrawningObject, U extends Abstr
|
||||
_map = map;
|
||||
}
|
||||
|
||||
public int Add(T plane)
|
||||
public int Add(T plane) throws StorageOverflowException
|
||||
{
|
||||
return _setPlanes.Insert(plane);
|
||||
}
|
||||
|
||||
public T Delete(int position)
|
||||
{
|
||||
public T Delete(int position) throws PlaneNotFoundException {
|
||||
T temp = _setPlanes.Remove(position);
|
||||
_deletePlane.add(temp);
|
||||
|
||||
@ -62,8 +61,7 @@ public class MapWithSetPlanesGeneric <T extends IDrawningObject, U extends Abstr
|
||||
}
|
||||
|
||||
//просмотр объекта на карте
|
||||
public BufferedImage ShowOnMap()
|
||||
{
|
||||
public BufferedImage ShowOnMap() throws StorageOverflowException, PlaneNotFoundException {
|
||||
Shaking();
|
||||
|
||||
for(int i = 0; i < _setPlanes.Count(); i++)
|
||||
@ -104,8 +102,7 @@ public class MapWithSetPlanesGeneric <T extends IDrawningObject, U extends Abstr
|
||||
}
|
||||
|
||||
//Загрузка списка из массива строк
|
||||
public void LoadData(String[] records)
|
||||
{
|
||||
public void LoadData(String[] records) throws StorageOverflowException {
|
||||
for (var rec : records)
|
||||
{
|
||||
_setPlanes.Insert((T)DrawningObjectPlane.Create(rec));
|
||||
@ -113,8 +110,7 @@ public class MapWithSetPlanesGeneric <T extends IDrawningObject, U extends Abstr
|
||||
}
|
||||
|
||||
//"взламываем" набор, чтобы все элементы оказались в начале
|
||||
private void Shaking()
|
||||
{
|
||||
private void Shaking() throws StorageOverflowException, PlaneNotFoundException {
|
||||
int j = _setPlanes.Count() - 1;
|
||||
|
||||
for (int i = 0; i < _setPlanes.Count(); i++)
|
||||
|
@ -23,14 +23,18 @@ public class SetPlanesGeneric<T extends Object> implements Iterable<T>
|
||||
}
|
||||
|
||||
//добавление объекта в набор
|
||||
public int Insert(T plane)
|
||||
{
|
||||
public int Insert(T plane) throws StorageOverflowException {
|
||||
return Insert(plane, 0);
|
||||
}
|
||||
|
||||
//добавление объекта в набор на конкретную позицию
|
||||
public int Insert(T plane, int position)
|
||||
public int Insert(T plane, int position) throws StorageOverflowException {
|
||||
//проверка на переполнение хранилища
|
||||
if(_maxCount == Count())
|
||||
{
|
||||
throw new StorageOverflowException(_maxCount);
|
||||
}
|
||||
|
||||
//проверка на корректность значения индекса
|
||||
if (position >= _maxCount|| position < 0)
|
||||
{
|
||||
@ -43,12 +47,12 @@ public class SetPlanesGeneric<T extends Object> implements Iterable<T>
|
||||
}
|
||||
|
||||
//удаление объекта из набора с конкретной позиции
|
||||
public T Remove(int position)
|
||||
public T Remove(int position) throws PlaneNotFoundException
|
||||
{
|
||||
// проверка позиции
|
||||
if (position >= _maxCount || position < 0)
|
||||
{
|
||||
return null;
|
||||
throw new PlaneNotFoundException(position);
|
||||
}
|
||||
|
||||
// удаление объекта из массива, присовив элементу массива значение null
|
||||
@ -69,7 +73,7 @@ public class SetPlanesGeneric<T extends Object> implements Iterable<T>
|
||||
return _places.get(position);
|
||||
}
|
||||
|
||||
public void Set(int position, T value)
|
||||
public void Set(int position, T value) throws StorageOverflowException
|
||||
{
|
||||
if(position >= _maxCount || position < 0)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user