forked from MagicBane/Server
Rework of error handling.
This commit is contained in:
@@ -36,10 +36,20 @@ public enum ForgeManager implements Runnable {
|
||||
|
||||
while (true) {
|
||||
|
||||
try {
|
||||
WorkOrder workOrder = forge.take();
|
||||
WorkOrder workOrder = null;
|
||||
|
||||
// Completed or canceled work orders are not re-enqueued
|
||||
try {
|
||||
workOrder = forge.take();
|
||||
} catch (InterruptedException e) {
|
||||
Logger.error(e);
|
||||
}
|
||||
|
||||
if (workOrder == null) {
|
||||
Logger.error("NULL workOrder in queue");
|
||||
continue;
|
||||
}
|
||||
|
||||
// Completed or canceled work orders are not re-enqueued
|
||||
|
||||
if (workOrder.runCanceled || workOrder.runCompleted)
|
||||
continue;
|
||||
@@ -72,10 +82,6 @@ public enum ForgeManager implements Runnable {
|
||||
workOrder.completionTime = System.currentTimeMillis() + workOrder.rollingDuration;
|
||||
forge.add(workOrder);
|
||||
Logger.info(workOrder.toString());
|
||||
|
||||
} catch (InterruptedException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user