# server.action

服务器状态变化或发生指定的事件时调用此脚本中的钩子函数。

  1. 此钩子脚本全局唯一,在sysdata项目中,位于/sysdata/settings/hooks/server.action
  2. 可以直接编辑server.action文件,也可以在SuccIDE或元数据项目设置中通过脚本编辑器直接编辑 ts语法的脚本文件server.action.ts,编辑器会自动编译并生成server.action

# 脚本模版

下面的钩子函数按需实现,需要实现哪个就把它的注释去掉即可。

/**
 * 服务器状态变化或发生指定的事件时调用此脚本中的钩子函数。下面的钩子函数按需实现,需要实现哪个就把它的注释去掉即可。
 *
 * 此钩子脚本全局唯一,在`sysdata`项目中,位于`/sysdata/settings/hooks/server.action`。
 * 你可以直接编辑`server.action`文件,也可以在SuccADP-IDE或元数据项目设置中通过脚本编辑器直接编辑
 * ts语法的脚本文件`server.action.ts`,编辑器会自动编译并生成`server.action`。
 */

/**
 * 当服务器启动完成后调用,只会执行一次
 */
//function onDidServerStartup() {
// 去掉此函数的注释,在这里实现你期望的个性化业务逻辑
//}

/**
 * 当服务器将要关闭时调用,只会执行一次
 */
//function onServerShutdown() {
// 去掉此函数的注释,在这里实现你期望的个性化业务逻辑
//}

/**
 * 当有元数据项目创建成功后调用。
 *
 * @param projectName 已创建的项目的名称。
 */
//function onDidProjectCreate(projectName: string) {

//}

/**
 * 当有元数据项目要被删除时调用。
 *
 * @param projectName 将要删除的项目的名称。
 */
//function onProjectDelete(projectName: string) {

//}

/**
 * 系统日志事件准备写入到数据时调用。
 *
 * 开发者可以在这个事件函数中拦截系统默认写入逻辑将日志写入别处,或在日志入库前修改一些字段的数据。
 *
 * @param events 要写入的日志列表,背后是一个java的List对象。
 * @returns 返回false代表脚本已经处理了日志的写入,系统则不再将日志入库,其他情况系统将继续默认日志
 * 		写入逻辑。
 */
// function onPersistEvents(events: ServerEvent[]): boolean | void {
// 	for (let i = events.length; i > -1; --i) {
// 		let event = events[i];
// 		event.consistencyInfo = "xxx";//为登录日志自定义一个数据唯一性校验hash值
// 	}
// }
是否有帮助?
0条评论
评论