private void prepareFetchJoin(EJBQLJoin join) { if (prefetchTree == null) { prefetchTree = new PrefetchTreeNode(); } EJBQLPath fetchJoin = (EJBQLPath) join.getChild(0); addPath(fetchJoin); PrefetchTreeNode node = prefetchTree.addPath(fetchJoin.getRelativePath()); node.setSemantics(PrefetchTreeNode.JOINT_PREFETCH_SEMANTICS); node.setPhantom(false); node.setEjbqlPathEntityId(fetchJoin.getChild(0).getText()); }
break; case 4: message.setEjbqlPathEntityId(input.readString()); break; case 5:
private PrefetchTreeNode deepClone(PrefetchTreeNode source, PrefetchTreeNode targetParent) { PrefetchTreeNode target = new PrefetchTreeNode(targetParent, source.getName()); target.setEjbqlPathEntityId(source.getEjbqlPathEntityId()); target.setEntityName(source.getEntityName()); target.setPhantom(source.isPhantom()); target.setSemantics(source.getSemantics()); for (PrefetchTreeNode child : source.getChildren()) { target.addChild(deepClone(child, target)); } return target; }