@Override public void deleteProgram( Program program ) { Collection<ProgramIndicator> indicators = new HashSet<ProgramIndicator>( program.getProgramIndicators() ); Iterator<ProgramIndicator> iter = indicators.iterator(); while ( iter.hasNext() ) { ProgramIndicator indicator = iter.next(); programIndicatorService.deleteProgramIndicator( indicator ); } } }