forked from circlecloud/tera
1
0
Fork 0
tera/src/system/file.ts

41 lines
1.2 KiB
TypeScript

/*
* @project: TERA
* @version: Development (beta)
* @license: MIT (not for evil)
* @copyright: Yuriy Ivanov (Vtools) 2017-2019 [progr76@gmail.com]
* Web: https://terafoundation.org
* Twitter: https://twitter.com/terafoundation
* Telegram: https://t.me/terafoundation
*/
"use strict";
global.TYPE_TRANSACTION_FILE = 5;
global.FORMAT_FILE_CREATE = "{type:byte,Name:str,ContentType:str,Reserve:arr10,Data:tr}";
//@ts-ignore
let WorkStructRun = {};
class FileApp extends require("./dapp")
{
constructor() {
super()
}
OnWriteTransaction(Block, Body, BlockNum, TrNum, ContextFrom) {
return true;
}
GetObjectTransaction(Body) {
var TR = global.BufLib.GetObjectFromBuffer(Body, global.FORMAT_FILE_CREATE, WorkStructRun);
return TR;
}
GetScriptTransaction(Body) {
var TR = this.GetObjectTransaction(Body);
global.ConvertBufferToStr(TR)
return JSON.stringify(TR, undefined, 2);
}
GetVerifyTransaction(Block, BlockNum, TrNum, Body) {
return 1;
}
};
module.exports = FileApp;
var App = new FileApp;
global.DApps["File"] = App;
global.DAppByType[global.TYPE_TRANSACTION_FILE] = App;