JoinRegion joinRegion) throws QueryMetadataException, TeiidComponentException, AssertionError { if (joinRegion.getLeft() == null || joinRegion.getJoinRoot().getLastChild().getType() != NodeConstants.Types.ACCESS || joinRegion.getJoinRoot().getFirstChild().getType() == NodeConstants.Types.ACCESS) { return; PlanNode planNodeRight = joinRegion.getJoinRoot().getLastChild(); List<Criteria> joinCriteria = (List<Criteria>)joinRegion.getJoinRoot().getProperty(Info.JOIN_CRITERIA); for (Criteria crit : joinCriteria) { if (!RuleRaiseAccess.isSupportedJoinCriteria(sjc, crit, modelId, metadata, capabilitiesFinder, null)) { PlanNode root = joinRegion.getJoinRoot();
JoinRegion joinRegion) throws QueryMetadataException, TeiidComponentException, AssertionError { if (joinRegion.getLeft() == null || joinRegion.getJoinRoot().getLastChild().getType() != NodeConstants.Types.ACCESS || joinRegion.getJoinRoot().getFirstChild().getType() == NodeConstants.Types.ACCESS) { return; PlanNode planNodeRight = joinRegion.getJoinRoot().getLastChild(); List<Criteria> joinCriteria = (List<Criteria>)joinRegion.getJoinRoot().getProperty(Info.JOIN_CRITERIA); for (Criteria crit : joinCriteria) { if (!RuleRaiseAccess.isSupportedJoinCriteria(sjc, crit, modelId, metadata, capabilitiesFinder, null)) { PlanNode root = joinRegion.getJoinRoot();
JoinRegion joinRegion) throws QueryMetadataException, TeiidComponentException, AssertionError { if (joinRegion.getLeft() == null || joinRegion.getJoinRoot().getLastChild().getType() != NodeConstants.Types.ACCESS || joinRegion.getJoinRoot().getFirstChild().getType() == NodeConstants.Types.ACCESS) { return; PlanNode planNodeRight = joinRegion.getJoinRoot().getLastChild(); List<Criteria> joinCriteria = (List<Criteria>)joinRegion.getJoinRoot().getProperty(Info.JOIN_CRITERIA); for (Criteria crit : joinCriteria) { if (!RuleRaiseAccess.isSupportedJoinCriteria(sjc, crit, modelId, metadata, capabilitiesFinder, null)) { PlanNode root = joinRegion.getJoinRoot();
assertEquals(joinRoot, region.getJoinRoot()); PlanNode root = region.getJoinRoot();
/** * Simple test to ensure that the reconstruction logic doesn't fail with a single source */ public void testReconstructionOf1Source() { PlanNode source = NodeFactory.getNewNode(NodeConstants.Types.SOURCE); PlanNode accessNode = NodeFactory.getNewNode(NodeConstants.Types.ACCESS); source.addFirstChild(accessNode); JoinRegion region = new JoinRegion(); region.addJoinSourceNode(accessNode); region.reconstructJoinRegoin(); assertEquals(NodeConstants.Types.ACCESS, region.getJoinRoot().getType()); }