@Override public boolean processRules(CommitteeScheduleDeadlineEvent deadlineCommitteeScheduleEvent) { boolean rulePassed = true; List<CommitteeScheduleBase> committeeSchedules = deadlineCommitteeScheduleEvent.getCommitteeSchedules(); int count = 0; for (CommitteeScheduleBase committeeSchedule : committeeSchedules) { Date deadline = committeeSchedule.getProtocolSubDeadline(); Date schedule = committeeSchedule.getScheduledDate(); if ((schedule != null) && (deadline != null) && (schedule.before(deadline))) { reportError( String.format(ID, count), KeyConstants.ERROR_COMMITTEESCHEDULE_DEADLINE, deadline.toString(), schedule.toString()); rulePassed = false; } count++; } return rulePassed; }