public SampleRequester getSampleRequesterByType(Requester type, boolean createIfNotFound) { if (requesters == null) { buildRequesters(); } for (SampleRequester requester : requesters) { if (requester.getRequesterTypeId() == type.getId()) { return requester; } } // reachable only if existing requester not found if (createIfNotFound) { SampleRequester newRequester = new SampleRequester(); newRequester.setRequesterTypeId(type.getId()); newRequester.setSampleId(Long.parseLong(sampleId)); return newRequester; } return null; }