@Override protected SelectItem clone() { return clone(null); }
@Override protected SelectItem clone() { return clone(null); }
@Override protected GroupByItem clone() { GroupByItem g = new GroupByItem(_selectItem.clone()); return g; }
@Override protected FilterItem clone() { final List<FilterItem> orItems; if (_childItems == null) { orItems = null; } else { orItems = new ArrayList<FilterItem>(_childItems); } final Object operand; if (_operand instanceof SelectItem) { operand = ((SelectItem) _operand).clone(); } else { operand = _operand; } final SelectItem selectItem; if (_selectItem == null) { selectItem = null; } else { selectItem = _selectItem.clone(); } return new FilterItem(selectItem, _operator, operand, orItems, _expression, _logicalOperator); }
@Override protected FilterItem clone() { final List<FilterItem> orItems; if (_childItems == null) { orItems = null; } else { orItems = new ArrayList<FilterItem>(_childItems); } final Object operand; if (_operand instanceof SelectItem) { operand = ((SelectItem) _operand).clone(); } else { operand = _operand; } final SelectItem selectItem; if (_selectItem == null) { selectItem = null; } else { selectItem = _selectItem.clone(); } return new FilterItem(selectItem, _operator, operand, orItems, _expression, _logicalOperator); }
@Override protected OrderByItem clone() { OrderByItem o = new OrderByItem(_selectItem.clone()); o._direction = _direction; return o; }
@Override protected OrderByItem clone() { OrderByItem o = new OrderByItem(_selectItem.clone()); o._direction = _direction; return o; }
@Override protected GroupByItem clone() { GroupByItem g = new GroupByItem(_selectItem.clone()); return g; }
/** * Creates a clone of the {@link SelectItem} for use within a cloned {@link Query}. * * @param clonedQuery a new {@link Query} object that represents the clone-to-be of a query. It is expected that * {@link FromItem}s have already been cloned in this {@link Query}. * @return */ protected SelectItem clone(Query clonedQuery) { final SelectItem subQuerySelectItem = (_subQuerySelectItem == null ? null : _subQuerySelectItem.clone()); final FromItem fromItem; if (_fromItem == null) { fromItem = null; } else if (clonedQuery != null && _query != null) { final int indexOfFromItem = _query.getFromClause().indexOf(_fromItem); if (indexOfFromItem != -1) { fromItem = clonedQuery.getFromClause().getItem(indexOfFromItem); } else { fromItem = _fromItem.clone(); } } else { fromItem = _fromItem.clone(); } final SelectItem s = new SelectItem(_column, fromItem, _function, _functionParameters, _expression, subQuerySelectItem, _alias, _functionApproximationAllowed); return s; }
/** * Creates a clone of the {@link SelectItem} for use within a cloned {@link Query}. * * @param clonedQuery a new {@link Query} object that represents the clone-to-be of a query. It is expected that * {@link FromItem}s have already been cloned in this {@link Query}. * @return */ protected SelectItem clone(Query clonedQuery) { final SelectItem subQuerySelectItem = (_subQuerySelectItem == null ? null : _subQuerySelectItem.clone()); final FromItem fromItem; if (_fromItem == null) { fromItem = null; } else if (clonedQuery != null && _query != null) { final int indexOfFromItem = _query.getFromClause().indexOf(_fromItem); if (indexOfFromItem != -1) { fromItem = clonedQuery.getFromClause().getItem(indexOfFromItem); } else { fromItem = _fromItem.clone(); } } else { fromItem = _fromItem.clone(); } final SelectItem s = new SelectItem(_column, fromItem, _function, _functionParameters, _expression, subQuerySelectItem, _alias, _functionApproximationAllowed); return s; }
@Override public Query clone() { final Query q = new Query(); q.setMaxRows(_maxRows); q.setFirstRow(_firstRow); q.getSelectClause().setDistinct(_selectClause.isDistinct()); for (FromItem item : _fromClause.getItems()) { q.from(item.clone()); } for (SelectItem item : _selectClause.getItems()) { q.select(item.clone(q)); } for (FilterItem item : _whereClause.getItems()) { q.where(item.clone()); } for (GroupByItem item : _groupByClause.getItems()) { q.groupBy(item.clone()); } for (FilterItem item : _havingClause.getItems()) { q.having(item.clone()); } for (OrderByItem item : _orderByClause.getItems()) { q.orderBy(item.clone()); } return q; } }
@Override public Query clone() { final Query q = new Query(); q.setMaxRows(_maxRows); q.setFirstRow(_firstRow); q.getSelectClause().setDistinct(_selectClause.isDistinct()); for (FromItem item : _fromClause.getItems()) { q.from(item.clone()); } for (SelectItem item : _selectClause.getItems()) { q.select(item.clone(q)); } for (FilterItem item : _whereClause.getItems()) { q.where(item.clone()); } for (GroupByItem item : _groupByClause.getItems()) { q.groupBy(item.clone()); } for (FilterItem item : _havingClause.getItems()) { q.having(item.clone()); } for (OrderByItem item : _orderByClause.getItems()) { q.orderBy(item.clone()); } return q; } }