package com.it_jaros.jscanner; import java.util.ArrayList; import java.util.List; public class ScanState { private final List scanResult; public ScanState() { // scanResult can not be given from outside because this class controls full access to it this.scanResult = new ArrayList<>(); } public void addScanResult(ScanResult newResult) { synchronized (this.scanResult) { this.scanResult.add(newResult); } } public List getCopyOfResults() { synchronized (scanResult) { return List.copyOf(scanResult); } } }