
![JavaScript Style Guide]
SECDataHandler
This package uses leveldb to store and handle data from SEC blockchain, this repository includes operations to four databases:
- Token Block Chain Database
- Transaction Block Chain Database
- Account Database
- Product Database
The databases contain following methods:
TokenBlockChainDB
Kind: global class
*
TokenBlockChainDB
*
new TokenBlockChainDB(config)
*
.writeTokenBlockToDB(tokenData, callback) ⇒
None
*
.isTokenBlockChainDBEmpty(callback) ⇒
None
*
.getTokenBlockChainDB(callback) ⇒
None
*
.getTokenBlockFromDB(blockHashArray, callback) ⇒
None
*
.getTokenChain(minBlockNumber, maxBlockNumber, callback) ⇒
None
*
.delBlocksFromHeight(blockHeight, callback) ⇒
None
*
.addUpdateBlock(pos, blockArray, callback) ⇒
None
*
.findTxForUser(userAddress, callback) ⇒
None
*
.findTx(userAddress, callback) ⇒
None
AccountDB
Kind: global class
*
AccountDB
*
new AccountDB(config)
*
.writeUserInfoToAccountDB(accDataList, callback) ⇒
None
*
.readUserInfofromAccountDB(accNameList) ⇒
Promise Object
*
.isAccountDBEmpty(callback) ⇒
None
*
.getAccountDB(callback) ⇒
None
*
.isAccountInAccountDB(accName, callback) ⇒
None
ProductDB
Kind: global class
*
ProductDB
*
new ProductDB(config)
*
.writeTxBlockToDB(txData, callback) ⇒
None
*
.isProductDBEmpty(callback) ⇒
None
*
.getProductDB(callback) ⇒
None
TokenBlockChainDB Methods
$3
| Param | Type | Description |
| --- | --- | --- |
| config |
Object | contains the relative path for storing database |
$3
Write single token block or full token chain data to database
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| tokenData |
Array, Object | single token block data or full token block chain data |
| callback |
function | callback function, returns error if exist |
$3
Check whether the token block chain database is empty
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| callback |
function | callback function, callback arguments (err, emptyFlag) |
$3
Get all the block datas from token block chain database
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| callback |
function | callback function, callback arguments (err, block object array) |
$3
Get token blocks according to block hash values
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| blockHashArray |
String, Array | block hash values, string or array format |
| callback |
function | callback function, callback arguments (err, block object array) |
$3
Get token block chain data, from number 'minBlockNumber' to number 'maxBlockNumber'
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| minBlockNumber |
Integer | minimum block number |
| maxBlockNumber |
Integer | maximum block number |
| callback |
function | callback function, callback arguments (err, block object array) |
$3
Delete blocks which have a higher height than the input 'blockHeight' argument
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| blockHeight |
Integer | blocks with larger height will be deleted from database |
| callback |
function | callback function, callback arguments (err) |
$3
Add new blocks from a specific position if the blocks does not exist
Update old blocks from a specific position if the blocks already exist
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| pos |
Integer | block add/update starting position |
| blockArray |
Array | array of block data(json object) |
| callback |
function | callback function, callback arguments (err) |
$3
Find all previous transactions for a user
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| userAddress |
String | user account address |
| callback |
function | callback function, callback arguments (txArray, err) |
$3
Find a previous transactions for a user by transaction hash
Kind: instance method of
TokenBlockChainDB
| Param | Type | Description |
| --- | --- | --- |
| txHash |
String | transaction hash |
| callback |
function | callback function, callback arguments (txArray, err) |
AccountDB Methods
$3
| Param | Type | Description |
| --- | --- | --- |
| config |
Object | contains the relative path for storing database |
$3
Write user account information to account database
Kind: instance method of
AccountDB
| Param | Type | Description |
| --- | --- | --- |
| accDataList |
Array, Object | single user account info(json object) or a list of user account info |
| callback |
function | callback function, returns error if exist |
$3
Read user account information from account database, returns a promise object
Kind: instance method of
AccountDB
| Param | Type | Description |
| --- | --- | --- |
| accNameList |
Array, String | single user account address(string) or a list of user account addresses |
$3
Check whether the account database is empty
Kind: instance method of
AccountDB
| Param | Type | Description |
| --- | --- | --- |
| callback |
function | callback function, callback arguments (err, emptyFlag) |
$3
Get all the data in account database
Kind: instance method of
AccountDB
| Param | Type | Description |
| --- | --- | --- |
| callback |
function | callback function, callback arguments (err, block object array) |
$3
Check whether an account is in AccountDB
Kind: instance method of
AccountDB
| Param | Type | Description |
| --- | --- | --- |
| accName |
String | account name |
| callback |
function | callback function, callback arguments (err, block object array) |
ProductDB Methods
$3
| Param | Type | Description |
| --- | --- | --- |
| config |
Object | contains the relative path for storing database |
$3
Write single transaction block or full transaction chain data to product database
Kind: instance method of
ProductDB
| Param | Type | Description |
| --- | --- | --- |
| txData |
Array, Object | single tx block data or full transaction block chain data |
| callback |
function | callback function, returns error if exist |
$3
Check whether the product database is empty
Kind: instance method of
ProductDB
| Param | Type | Description |
| --- | --- | --- |
| callback |
function | callback function, callback arguments (err, emptyFlag) |
$3
Get all the data in product database
Kind: instance method of
ProductDB
| Param | Type | Description |
| --- | --- | --- |
| callback |
function | callback function, callback arguments (err, block object array) |