storage.advancedStorage
Class AdvancedStorageManager

java.lang.Object
  extended bystorage.advancedStorage.AdvancedStorageManager

public final class AdvancedStorageManager
extends java.lang.Object

This class is used to manage the operatios of the advanced storage component. The advanced storage component provides a high level storage organization. In advanced storage component, the storage is divided in segments, a segmet consists of spaces, and a space consists of units. Each segment has is own unit size, the unit sizes depend on the specific needs of the aplication.


Nested Class Summary
 class AdvancedStorageManager.Segment
          This class represents a segment, a segmen is a set of spaces, each space inside a segment is identified by a number.
 
Field Summary
static int MAX_SPACE_NUMBER
          The maximum space number.
 
Constructor Summary
AdvancedStorageManager(IntermediateStorageManager ism, int[] segmentsUnitSizes)
          Constructs an advanced storage manager from a intrmedite storage manager and an array that specified the number of segments and ther unit sizes.
 
Method Summary
 IntermediateStorageManager getIntermediateStorageManager()
          Returns the underlying intermediate storage manager.
 int getNumberOfSegments()
          Returns the number of existing segments.
 PrimitiveStorageManager getPrimitiveStorageManager()
          Returns the underlying primitive storage manager.
 AdvancedStorageManager.Segment getSegment(int segmentNumber)
          Returns the segment identified with the specified number.
 void synchronize()
          Synchronizes with the secundary storage.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_SPACE_NUMBER

public static final int MAX_SPACE_NUMBER
The maximum space number.

See Also:
Constant Field Values
Constructor Detail

AdvancedStorageManager

public AdvancedStorageManager(IntermediateStorageManager ism,
                              int[] segmentsUnitSizes)
                       throws InvalidUnitSizeException
Constructs an advanced storage manager from a intrmedite storage manager and an array that specified the number of segments and ther unit sizes.

Method Detail

getSegment

public AdvancedStorageManager.Segment getSegment(int segmentNumber)
Returns the segment identified with the specified number.

Parameters:
segmentNumber - The number of the segment.
Returns:
The segment identified with segmentNumber

getNumberOfSegments

public int getNumberOfSegments()
Returns the number of existing segments.


getPrimitiveStorageManager

public PrimitiveStorageManager getPrimitiveStorageManager()
Returns the underlying primitive storage manager.


getIntermediateStorageManager

public IntermediateStorageManager getIntermediateStorageManager()
Returns the underlying intermediate storage manager.


synchronize

public void synchronize()
                 throws java.io.IOException
Synchronizes with the secundary storage.

Throws:
java.io.IOException