public void visit(Limit obj) { validateLimitExpression(obj, obj.getOffset()); validateLimitExpression(obj, obj.getRowLimit()); }
public void visit(Limit obj) { validateLimitExpression(obj, obj.getOffset()); validateLimitExpression(obj, obj.getRowLimit()); }
public void visit(Limit obj) { validateLimitExpression(obj, obj.getOffset()); validateLimitExpression(obj, obj.getRowLimit()); }
public static void resolveLimit(Limit limit) throws QueryResolverException { if (limit.getOffset() != null) { setDesiredType(limit.getOffset(), DataTypeManager.DefaultDataClasses.INTEGER, limit); } setDesiredType(limit.getRowLimit(), DataTypeManager.DefaultDataClasses.INTEGER, limit); }
public static void resolveLimit(Limit limit) throws QueryResolverException { if (limit.getOffset() != null) { setDesiredType(limit.getOffset(), DataTypeManager.DefaultDataClasses.INTEGER, limit); } setDesiredType(limit.getRowLimit(), DataTypeManager.DefaultDataClasses.INTEGER, limit); }
public static void resolveLimit(Limit limit) throws QueryResolverException { if (limit.getOffset() != null) { setDesiredType(limit.getOffset(), DataTypeManager.DefaultDataClasses.INTEGER, limit); } setDesiredType(limit.getRowLimit(), DataTypeManager.DefaultDataClasses.INTEGER, limit); }
org.teiid.language.Limit translate(Limit limit) { if (limit == null) { return null; } int rowOffset = 0; if (limit.getOffset() != null) { Literal c1 = (Literal)translate(limit.getOffset()); rowOffset = ((Integer)c1.getValue()).intValue(); } Literal c2 = (Literal)translate(limit.getRowLimit()); int rowLimit = Integer.MAX_VALUE; if (c2 != null) { rowLimit = ((Integer)c2.getValue()).intValue(); } return new org.teiid.language.Limit(rowOffset, rowLimit); }
public void visit(Limit obj) { preVisitVisitor(obj); visitNode(obj.getOffset()); visitNode(obj.getRowLimit()); postVisitVisitor(obj); } public void visit(LoopStatement obj) {
public void testGetRowLimit() { Limit limit = new Limit(new Constant(new Integer(10)), new Constant(new Integer(30))); assertEquals(new Constant(new Integer(30)), limit.getRowLimit()); assertEquals(new Constant(new Integer(30)), limit.getRowLimit()); }
org.teiid.language.Limit translate(Limit limit) { if (limit == null) { return null; } int rowOffset = 0; if (limit.getOffset() != null) { Literal c1 = (Literal)translate(limit.getOffset()); rowOffset = ((Integer)c1.getValue()).intValue(); } Literal c2 = (Literal)translate(limit.getRowLimit()); int rowLimit = Integer.MAX_VALUE; if (c2 != null) { rowLimit = ((Integer)c2.getValue()).intValue(); } return new org.teiid.language.Limit(rowOffset, rowLimit); }
org.teiid.language.Limit translate(Limit limit) { if (limit == null) { return null; } int rowOffset = 0; if (limit.getOffset() != null) { Literal c1 = (Literal)translate(limit.getOffset()); rowOffset = ((Integer)c1.getValue()).intValue(); } Literal c2 = (Literal)translate(limit.getRowLimit()); int rowLimit = Integer.MAX_VALUE; if (c2 != null) { rowLimit = ((Integer)c2.getValue()).intValue(); } return new org.teiid.language.Limit(rowOffset, rowLimit); }
public void visit(Limit obj) { preVisitVisitor(obj); visitNode(obj.getOffset()); visitNode(obj.getRowLimit()); postVisitVisitor(obj); } public void visit(LoopStatement obj) {
public void visit(Limit obj) { preVisitVisitor(obj); visitNode(obj.getOffset()); visitNode(obj.getRowLimit()); postVisitVisitor(obj); } public void visit(LoopStatement obj) {
public void visit(Limit obj) { if (obj.getOffset() != null) { obj.setOffset(replaceExpression(obj.getOffset())); } obj.setRowLimit(replaceExpression(obj.getRowLimit())); }
public void visit(Limit obj) { if (obj.getOffset() != null) { obj.setOffset(replaceExpression(obj.getOffset())); } obj.setRowLimit(replaceExpression(obj.getRowLimit())); }
public void visit(Limit obj) { if (obj.getOffset() != null) { obj.setOffset(replaceExpression(obj.getOffset())); } obj.setRowLimit(replaceExpression(obj.getRowLimit())); }
public void testClone() { Limit limit = new Limit(new Constant(new Integer(100)), new Constant(new Integer(50))); Limit clone = (Limit)limit.clone(); assertTrue(limit != clone); assertTrue(limit.equals(clone)); assertEquals(new Constant(new Integer(100)), clone.getOffset()); assertEquals(new Constant(new Integer(50)), clone.getRowLimit()); }
private void processLimit(PlanNode node, QueryCommand query, QueryMetadataInterface metadata) { Expression limit = (Expression)node.getProperty(NodeConstants.Info.MAX_TUPLE_LIMIT); Expression offset = (Expression)node.getProperty(NodeConstants.Info.OFFSET_TUPLE_COUNT); PlanNode limitNode = NodeFactory.getNewNode(NodeConstants.Types.TUPLE_LIMIT); Expression childLimit = null; Expression childOffset = null; if (query.getLimit() != null) { childLimit = query.getLimit().getRowLimit(); childOffset = query.getLimit().getOffset(); } RulePushLimit.combineLimits(limitNode, metadata, limit, offset, childLimit, childOffset); Limit lim = new Limit((Expression)limitNode.getProperty(NodeConstants.Info.OFFSET_TUPLE_COUNT), (Expression)limitNode.getProperty(NodeConstants.Info.MAX_TUPLE_LIMIT)); lim.setImplicit(node.hasBooleanProperty(Info.IS_IMPLICIT_LIMIT) && (query.getLimit() == null || query.getLimit().isImplicit())); query.setLimit(lim); }
private void processLimit(PlanNode node, QueryCommand query, QueryMetadataInterface metadata) { Expression limit = (Expression)node.getProperty(NodeConstants.Info.MAX_TUPLE_LIMIT); Expression offset = (Expression)node.getProperty(NodeConstants.Info.OFFSET_TUPLE_COUNT); PlanNode limitNode = NodeFactory.getNewNode(NodeConstants.Types.TUPLE_LIMIT); Expression childLimit = null; Expression childOffset = null; if (query.getLimit() != null) { childLimit = query.getLimit().getRowLimit(); childOffset = query.getLimit().getOffset(); } RulePushLimit.combineLimits(limitNode, metadata, limit, offset, childLimit, childOffset); Limit lim = new Limit((Expression)limitNode.getProperty(NodeConstants.Info.OFFSET_TUPLE_COUNT), (Expression)limitNode.getProperty(NodeConstants.Info.MAX_TUPLE_LIMIT)); lim.setImplicit(node.hasBooleanProperty(Info.IS_IMPLICIT_LIMIT) && (query.getLimit() == null || query.getLimit().isImplicit())); query.setLimit(lim); }
private void processLimit(PlanNode node, QueryCommand query, QueryMetadataInterface metadata) { Expression limit = (Expression)node.getProperty(NodeConstants.Info.MAX_TUPLE_LIMIT); Expression offset = (Expression)node.getProperty(NodeConstants.Info.OFFSET_TUPLE_COUNT); PlanNode limitNode = NodeFactory.getNewNode(NodeConstants.Types.TUPLE_LIMIT); Expression childLimit = null; Expression childOffset = null; if (query.getLimit() != null) { childLimit = query.getLimit().getRowLimit(); childOffset = query.getLimit().getOffset(); } RulePushLimit.combineLimits(limitNode, metadata, limit, offset, childLimit, childOffset); Limit lim = new Limit((Expression)limitNode.getProperty(NodeConstants.Info.OFFSET_TUPLE_COUNT), (Expression)limitNode.getProperty(NodeConstants.Info.MAX_TUPLE_LIMIT)); lim.setImplicit(node.hasBooleanProperty(Info.IS_IMPLICIT_LIMIT) && (query.getLimit() == null || query.getLimit().isImplicit())); query.setLimit(lim); }