edu.iris.Fissures.seed.container
Interface MMAPContainer<T extends ObjectTag,O>

All Known Implementing Classes:
SeedVolumeMMAPContainer

public interface MMAPContainer<T extends ObjectTag,O>

An alternative object container that maintains a memory mapping on source files. This is an interface representation for how all MMAPContainers should behave. Concrete containers of this type will be specifically geared to a particular file type. The generic type for this interface refers to a tagging mechanism used as a key for referencing the memory map to data on request.

Version:
01/15/2009
Author:
Robert Casey

Method Summary
 void addData(O entry)
           
 void delete(T tag)
           
 O get(java.nio.MappedByteBuffer m)
           
 java.nio.MappedByteBuffer get(T tag)
           
 java.nio.MappedByteBuffer getNext()
           
 java.util.List<T> getTagList()
           
 int iterate()
           
 void openJournal(java.io.File filePath)
           
 void openJournal(java.lang.String pathName)
           
 void openJournal(java.lang.String baseDir, java.lang.String name)
           
 boolean reinstate(T tag)
           
 void rename(T oldTag, T newTag)
           
 void rollBack()
           
 void rollBack(SeedObjectTag tag)
           
 void setContext(T context)
           
 void update(T tag, O newEntry)
           
 

Method Detail

addData

void addData(O entry)
             throws ContainerException,
                    java.io.IOException
Throws:
ContainerException
java.io.IOException

update

void update(T tag,
            O newEntry)
            throws ContainerException,
                   java.io.IOException
Throws:
ContainerException
java.io.IOException

setContext

void setContext(T context)

delete

void delete(T tag)
            throws ContainerException,
                   java.io.IOException
Throws:
ContainerException
java.io.IOException

reinstate

boolean reinstate(T tag)
                  throws ContainerException,
                         java.io.IOException
Throws:
ContainerException
java.io.IOException

rename

void rename(T oldTag,
            T newTag)
            throws ContainerException,
                   java.io.IOException
Throws:
ContainerException
java.io.IOException

get

java.nio.MappedByteBuffer get(T tag)
                              throws ContainerException
Throws:
ContainerException

get

O get(java.nio.MappedByteBuffer m)
      throws ContainerException
Throws:
ContainerException

iterate

int iterate()

getNext

java.nio.MappedByteBuffer getNext()
                                  throws ContainerException
Throws:
ContainerException

getTagList

java.util.List<T> getTagList()
                                               throws ContainerException
Throws:
ContainerException

openJournal

void openJournal(java.io.File filePath)
                 throws java.io.IOException,
                        ContainerException
Throws:
java.io.IOException
ContainerException

openJournal

void openJournal(java.lang.String baseDir,
                 java.lang.String name)
                 throws java.io.IOException,
                        ContainerException
Throws:
java.io.IOException
ContainerException

openJournal

void openJournal(java.lang.String pathName)
                 throws java.io.IOException,
                        ContainerException
Throws:
java.io.IOException
ContainerException

rollBack

void rollBack(SeedObjectTag tag)
              throws ContainerException,
                     java.io.IOException
Throws:
ContainerException
java.io.IOException

rollBack

void rollBack()
              throws ContainerException,
                     java.io.IOException
Throws:
ContainerException
java.io.IOException