mirror of
https://gitee.com/samwaf/SamWaf.git
synced 2026-10-31 10:11:42 +08:00
69 lines
2.3 KiB
Go
69 lines
2.3 KiB
Go
package enums
|
|
|
|
const (
|
|
BATCHTASK_IPALLOW = "ipallow"
|
|
BATCHTASK_IPDENY = "ipdeny"
|
|
// BATCHTASK_IPGROUP 导入到 IP 组。IP 组是租户级资源、不带 host_code,
|
|
// 目标组由 batch_extra_config 里的 group_code 指定,与 batch_host_code 无关。
|
|
BATCHTASK_IPGROUP = "ipgroup"
|
|
BATCHTASK_SENSITIVE = "sensitive"
|
|
BATCHTASK_EXECUTEMETHODAPPEND = "append"
|
|
BATCHTASK_EXECUTEMETHODOVERWRITE = "overwrite"
|
|
|
|
// 来源类型。local=本地文件;remote 是前端在用的值,url 是模型注释里的历史写法,
|
|
// 两者语义相同(HTTP 拉取),都要认,否则存量任务与现有前端会一起失效。
|
|
BATCHTASK_SOURCETYPE_LOCAL = "local"
|
|
BATCHTASK_SOURCETYPE_REMOTE = "remote"
|
|
BATCHTASK_SOURCETYPE_URL = "url"
|
|
|
|
// 触发类型
|
|
BATCHTASK_TRIGGERTYPE_CRON = "cron"
|
|
BATCHTASK_TRIGGERTYPE_MANUAL = "manual"
|
|
)
|
|
|
|
// 以下四个白名单是批量任务的枚举边界。这些字段来自管理端提交、直接决定
|
|
// 「读哪里、写哪张表、怎么写」,不校验的后果不只是脏数据:未知的执行方式会让
|
|
// 各 processor 静默 return false(任务像成功一样什么都没做),未知的来源类型
|
|
// 会走进远端分支。所以保存时就拒,执行时再兜一次。
|
|
|
|
// IsValidBatchType 任务类型是否合法
|
|
func IsValidBatchType(v string) bool {
|
|
switch v {
|
|
case BATCHTASK_IPALLOW, BATCHTASK_IPDENY, BATCHTASK_IPGROUP, BATCHTASK_SENSITIVE:
|
|
return true
|
|
}
|
|
return false
|
|
}
|
|
|
|
// IsValidBatchSourceType 来源类型是否合法
|
|
func IsValidBatchSourceType(v string) bool {
|
|
switch v {
|
|
case BATCHTASK_SOURCETYPE_LOCAL, BATCHTASK_SOURCETYPE_REMOTE, BATCHTASK_SOURCETYPE_URL:
|
|
return true
|
|
}
|
|
return false
|
|
}
|
|
|
|
// IsBatchLocalSource 是否为本地文件来源(非本地即远端拉取)
|
|
func IsBatchLocalSource(v string) bool {
|
|
return v == BATCHTASK_SOURCETYPE_LOCAL
|
|
}
|
|
|
|
// IsValidBatchTriggerType 触发类型是否合法
|
|
func IsValidBatchTriggerType(v string) bool {
|
|
switch v {
|
|
case BATCHTASK_TRIGGERTYPE_CRON, BATCHTASK_TRIGGERTYPE_MANUAL:
|
|
return true
|
|
}
|
|
return false
|
|
}
|
|
|
|
// IsValidBatchExecuteMethod 执行方式是否合法
|
|
func IsValidBatchExecuteMethod(v string) bool {
|
|
switch v {
|
|
case BATCHTASK_EXECUTEMETHODAPPEND, BATCHTASK_EXECUTEMETHODOVERWRITE:
|
|
return true
|
|
}
|
|
return false
|
|
}
|