@@ -384,12 +384,16 @@ public void removePostUpdateHandler(Consumer<ItemPostUpdateEvent> postUpdateHand
384
384
*/
385
385
@ Deprecated
386
386
public void setPreUpdateHandler (@ Nullable Consumer <ItemPreUpdateEvent > preUpdateHandler ) {
387
- if (preUpdateHandlers == null )
388
- preUpdateHandlers = new ArrayList <>();
389
-
390
387
if (preUpdateHandler != null ) {
391
- preUpdateHandlers .set (0 , preUpdateHandler );
392
- } else {
388
+ if (preUpdateHandlers == null )
389
+ preUpdateHandlers = new ArrayList <>();
390
+
391
+ if (preUpdateHandlers .isEmpty ()) {
392
+ preUpdateHandlers .add (preUpdateHandler );
393
+ } else {
394
+ preUpdateHandlers .set (0 , preUpdateHandler );
395
+ }
396
+ } else if (preUpdateHandlers != null && !preUpdateHandlers .isEmpty ()) {
393
397
preUpdateHandlers .removeFirst ();
394
398
}
395
399
}
@@ -413,12 +417,16 @@ public void setPreUpdateHandler(@Nullable Consumer<ItemPreUpdateEvent> preUpdate
413
417
*/
414
418
@ Deprecated
415
419
public void setPostUpdateHandler (@ Nullable Consumer <ItemPostUpdateEvent > inventoryUpdatedHandler ) {
416
- if (postUpdateHandlers == null )
417
- postUpdateHandlers = new ArrayList <>();
418
-
419
420
if (inventoryUpdatedHandler != null ) {
420
- postUpdateHandlers .set (0 , inventoryUpdatedHandler );
421
- } else {
421
+ if (postUpdateHandlers == null )
422
+ postUpdateHandlers = new ArrayList <>();
423
+
424
+ if (postUpdateHandlers .isEmpty ()) {
425
+ postUpdateHandlers .add (inventoryUpdatedHandler );
426
+ } else {
427
+ postUpdateHandlers .set (0 , inventoryUpdatedHandler );
428
+ }
429
+ } else if (postUpdateHandlers != null && !postUpdateHandlers .isEmpty ()) {
422
430
postUpdateHandlers .removeFirst ();
423
431
}
424
432
}
0 commit comments