/** * Updates criterias in the retrieved AccessibilityObjects based on if we should be attentive to * the users selected disabilities and the users selected disabilities. * * @param accessibilityObject The AccessibilityObject to update criterias in. * @param selectedDisabilities The users selected disabilities. * @param attentive True if we should be attentive to the users selected disabilities. */ private void updateCriteriasInAccesibilityObject( AccessibilityObject accessibilityObject, boolean[] selectedDisabilities, boolean attentive) { for (Block b : accessibilityObject.getBlocks()) { for (AccessibilityPackage p : b.getPackages()) { for (Criteria c : p.getCriterias()) { // Take Attentive/Available choice into consideration. // Request should match the criteria's "attentive/available belonging". // We should not show hidden criterias either. if (!(attentive == c.isNotice()) || c.isHidden()) { c.setShow(false); continue; } boolean disabilities = checkDisabilities(c, selectedDisabilities); c.setShow(disabilities); } } } }