1 package com.daffodilwoods.daffodildb.server.sql99.dql.iterator.set; 2 3 17 import com.daffodilwoods.daffodildb.server.sql99.dql.iterator.*; 18 import com.daffodilwoods.daffodildb.server.sql99.utils.*; 19 import com.daffodilwoods.daffodildb.utils.field.*; 20 import com.daffodilwoods.database.resource.*; 21 import com.daffodilwoods.database.utility.P; 22 23 public class FullJoinUnionIterator extends UnionAllIterator { 24 25 public FullJoinUnionIterator(_Iterator leftIterator0, _Iterator rightIterator0) throws DException { 26 super(leftIterator0, rightIterator0, null, null, null, null, null, null); 27 } 28 29 35 44 public Object getColumnValues(_Reference reference) throws DException { 45 if (state == FIRSTISCURRENT) { 46 return leftIterator.getColumnValues(reference); 47 } else if (state == SECONDISCURRENT) { 48 return rightIterator.getColumnValues(reference); 49 } 50 throw new DException("DSE3518", null); 51 } 52 53 62 public Object getColumnValues(_Reference[] references) throws DException { 63 if (state == FIRSTISCURRENT) { 64 return leftIterator.getColumnValues(references); 65 } else if (state == SECONDISCURRENT) { 66 return rightIterator.getColumnValues(references); 67 } 68 throw new DException("DSE3518", null); 69 } 70 71 80 81 public Object getColumnValues() throws DException { 82 if (state == FIRSTISCURRENT) { 83 return leftIterator.getColumnValues(); 84 } else if (state == SECONDISCURRENT) { 85 return rightIterator.getColumnValues(); 86 } 87 throw new DException("DSE3518", null); 88 } 89 90 91 99 public FieldBase field(_Reference reference) throws com.daffodilwoods.database.resource.DException { 100 return state == FIRSTISCURRENT ? leftIterator.field(reference) : rightIterator.field(reference); 101 } 102 103 111 public FieldBase[] fields(_Reference[] references) throws com.daffodilwoods.database.resource.DException { 112 return state == FIRSTISCURRENT ? leftIterator.fields(references) : rightIterator.fields(references); 113 } 114 115 116 117 public void setSpecificUnderlyingReferences(_Reference[] specificUnderlyingReferences) throws DException{ 118 underlyingRef=specificUnderlyingReferences; 119 } 120 121 } 122 | Popular Tags |