package be.ugent.rgnosis.teiid.udf; import org.teiid.CommandContext; import org.teiid.UserDefinedAggregate; public class GroupConcat implements UserDefinedAggregate { private boolean first = true; private boolean isNull = true; private StringBuffer buffer = new StringBuffer(); public void addInput(String val, char separator) { if (!first) { buffer.append(separator); } buffer.append(val); first = false; isNull = false; } @Override public String getResult(CommandContext arg0) { if (isNull) { return null; } return buffer.toString(); } @Override public void reset() { first = true; isNull = true; buffer = new StringBuffer(); } }