/** * Returns true if group is an obs group that has no unvoided members. * * @param group * @return */ private void voidObsGroupIfAllChildObsVoided(Obs group) { if (group != null) { // probably should be able to just tet if group.getGroupMembers() == 0 since // getGroupMembers only returns non-voided members? boolean allObsVoided = true; for (Obs member : group.getGroupMembers()) { allObsVoided = allObsVoided && member.isVoided(); } if (allObsVoided) { Context.getObsService().voidObs(group, "htmlformentry"); } voidObsGroupIfAllChildObsVoided(group.getObsGroup()); } }
obsService.voidObs(o, "htmlformentry"); voidObsGroupIfAllChildObsVoided(o.getObsGroup());