1 53 54 106 107 package com.Yasna.forum.database; 108 109 import java.util.*; 110 111 import com.Yasna.util.*; 112 import com.Yasna.forum.*; 113 114 117 public class DbQueryIterator implements Iterator { 118 119 private int [] messages; 121 private int currentIndex = -1; 123 124 private int maxIndex; 125 126 private DbForumFactory factory; 127 128 135 public DbQueryIterator(int [] messages, DbForumFactory factory) { 136 this.messages = messages; 137 this.factory = factory; 138 maxIndex = messages.length; 139 } 140 141 154 public DbQueryIterator(int [] messages, DbForumFactory factory, 155 int startIndex, int numResults) 156 { 157 this.messages = messages; 158 this.factory = factory; 159 currentIndex = startIndex-1; 160 maxIndex = startIndex + numResults; 161 } 162 163 166 public boolean hasNext() { 167 return (currentIndex+1 < messages.length && currentIndex+1 < maxIndex); 168 } 169 170 173 public Object next() throws java.util.NoSuchElementException { 174 ForumMessage message = null; 175 currentIndex++; 176 if (currentIndex >= messages.length) { 177 throw new java.util.NoSuchElementException (); 178 } 179 try { 180 int messageID = messages[currentIndex]; 181 message = factory.getMessage(messageID); 182 message = message.getForumThread().getMessage(messageID); 186 } 187 catch (Exception e) { 188 e.printStackTrace(); 189 } 190 return message; 191 } 192 193 196 public void remove() { 197 throw new UnsupportedOperationException (); 198 } 199 } 200 | Popular Tags |