1
This commit is contained in:
parent
8bb9423664
commit
c8927988d2
@ -6,21 +6,23 @@ const event = require('j7/event');
|
||||
const BaseTask = require('./basetask');
|
||||
const C = require('../C');
|
||||
const factory = require('./factory');
|
||||
const serviceFactory = require('../services/factory');
|
||||
|
||||
class EventCenter extends BaseTask {
|
||||
|
||||
instances = [
|
||||
{
|
||||
'name': 'HEROInstance',
|
||||
'name': 'HERO',
|
||||
'eventName': 'Transfer',
|
||||
},
|
||||
{
|
||||
'name': 'WEAPONInstance',
|
||||
'name': 'WEAPON',
|
||||
'eventName': 'Transfer',
|
||||
},
|
||||
];
|
||||
|
||||
async init() {
|
||||
await this.initEventProcess();
|
||||
}
|
||||
|
||||
async initEventProcess() {
|
||||
@ -31,6 +33,47 @@ class EventCenter extends BaseTask {
|
||||
instance['toBlock'] = 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) => {
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user