@Override public void visit(AggregateFunction obj) { if (!obj.getParameters().isEmpty()) { visitNodes(obj.getParameters()); } if (obj.getName().equals(AggregateFunction.COUNT)) { HashMap<String, String> options = new HashMap<String, String>(); options.put(CountStarIterator.ALIAS, this.currentAlias); options.put(CountStarIterator.ENCODING, this.ef.getEncoding()); IteratorSetting it = new IteratorSetting(this.iteratorPriority++, CountStarIterator.class, options); // expression expects a column Column c = new Column(); c.setName(this.currentAlias); c.setDatatype( SystemMetadata.getInstance() .getSystemStore() .getDatatypes() .get("integer")); // $NON-NLS-1$ c.setProperty(AccumuloMetadataProcessor.CF, this.currentAlias); this.scanIterators.add(it); this.onGoingExpression.push(c); } else if (obj.getName().equals(AggregateFunction.AVG)) { } else if (obj.getName().equals(AggregateFunction.SUM)) { } else if (obj.getName().equals(AggregateFunction.MIN)) { } else if (obj.getName().equals(AggregateFunction.MAX)) { } else { } }