package com.tongtu.ahtt.act.customactiviti.lifelistener;
import lombok.extern.slf4j.Slf4j;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;
import org.activiti.engine.ProcessEngineLifecycleListener;
import org.springframework.stereotype.Component;
import java.awt.*;
import java.util.Arrays;
import java.util.List;
/**
* 自定义流程引擎监听器
*/
@Slf4j
@Component
public class MyProcessEngineLifeListener implements ProcessEngineLifecycleListener {
/**
* 流程引擎创建
*
* @param processEngine
*/
@Override
public void onProcessEngineBuilt(ProcessEngine processEngine) {
ProcessEngineConfiguration processEngineConfiguration = processEngine.getProcessEngineConfiguration();
String activityFontName = processEngineConfiguration.getActivityFontName();
//获取当前系统可用字体
GraphicsEnvironment localGraphicsEnvironment = GraphicsEnvironment.getLocalGraphicsEnvironment();
String[] availableFontFamilyNames = localGraphicsEnvironment.getAvailableFontFamilyNames();
List<String> fontNames = Arrays.asList(availableFontFamilyNames);
//如果不包含可用字体,做异常处理
if (!fontNames.contains(activityFontName)) {
StringBuffer message = new StringBuffer();
message.append("缺少可用的字体,需要的字体为[")
.append(activityFontName)
.append("]")
.append("请给系统加入相关的字体库,然后重启本系统");
throw new RuntimeException(message.toString());
}
log.info("流程引擎启动成功");
}
/**
* 流程引擎销毁
*
* @param processEngine
*/
@Override
public void onProcessEngineClosed(ProcessEngine processEngine) {
log.info("流程引擎关闭");
}
}
自定义activiti流程引擎监听器
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
上一篇:分布式雪花算法id生成策略
下一篇:JUC基础

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
自定义dom事件监听
自定义dom事件监听
js+css