ostore.archive
Class GuidResult

java.lang.Object
  |
  +--ostore.archive.GuidResult
All Implemented Interfaces:
QuickSerializable

public class GuidResult
extends Object
implements QuickSerializable

The GuidResult class is an object that encapsulates the the GUID generated by the GenerateFragsStage or recoalesed by the RecoalesceBlkStage, the total Erasure code time, the code method time, the Erasure encode or decode time, and the VHashTree time.

Version:
$Id: GuidResult.java,v 1.14 2004/03/23 02:34:34 hweather Exp $
Author:
Hakim Weatherspoon
See Also:
GenerateFragsBlkResp, GenerateFragsStage, RecoalesceBlkStage, VHashTree

Field Summary
 int blockSize
          blockSize is the size of the serialized VerifiableBlock in bytes.
 DisseminatableBucket db
          DisseminatableBucket is a store of all or a subset of the Disseminatables created for a single GUID.
 int disseminateSize
          disseminateSize is the size of all the Fragments disseminated on the blocks behalf in bytes.
 long encodeHandlerTime
          encodeHandlerTime is the time of the encode handler method call.
 long encodeMethodTime
          encodeMethodTime is the time of the encode method call.
 long encodeTime
          encodeTime is the Erasure encode time only.
 long encodeTimeC
          encodeTime is the Erasure encode time only, measured from the C level.
 int erasureBlockSize
          erasureBlockSize is the size of the array of bytes used in the Erasure code in bytes.
 SecureHash fhash
          fhash is the fragmentHash or the top fragment hash of the VHashTree.
 long totalTime
          totalTime is the total time to encode block including cache miss times.
 long vhashTreeTime
          vhashTreeTime is the VHashTree creation time only.
 long vhashTreeTimeC
          vhashTreeTime is the VHashTree creation time only, measured from the C level.
 
Constructor Summary
GuidResult(DisseminatableBucket dissBucket, SecureHash fragmentHash, long totalT, long encodeHandlerT, long encodeMethodT, long encodeT, long vhashTreeT, int blockS, int erasureBlockS, int disseminateS)
          Constructor.
GuidResult(InputBuffer buffer)
          Constructs a GuidResult from its serialized form.
 
Method Summary
 void serialize(OutputBuffer buffer)
          Specified by ostore.util.QuickSerializable
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

db

public DisseminatableBucket db
DisseminatableBucket is a store of all or a subset of the Disseminatables created for a single GUID.


fhash

public SecureHash fhash
fhash is the fragmentHash or the top fragment hash of the VHashTree.


totalTime

public long totalTime
totalTime is the total time to encode block including cache miss times.


encodeHandlerTime

public long encodeHandlerTime
encodeHandlerTime is the time of the encode handler method call. Includes verifying pointers, marshalling, Erasure encode, and VHashTree creation time.


encodeMethodTime

public long encodeMethodTime
encodeMethodTime is the time of the encode method call. Includes Erasure encode and VHashTree creation time.


encodeTime

public long encodeTime
encodeTime is the Erasure encode time only.


encodeTimeC

public long encodeTimeC
encodeTime is the Erasure encode time only, measured from the C level.


vhashTreeTime

public long vhashTreeTime
vhashTreeTime is the VHashTree creation time only.


vhashTreeTimeC

public long vhashTreeTimeC
vhashTreeTime is the VHashTree creation time only, measured from the C level.


blockSize

public int blockSize
blockSize is the size of the serialized VerifiableBlock in bytes.


erasureBlockSize

public int erasureBlockSize
erasureBlockSize is the size of the array of bytes used in the Erasure code in bytes.


disseminateSize

public int disseminateSize
disseminateSize is the size of all the Fragments disseminated on the blocks behalf in bytes.

Constructor Detail

GuidResult

public GuidResult(DisseminatableBucket dissBucket,
                  SecureHash fragmentHash,
                  long totalT,
                  long encodeHandlerT,
                  long encodeMethodT,
                  long encodeT,
                  long vhashTreeT,
                  int blockS,
                  int erasureBlockS,
                  int disseminateS)
Constructor. Initializes the data in this GuidResult class by specified parameters

Parameters:
dissBucket - DisseminatableBucket is a store of all or a subset of the Disseminatables created for a single GUID.
fragmentHash - fragmentHash is the top hash of the fragment verification hash tree.
totalT - total time to encode block including cache miss times.
encodeHandlerT - TODO
encodeMethodT - time of the encode method call. Includes Erasure encode and VHashTree creation time.
encodeT - Erasure encode time only.
vhashTreeT - VHashTree creation time only.
blockS - size of the VerifiableBlock in serialized form.
erasureBlockS - Size of block that was erasure encoded (May be larger than actual block size).
disseminateS - Aggregate size of all disseminatables produces.

GuidResult

public GuidResult(InputBuffer buffer)
           throws QSException
Constructs a GuidResult from its serialized form.

Parameters:
buffer - serialized form of object.
Method Detail

serialize

public void serialize(OutputBuffer buffer)
Specified by ostore.util.QuickSerializable

Specified by:
serialize in interface QuickSerializable
Parameters:
buffer - the output buffer to add the object to

toString

public String toString()
Overrides:
toString in class Object