Code Search for Developers
 
 
  

CompressedIterator.java from Kneobase at Krugle


Show CompressedIterator.java syntax highlighted

/*
 * Created on 01/11/2004
 *
 */
package com.kneobase.driver.compressed;

import java.io.IOException;
import java.util.Iterator;

/**
 * @author Ernesto De Santis
 *
 */
public class CompressedIterator implements Iterator {
    
    private I_CompressedCompositeAdapter adapter;
    private Object nextCU;
    private boolean nextReaded;
    
    public CompressedIterator(I_CompressedCompositeAdapter adapter){
        this.adapter = adapter; 
        nextReaded = false;
    }

    /**
     * @see java.util.Iterator#hasNext()
     */
    public boolean hasNext() {
        if(!nextReaded){
            nextCU = readCU();
            nextReaded = true;
        }
        return nextCU != null;
    }

    /**
     * @see java.util.Iterator#next()
     */
    public Object next() {
        if(!nextReaded){
            nextCU = readCU();
        }
        nextReaded = false;
        return nextCU;
    }

    /**
     * Not implemented
     * 
     * @see java.util.Iterator#remove()
     */
    public void remove() {
        //not implemented
    }

    private Object readCU() {
        try {
            Object entryAdapter = adapter.getNextEntryAdapter();
            
            if (entryAdapter == null)
                return null;
            else {
                return entryAdapter;
            }
        } catch( IOException ioe ){
            adapter.freeResources();
            return null;
        }
    }

    protected void finalize() throws Throwable {
        super.finalize();
        adapter.freeResources();
    }

}




See more files for this project here

Kneobase

Kneobase is an enterprise search engine, based upon the Lucene search engine and the Spring framework. It allows to perform full-text search across many different content sources. It is highly adaptable out-of-the-box and has a pluggable architecture.

Project homepage: http://sourceforge.net/projects/kneobase
Programming language(s): Java,XML
License: other

  A_CompressedCompositeAdapter.java
  A_EntryAdapter.java
  CompressedIterator.java
  EntryInputStream.java
  I_CompressedCompositeAdapter.java
  I_EntryAdapter.java