it.unimi.di.mg4j.document
Class CompositeDocumentFactory.CompositeDocument

java.lang.Object
  extended by it.unimi.di.mg4j.document.AbstractDocument
      extended by it.unimi.di.mg4j.document.CompositeDocumentFactory.CompositeDocument
All Implemented Interfaces:
Document, SafelyCloseable, Closeable
Enclosing class:
CompositeDocumentFactory

protected class CompositeDocumentFactory.CompositeDocument
extends AbstractDocument

A document obtained by composition of documents of underyling factories.


Constructor Summary
protected CompositeDocumentFactory.CompositeDocument(Reference2ObjectMap<Enum<?>,Object> metadata, InputStream rawContent)
           
 
Method Summary
 void close()
          Closes this document, releasing all resources.
 Object content(int field)
          Returns the content of the given field.
 CharSequence title()
          The title of this document.
 String toString()
           
 CharSequence uri()
          A URI that is associated with this document.
 WordReader wordReader(int field)
          Returns a word reader for the given DocumentFactory.FieldType.TEXT field.
 
Methods inherited from class it.unimi.di.mg4j.document.AbstractDocument
finalize
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CompositeDocumentFactory.CompositeDocument

protected CompositeDocumentFactory.CompositeDocument(Reference2ObjectMap<Enum<?>,Object> metadata,
                                                     InputStream rawContent)
                                              throws IOException
Throws:
IOException
Method Detail

title

public CharSequence title()
Description copied from interface: Document
The title of this document.

Returns:
the title to be used to refer to this document, or null.

toString

public String toString()
Overrides:
toString in class AbstractDocument

uri

public CharSequence uri()
Description copied from interface: Document
A URI that is associated with this document.

Returns:
the URI associated with this document, or null.

content

public Object content(int field)
               throws IOException
Description copied from interface: Document
Returns the content of the given field.

Parameters:
field - the field index.
Returns:
the field content; the actual type depends on the field type, as specified by the DocumentFactory that built this document. For example, the returned object is going to be a Reader if the field type is DocumentFactory.FieldType.TEXT.
Throws:
IOException

wordReader

public WordReader wordReader(int field)
Description copied from interface: Document
Returns a word reader for the given DocumentFactory.FieldType.TEXT field.

Parameters:
field - the field index.
Returns:
a word reader object that should be used to break the given field.

close

public void close()
           throws IOException
Description copied from interface: Document
Closes this document, releasing all resources.

You should always call this method after manipulating a document. Implementations are invited to call this method in a finaliser as a safety net (even better, implement SafelyCloseable), but since there is no guarantee as to when finalisers are invoked, you should not depend on this behaviour.

Specified by:
close in interface Document
Specified by:
close in interface Closeable
Overrides:
close in class AbstractDocument
Throws:
IOException