1 package com.daffodilwoods.daffodildb.server.sql99.dql.execution; 2 3 import java.util.*; 4 5 import com.daffodilwoods.daffodildb.server.sql99.common.*; 6 import com.daffodilwoods.daffodildb.server.sql99.dql.iterator.*; 7 import com.daffodilwoods.daffodildb.server.sql99.expression.*; 8 import com.daffodilwoods.daffodildb.utils.field.*; 9 import com.daffodilwoods.database.resource.*; 10 import com.daffodilwoods.database.utility.*; 11 12 23 public class AggregateSumDistinct extends AggregateSumAll implements _Aggregate, Datatypes, IntegerPool { 24 25 28 private ArrayList aList; 37 38 public AggregateSumDistinct(valueexpression column0) throws DException { 39 super(column0); 40 } 41 42 48 public void initialize() throws DException { 49 aList = new ArrayList(); 50 super.initialize(); 51 } 52 53 61 62 public void addRecord(Object obj) throws DException { 63 FieldBase newObject = (FieldBase) obj; 64 if (newObject.isNull()) { 65 return; 66 } 67 if (!aList.contains(newObject.getObject())) { 68 getSum(result, newObject); 69 aList.add(newObject.getObject()); 70 } 71 } 72 73 } 74 | Popular Tags |