55import com .j256 .ormlite .support .ConnectionSource ;
66import com .j256 .ormlite .table .TableUtils ;
77import fr .openmc .core .CommandsManager ;
8+ import fr .openmc .core .OMCPlugin ;
89import fr .openmc .core .features .homes .command .*;
910import fr .openmc .core .features .homes .models .Home ;
1011import fr .openmc .core .features .homes .models .HomeLimit ;
2122@ Getter
2223public class HomesManager {
2324
25+ private static boolean isInitialized = false ;
26+
2427 public static final List <Home > homes = new ArrayList <>();
2528 public static final List <HomeLimit > homeLimits = new ArrayList <>();
2629
@@ -39,6 +42,8 @@ public static void init() {
3942
4043 loadHomeLimit ();
4144 loadHomes ();
45+
46+ isInitialized = true ;
4247 }
4348
4449 public static void saveHomesData () {
@@ -130,6 +135,10 @@ private static void loadHomeLimit() {
130135 }
131136
132137 private static void saveHomeLimit () {
138+ if (!isInitialized ) {
139+ OMCPlugin .getInstance ().getSLF4JLogger ().warn ("Tentative de sauvegarde des HomeLimits avant l'initialisation du manager, opération ignorée." );
140+ return ;
141+ }
133142 try {
134143 TableUtils .clearTable (DatabaseManager .getConnectionSource (), HomeLimit .class );
135144 limitsDao .create (homeLimits );
@@ -147,6 +156,10 @@ private static void loadHomes() {
147156 }
148157
149158 private static void saveHomes () {
159+ if (!isInitialized ) {
160+ OMCPlugin .getInstance ().getSLF4JLogger ().warn ("Tentative de sauvegarde des Homes avant l'initialisation du manager, opération ignorée." );
161+ return ;
162+ }
150163 try {
151164 TableUtils .clearTable (DatabaseManager .getConnectionSource (), Home .class );
152165 for (Home home : homes ) {
0 commit comments