@Override public Optional<? extends TestDescriptor> findByUniqueId(String uniqueId) { if (getUniqueId().equals(uniqueId)) { return Optional.of(this); } for (TestDescriptor child : this.children) { Optional<? extends TestDescriptor> result = child.findByUniqueId(uniqueId); if (result.isPresent()) { return result; } } return Optional.empty(); }