package com.nis.restful; /* * 服务业务编码 */ public enum RestBusinessCode { /** * 服务内部异常 */ service_runtime_error (5000000, "服务内部异常!"), /** * 未知错误 */ unknow_error (998, "未知错误!"), /** * 需要权限 */ need_permission (1000 ,"该操作需要权限"), /** * 资源不存在 */ uri_not_found (1001,"uri地址不存在,检查uri拼写"), /** * 参数不全 */ missing_args (1002,"缺少必要的参数信息"), /** * 操作行为错误,1-插入2-更新 3-删除4-查询 ,插入时选择了删除这种错误返回该异常代码 */ op_action_error (1003,"不正确的操作行为"), config_integrity_error (1004,"配置完整性错误或数据格式错误"), param_formate_error (1005,"服务器请求参数格式错误"), insert_data_repeat (1006,"新增数据重复"), log_range_undefined (1007,"服务器请求日志范围不明确"), not_unique (1008,"数据违反唯一性"), wrong_range (1009,"数据不在有效范围"), query_success(2000, "数据获取操作成功"), add_success(2001, "数据添加操作成功"), update_success(2002, "数据更新操作成功"), delete_success(2003, "数据删除操作成功"), /** * 完整性异常 4001000 编译:4001000 分组:4001100 数值类:4001200 IP类:4001300 字符串类:4001400 摘要类:4001500 回调类:4001600 * 业务格式异常 4002000 编译:4002000 分组:4002100 数值类:4002200 IP类:4002300 字符串类:4002400 摘要类:4002500 回调类:4002600 */ /** * 编译配置不能为空 */ CompileIsNull(4001001, "Maat配置不能为空"), /** * 编译配置的的compileId不能为空 */ CompileIdIsNull(4001002, "Maat配置的compileId字段不能为空"), /** * 编译配置的的service不能为空 */ ServiceIsNull(4001003, "配置的service属性不能为空"), /** * 编译配置的action不能为空 */ ActionIsNull(4001004, "Maat配置的action不能为空"), /** * 编译配置的的compileId不能为空 */ DoBlacklistIsNull(4001005, "Maat配置的doBlacklist不能为空"), /** * 编译配置的的compileId不能为空 */ DoBlacklistIsWrongRange(4001006, "Maat配置的doBlacklist的值不在有效范围"), /** * 编译配置的的doLog不能为空 */ DoLogIsNull(4001007, "Maat编译配置的doLog不能为空"), /** * 编译配置的的doLog不能为空 */ DoLogIsWrongRange(4001008, "Maat配置的doLog的值不在有效范围"), /** * 编译配置的effectiveRange不能为空 */ EffectiveRangeIsNull(4001009, "Maat配置的effectiveRange不能为空"), /** * 编译配置的startTime不能为空 */ StartTimeIsNull(4001010, "Maat配置的startTime不能为空"), /** * 编译配置的的endTime不能为空 */ EndTimeIsNull(4001011, "Maat配置的endTime不能为空"), /** * 配置的isValid不能为空 */ IsValidIsNull(4001013, "配置isValid属性不能为空"), /** * 编译配置的groupNum不能为空 */ GroupNumIsNull(4001016, "Maat配置groupNum属性不能为空"), /** * 编译配置的的fatherCfgId不能为空 */ FatherCfgIdIsNull(4001017, "Maat配置的fatherCfgId不能为空"), /** * 编译配置的缺少配置分组信息 */ CompileGroupIsNull(4001018, "Maat配置缺少groupRelationList"), /** * 编译配置的opTime不能为空 */ OpTimeIsNull(4001019, "Maat配置的opTime不能为空"), //分组配置数据完整性业务码10100~ /** * 编译配置的的配置分组的CompileId不能为空 */ GroupsCompileIdIsNull(4001100, "MAAT配置分组关系中compileId不能为空"), /** * 编译配置的的配置分组的groupId不能为空 */ GroupIdIsNull(4001101, "MAAT配置分组关系中groupId不能为空"), /** * 编译配置的的配置分组的isValid不能为空 */ GroupsIsValidIsNull(4001102, "MAAT配置分组关系中isValid不能为空"), // /** // * 编译配置的的配置分组的opTime不能为空 // */ // GroupsOpTimeIsNull(400137, "编译配置的的配置分组的opTime不能为空"), /** * 域配置的groupid在配置分组关系中不存在 */ RegionsGroupIdIsNotFound(4001103, "域配置的groupid在配置分组关系中不存在"), /** *域配置的regionId不能为空 */ RegionIdIsNull(4001104, "域配置的regionId不能为空"), /** *域配置的groupId不能为空 */ RegionsGroupIdIsNull(4001105, "域配置的groupId不能为空"), //数值类域数据完整性业务码10200~ /** * 编译配置中缺少数值类域配置信息 */ NumRegionIsNull(4001200, "Maat配置中不能缺少数值类域配置信息"), /** *数值域配置的lowBoundary不能为空 */ LowBoundaryIsNull(4001201, "数值域配置的lowBoundary不能为空"), /** *数值域配置的upBoundary不能为空 */ UpBoundaryIsNull(4001202, "数值域配置的upBoundary不能为空"), //数值类域数据完整性业务码10300~ /** * 编译配置中缺少IP类域配置信息 */ IpRegionIsNull(4001300, "Maat配置中不能缺少IP类域配置信息"), /** * IP类域配置的addrType不能为空 */ AddrTypeIsNull(4001301,"IP类域配置的addrType不能为空"), /** * IP类域配置的srcIp不能为空 */ SrcIpIsNull(4001302,"IP类域配置的srcIp不能为空"), /** * IP类域配置的maskSrcIp不能为空 */ MaskSrcIpIsNull(4001303,"IP类域配置的maskSrcIp不能为空"), /** * IP类域配置的srcPort不能为空 */ SrcPortIsNull(4001304,"IP类域配置的srcPort不能为空"), /** * IP类域配置的maskSrcPort不能为空 */ MaskSrcPortIsNull(4001305,"IP类域配置的maskSrcPort不能为空"), /** * IP类域配置的dstIp不能为空 */ DstIpIsNull(4001306,"IP类域配置的dstIp不能为空"), /** * IP类域配置的maskDstIp不能为空 */ MaskDstIpIsNull(4001307,"IP类域配置的maskDstIp不能为空"), /** * IP类域配置的dstPort不能为空 */ DstPortIsNull(4001308,"IP类域配置的dstPort不能为空"), /** * IP类域配置的maskDstPort不能为空 */ MaskDstPortIsNull(4001309,"IP类域配置的maskDstPort不能为空"), /** * IP类域配置的protocol不能为空 */ ProtocolIsNull(4001310,"IP类域配置的protocol不能为空"), /** * IP类域配置的direction不能为空 */ DirectionIsNull(4001311,"IP类域配置的direction不能为空"), //数值类域数据完整性业务码10400~ /** * 编译配置中缺少字符串类域配置信息 */ StrRegionIsNull(4001400, "Maat配置中不能缺少字符串类域配置信息"), /** * 字符串类域配置的keywords不能为空 */ KeywordsIsNull(4001401,"字符串类域配置的keywords不能为空"), /** * 字符串类域配置的district不能为空 */ DistrictIsNull(4001402,"字符串类域配置的district不能为空"), /** * 字符串类域配置的exprType不能为空 */ ExprTypeIsNull(4001403,"字符串类域配置的keywords不能为空"), /** * 字符串类域配置的matchMethod不能为空 */ MatchMethodIsNull(4001404,"字符串类域配置的matchMethod不能为空"), /** * 字符串类域配置的isHexbin不能为空 */ IsHexbinIsNull(4001405,"字符串类域配置的isHexbin不能为空"), //摘要类域数据完整性业务码10500~ /** * 摘要类域配置的rawLen不能为空 */ RawLenIsNull(4001500,"摘要类域配置的rawLen不能为空"), /** * 摘要类域配置的digest的值只能是1到10 */ DigestIsNull(4001501,"摘要类域配置的digest不能为空"), /** * 摘要类域配置的cfdsLevel不能为空 */ CfdsLevelIsNull(4001502,"摘要类域配置的cfdsLevel不能为空"), /** * 回调类配置的cfgId字段不能为空 */ CfgIdIsNull(4001600,"配置的cfgId字段不能为空"), /** * 回调类配置的属性不能为空 */ FieldIsNull(4001601,"配置属性不能为空"), /** * 回调类上传文件不能为空 */ FileIsNull(4001602,"上传文件不能为空"), /** * 回调类checksum与文件MD5值不一致 */ CheckSumIsWrong(4001603,"checksum与文件MD5值不一致"), //配置业务格式验证 20000 /** * 编译配置的groupNum属性值等于0 */ GroupNumIsZero(4002001, "Maat配置groupNum不能等于0"), /** * 编译配置的groupNum属性值大于8 */ GroupNumGtEight(4002002, "Maat配置的groupNum不能大于8"), /** * 编译配置的groupNum属性值与groupRelationList长度不相等 */ GroupNumNEQGroupList(4002003, "Maat配置的groupNum数量与groupRelationList大小需一致"), /** * 编译配置的的fatherCfgId不能为空 */ FatherCfgIdIsWrongRange(4002004, "Maat配置的fatherCfgId值不在有效范围"), /** * 配置的service与action不匹配 */ ServiceUnmatchAction(4002005, "配置的service与action不匹配"), /** * 编译配置的的startTime不能晚于endTime */ EndTimeGTStartTime(4002006, "Maat配置的startTime不能晚于endTime"), /** * 配置的isValid在添加时不能为无效 */ IsValidIsT(4002007, "配置增加操作,isValid值不能无效"), /** * 配置的isValid在配置取消时不能为有效 */ IsValidIsF(4002008, "配置取消操作,isValid值不能为有效"), // /** // * 编译配置的groupRelationList的配置在添加时不能为无效 // */ // GroupRegionIsValid(400121, "编译配置的分组配置在添加时不能为无效"), // // /** // * 编译配置的groupRelationList的配置在添加时不能为有效 // */ // GroupRegionIsNotValid(400121, "编译配置的分组配置在修改时不能为有效"), /** * 配置分组与编译配置的compileId不一致 */ CompileIdIsNeq(4002009,"Maat配置分组与编译配置的compileId不一致"), /** * 配置的service与action关系不存在 */ Service2ActionIsNull(4002010, "当前service与action关系不存在"), /** * 状态更新操作,所有配置的isValid值必须相同 */ IsValidNonUniq(4002011, "状态更新操作,所有配置的isValid值必须相同"), /** * 配置分组中同一groupId出现多次 */ GroupIdIsRepeat(4002100,"Maat配置分组groupId不能重复"), /** * tableName与编译配置业务类型不一致 */ TableNameUnmatchService(4002101, "当前编译配置service与域配置tableName的关系不存在"), /** *数值域配置的lowBoundary值不在有效范围内 */ LowBoundaryIsWrongRange(4002200, "数值域-配置lowBoundary值不在有效范围内"), /** *数值域配置的upBoundary值不在有效范围内 */ UpBoundaryIsWrongRange(4002201, "数值域-配置upBoundary值不在有效范围内"), /** *数值域配置的lowBoundary大于upBoundary值 */ LowBoundaryGTUpBoundary(4002202, "数值域-配置lowBoundary必须小于upBoundary"), /** * IP类域配置的direction的值不在有效范围 */ DirectionIsWrongRange(4002300,"IP类域-direction的值只能是0或1"), /** * IP类域配置的IP或IpMask与addrType不一致 */ IPUnMatchAddrType(4002301,"IP类域-IP地址或掩码与addrType不一致"), /** * IP类域配置的port格式不正确 */ PortIsNotVal(4002302,"IP类域-端口或端口掩码格式不正确"), /** * IP类域配置的srcIp和dstIp不能相同 */ SrcIpEQDstIp(4002303,"IP类域-srcIp和dstIp不能相同"), /** * 字符串域配置的exprType的值只能是0(无表达式)或者1(与表达式) */ ExprTypeIsWrongRange(4002400,"字符域-exprType的值只能是0(无表达式)或1(与表达式)"), /** * 字符串域配置的matchMethod的值只能是0(无表达式)或者1(与表达式) */ MatchMethodIsWrongRange(4002401,"字符域-matchMethod的值只能是0(子串匹配),1(右匹配),2(左匹配),3(完全匹配)"), /** * 字符串域配置的isHexbin的值只能是0(大小写不敏感,且非HEX)或者1(HEX)或者2(大小写敏感,且非HEX) */ IsHexbinIsWrongRange(4002402,"字符域-isHexbin的值只能是0(大小写不敏感,且非HEX)或者1(HEX)或者2(大小写敏感,且非HEX)"), /** * 摘要类域配置的cfdsLevel的值只能是1到10 */ CfdsLevelIsWrongRange(4002500,"摘要域-cfdsLevel的值只能是1到10"), //回调类 /** * 回调类service配置不正确 */ ServiceIsWrong(4002600,"service的值配置不正确"), /** * 回调类ipType属性只能为4(IPV4)、6(IPV6) */ IpTypeIsWrong(4002601,"ipType属性只能为4(IPV4)、6(IPV6)"), /** * 回调类的XX属性不是数值类型 */ MastNumberic(4002602,"属性值不是数值类型"), /** * 回调类的XX属性不是数值类型 */ MastDate(4002602,"属性值不是日期类型"), /** * 回调类的XX属性不是数值类型 */ IpIsUnMatchType(4002603,"配置IP或Mask与addrType不一致"), /** * 回调类的XX属性取值不在Range范围内 */ ValueInWrongRange(4002604,"属性取值不在Range范围内"), /** * 回调类的XX属性取值符合正则表达式验证 */ ValueInWrongRegexp(4002605,"属性值与正则表达式不匹配"), /** * isValid属性格式不正确 */ IsValidInWrongRange(4002606,"isValid属性格式不正确"), /** * 回调类配置请求参数格式不正确 */ CBParamFormateError(4002607,"回调类配置请求参数格式不正确"), //服务内部异常业务码 /** * 回调类配置Service不存在或未配置tableName */ CBServiceOrTableNameNotFound(5001001,"回调类配置Service不存在或未配置tableName"), /** * service与写入数据库序号映射关系不存在 */ ServiceNoFoundDBIndex(5001002,"service与写入数据库序号映射关系不存在"), /** * 向服务器上传文件失败 */ FileUploadFailure(5001003,"向服务器上传文件失败"), /** * FastDfs文件服务器出现异常 */ FastDfsServerException(5001004,"FastDfs文件服务器出现异常"), /** * 摘要获取失败 */ GetFileDigestFailure(5001005,"摘要获取失败"), /** * Redis数据库编号不在有效范围内 */ DbIndexNotInRange(5002001,"Redis数据库编号不在有效范围内"), /** * 配置信息不能为空 */ ConfigSourceIsNull(5002002,"配置信息不能为空"), /** * 无法连接Redis数据库 */ CannotConnectionRedis(5002003,"无法连接Redis数据库"), /** * 向Redis数据库保存配置时发生错误 */ SaveDataInError(5002004,"向Redis数据库保存配置时发生错误"), /** * key在Redis中不存在 */ KeyNotExistsInRedis(5002005,"key在Redis中不存在"), /** * 删除Redis数据库中配置时发生错误 */ DeleteDataInError(5002006,"删除Redis数据库中配置时发生错误"), /** * 向Redis数据库中设置值失败 */ ZsetFailed(5002007,"向Redis数据库中设置值失败"), /** * redisTemplate为空 */ RedisTemplateIsNull(5002008,"redisTemplate为空"), /** * 判断key是否存在失败 */ ExistsKeyFailed(5002008,"判断key是否存在失败"), /** * 无法从Map中获取配置的属性值 */ GetMaatVersionFailure(5003001,"无法从Map中获取配置的属性值"), /** * 在配置文件中未找到service对应的表名 */ NotFoundTableName(5003002,"未找到service对应的表名"), /** * 在配置文件中未找到service对应的Redis入库规则 */ NotFoundRedisRule(5003003,"未找到service对应的Redis入库规则"), /** * Redis数据库中MAAT配置的对应关系不存在 */ RelationNotExistsInRedis(5003004,"Redis数据库中MAAT配置的对应关系不存在"), /** * Map中缺少编译配置信息 */ NotFoundCompileInfo(5004001,"Map中缺少编译配置信息"), /** * Map中缺少分组配置信息 */ NotFoundGroupInfo(5004002,"Map中缺少分组配置信息"), /** * 无法从Map中获取配置的属性值 */ NotFoundValueByKey(5004003,"无法从Map中获取配置的属性值"), /** * 状态更新操作中service与配置ID的应对关系不能为空 */ ServiceAndCompileMapIsNull(5004004,"状态更新操作中service与配置Id的应对关系不能为空"), /** * 状态更新操作中与service对应的配置Id列表不能为空 */ CompileIdListIsNull(5004005,"状态更新操作中与service对应的配置Id列表不能为空"), /** * 状态更新操作中更新内容Map不能为空 */ ConfigInfoMapIsNull(5004005,"状态更新操作中更新内容Map不能为空"), ; private final int value; //错误码 private final String errorReason; //错误原因 public int getValue() { return value; } public String getErrorReason() { return errorReason; } private RestBusinessCode(int value, String errorReason) { this.value = value; this.errorReason = errorReason; } public static RestBusinessCode valueOf(int errorCode) { for (RestBusinessCode status : values()) { if (status.value == errorCode) { return status; } } throw new IllegalArgumentException("No matching constant for [" + errorCode + "]"); } }