@Override public void followTransition(ElementLifeCycleTransistion transition, CoreSession session, boolean recursive) { if (document.followTransition(transition.name())) { if (Framework.isTestModeSet()) { session.save(); } document = session.getDocument(document.getRef()); } if (recursive) { DocumentModelList children = session.getChildren(document.getRef()); for (DocumentModel child : children) { DocumentRouteElement element = child.getAdapter(DocumentRouteElement.class); element.followTransition(transition, session, recursive); } } }