com.mckoi.store
Interface MutableArea

All Superinterfaces:
Area

public interface MutableArea
extends Area

An interface for an area that can be modified. Any changes made to an area may or may not be immediately reflected in already open areas with the same id. The specification does guarentee that after the 'checkOutAndClose' method is invoked that any new Area or MutableArea objects created by the backing store will contain the changes.

Author:
Tobias Downer

Method Summary
 void checkOut()
          Checks out all changes made to this area.
 void put(byte b)
           
 void put(byte[] buf)
           
 void put(byte[] buf, int off, int len)
           
 void putChar(char c)
           
 void putInt(int i)
           
 void putLong(long l)
           
 void putShort(short s)
           
 
Methods inherited from interface com.mckoi.store.Area
capacity, copyTo, get, get, getChar, getID, getInt, getLong, getShort, position, position
 

Method Detail

checkOut

void checkOut()
              throws java.io.IOException
Checks out all changes made to this area. This should be called after a series of updates have been made to the area and the final change is to be 'finalized'. When this method returns, any new Area or MutableArea objects created by the backing store will contain the changes made to this object. Any changes made to the Area may or may not be made to any already existing areas.

In a logging implementation, this may flush out the changes made to the area in a log.

Throws:
java.io.IOException

put

void put(byte b)
         throws java.io.IOException
Throws:
java.io.IOException

put

void put(byte[] buf,
         int off,
         int len)
         throws java.io.IOException
Throws:
java.io.IOException

put

void put(byte[] buf)
         throws java.io.IOException
Throws:
java.io.IOException

putShort

void putShort(short s)
              throws java.io.IOException
Throws:
java.io.IOException

putInt

void putInt(int i)
            throws java.io.IOException
Throws:
java.io.IOException

putLong

void putLong(long l)
             throws java.io.IOException
Throws:
java.io.IOException

putChar

void putChar(char c)
             throws java.io.IOException
Throws:
java.io.IOException