Merge branch 'fix/NPE' into 'master'

Fix: NullPointerException

See merge request sheepitrenderfarm/client!2
This commit is contained in:
Sheepit Renderfarm
2020-10-27 13:47:14 +00:00
2 changed files with 15 additions and 9 deletions

View File

@@ -32,6 +32,7 @@ import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.Observable; import java.util.Observable;
import java.util.Observer; import java.util.Observer;
import java.util.Optional;
import java.util.Random; import java.util.Random;
import java.util.Timer; import java.util.Timer;
import java.util.TimerTask; import java.util.TimerTask;
@@ -637,11 +638,13 @@ import lombok.Data;
// Insert the info at the beginning of the error log // Insert the info at the beginning of the error log
writer.write(logHeader.toString().getBytes()); writer.write(logHeader.toString().getBytes());
ArrayList<String> logs = this.log.getForCheckPoint(step_); Optional<ArrayList<String>> logs = this.log.getForCheckPoint(step_);
for (String line : logs) { if (logs.isPresent()) {
for (String line : logs.get()) {
writer.write(line.getBytes()); writer.write(line.getBytes());
writer.write('\n'); writer.write('\n');
} }
}
writer.close(); writer.close();
String args = "?type=" + (error == null ? "" : error.getValue()); String args = "?type=" + (error == null ? "" : error.getValue());

View File

@@ -25,6 +25,7 @@ import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.Optional;
public class Log { public class Log {
private static Log instance = null; private static Log instance = null;
@@ -94,8 +95,8 @@ public class Log {
return this.lastCheckPoint; return this.lastCheckPoint;
} }
public ArrayList<String> getForCheckPoint(int point_) { public Optional<ArrayList<String>> getForCheckPoint(int point_) {
return this.checkpoints.get(point_); return Optional.ofNullable(this.checkpoints.get(point_));
} }
public void removeCheckPoint(int point_) { public void removeCheckPoint(int point_) {
@@ -119,9 +120,11 @@ public class Log {
public static synchronized void printCheckPoint(int point_) { public static synchronized void printCheckPoint(int point_) {
Log log = Log.getInstance(null); Log log = Log.getInstance(null);
ArrayList<String> logs = log.getForCheckPoint(point_); Optional<ArrayList<String>> logs = log.getForCheckPoint(point_);
for (String alog : logs) { if (logs.isPresent()) {
for (String alog : logs.get()) {
System.out.println(alog); System.out.println(alog);
} }
} }
} }
}