This commit is contained in:
aozhiwei 2023-06-13 12:05:04 +08:00
parent 8bb9423664
commit c8927988d2

View File

@ -6,21 +6,23 @@ const event = require('j7/event');
const BaseTask = require('./basetask'); const BaseTask = require('./basetask');
const C = require('../C'); const C = require('../C');
const factory = require('./factory'); const factory = require('./factory');
const serviceFactory = require('../services/factory');
class EventCenter extends BaseTask { class EventCenter extends BaseTask {
instances = [ instances = [
{ {
'name': 'HEROInstance', 'name': 'HERO',
'eventName': 'Transfer', 'eventName': 'Transfer',
}, },
{ {
'name': 'WEAPONInstance', 'name': 'WEAPON',
'eventName': 'Transfer', 'eventName': 'Transfer',
}, },
]; ];
async init() { async init() {
await this.initEventProcess();
} }
async initEventProcess() { async initEventProcess() {
@ -31,6 +33,47 @@ class EventCenter extends BaseTask {
instance['toBlock'] = 0; instance['toBlock'] = 0;
instance['currBlock'] = 0; instance['currBlock'] = 0;
}; };
const allInstances = [];
{
this.instances.forEach((item) => {
allInstances.push(item);
});
console.log(allInstances);
{
const instanceHash = {};
allInstances.forEach((item) => {
const key = item['name'] + '.' + item['eventName'];
if (utils.hasKey(instanceHash, key)) {
console.log(key);
throw '!!!!duplicate instance';
}
instanceHash[key] = item;
});
}
allInstances.forEach((item) => {
initInstance(item);
});
{
let count = 0;
const outputLog = async () => {
while (true) {
log.info(++count + '-------------------------------------------------------------');
allInstances.forEach((item) => {
log.info(utils.jsonEncode(item));
});
await utils.sleep(1000 * 10);
}
};
setTimeout(outputLog, 1000 * 3);
}
}
{
allInstances.forEach(async (item) => {
serviceFactory.create('EventProcess', null)
.init(this.conn, item, async (event) => {
});
});
}
} }
} }