com.google.bitcoin.core
Class DiskBlockStore

java.lang.Object
  extended by com.google.bitcoin.core.DiskBlockStore
All Implemented Interfaces:
BlockStore

public class DiskBlockStore
extends Object
implements BlockStore

Stores the block chain to disk but still holds it in memory. This is intended for desktop apps and tests. Constrained environments like mobile phones probably won't want to or be able to store all the block headers in RAM.


Constructor Summary
DiskBlockStore(NetworkParameters params, File file)
           
 
Method Summary
 StoredBlock get(byte[] hash)
          Returns the StoredBlock given a hash.
 StoredBlock getChainHead()
          Returns the StoredBlock that represents the top of the chain of greatest total work.
 void put(StoredBlock block)
          Saves the given block header+extra data.
 void setChainHead(StoredBlock chainHead)
          Sets the StoredBlock that represents the top of the chain of greatest total work.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DiskBlockStore

public DiskBlockStore(NetworkParameters params,
                      File file)
               throws BlockStoreException
Throws:
BlockStoreException
Method Detail

put

public void put(StoredBlock block)
         throws BlockStoreException
Description copied from interface: BlockStore
Saves the given block header+extra data. The key isn't specified explicitly as it can be calculated from the StoredBlock directly. Can throw if there is a problem with the underlying storage layer such as running out of disk space.

Specified by:
put in interface BlockStore
Throws:
BlockStoreException

get

public StoredBlock get(byte[] hash)
                throws BlockStoreException
Description copied from interface: BlockStore
Returns the StoredBlock given a hash. The returned values block.getHash() method will be equal to the parameter. If no such block is found, returns null.

Specified by:
get in interface BlockStore
Throws:
BlockStoreException

getChainHead

public StoredBlock getChainHead()
                         throws BlockStoreException
Description copied from interface: BlockStore
Returns the StoredBlock that represents the top of the chain of greatest total work.

Specified by:
getChainHead in interface BlockStore
Throws:
BlockStoreException

setChainHead

public void setChainHead(StoredBlock chainHead)
                  throws BlockStoreException
Description copied from interface: BlockStore
Sets the StoredBlock that represents the top of the chain of greatest total work.

Specified by:
setChainHead in interface BlockStore
Throws:
BlockStoreException


Copyright © 2011. All Rights Reserved.