2024-07-21 02:26:03 +08:00
|
|
|
import { Autoload, Config, Init, Inject, Scope, ScopeEnum } from '@midwayjs/core';
|
2024-08-05 12:49:44 +08:00
|
|
|
import { PipelineService } from '../pipeline/service/pipeline-service.js';
|
|
|
|
|
import { logger } from '../../utils/logger.js';
|
2023-01-29 13:44:19 +08:00
|
|
|
|
|
|
|
|
@Autoload()
|
|
|
|
|
@Scope(ScopeEnum.Singleton)
|
|
|
|
|
export class AutoRegisterCron {
|
|
|
|
|
@Inject()
|
|
|
|
|
pipelineService: PipelineService;
|
|
|
|
|
|
2024-08-05 12:49:44 +08:00
|
|
|
@Config('preview.enabled')
|
|
|
|
|
private preview: boolean;
|
|
|
|
|
|
2023-01-29 13:44:19 +08:00
|
|
|
// @Inject()
|
|
|
|
|
// echoPlugin: EchoPlugin;
|
2024-07-21 02:26:03 +08:00
|
|
|
@Config('cron.immediateTriggerOnce')
|
|
|
|
|
private immediateTriggerOnce = false;
|
2023-01-29 13:44:19 +08:00
|
|
|
|
|
|
|
|
@Init()
|
|
|
|
|
async init() {
|
|
|
|
|
logger.info('加载定时trigger开始');
|
2024-08-05 12:49:44 +08:00
|
|
|
await this.pipelineService.onStartup(this.immediateTriggerOnce, this.preview);
|
2023-01-29 13:44:19 +08:00
|
|
|
// logger.info(this.echoPlugin, this.echoPlugin.test);
|
|
|
|
|
// logger.info('加载定时trigger完成');
|
|
|
|
|
//
|
|
|
|
|
// const meta = getClassMetadata(CLASS_KEY, this.echoPlugin);
|
|
|
|
|
// console.log('meta', meta);
|
|
|
|
|
// const metas = listPropertyDataFromClass(CLASS_KEY, this.echoPlugin);
|
|
|
|
|
// console.log('metas', metas);
|
|
|
|
|
}
|
|
|
|
|
}
|