UserOperateEnum.java
5.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
package com.ui.User;
import com.ui.contants.HttpUriContants;
import org.apache.commons.lang.StringUtils;
/**
* Created by craig.qin
* 用户操作uri
*/
public enum UserOperateEnum {
//user服务相关
manage_saveUser("/manage/saveUser","用户新增/更新",false),
manage_deleteUser("/manage/deleteUser","用户删除",false),
/************************ 关键切换 ************************/
//java重启
javaRestart_stopOrRestart("/javaRestart/stopOrRestart","java重启/停止",true),
//node重启
nodeBuild_build("/nodeBuild/build","node云重启/删除路径重启",true),
//双中心切换_新
centerSwitch_doExeAndCheck("/centerSwitch/doExeAndCheck","双中心切换",true),
//NGINX切换-lua切换
luaswitch_viewToChangeLuaConf("/luaswitch/viewToChangeLuaConf","NGINX切换-lua切换",true),
luaswitch_switchConf("/luaswitch/switchConf","NGINX切换-lua切换执行",true),
//NGINX切换-dns切换
luaswitch_dnsSwitchConf("/luaswitch/dnsSwitchConf","NGINX切换-直连切换",true),
//NGINX切换-nginx
nginxswitch_viewToChangeNginxConf("/nginxswitch/viewToChangeNginxConf","NGINX切换预览",true),
nginxswitch_switchNginxConf("/nginxswitch/switchNginxConf","NGINX切换",true),
//搜索流量切换 dns发布
internalDns_updateNameForSearch("/internalDns/updateNameForSearch","搜索流量切换",true),
internalDns_refresh("/internalDns/refresh","dns域名服务器刷新",true),
internalDns_save("/internalDns/save","dns域名新增/更新",true),
internalDns_deleteById("/internalDns/deleteById","dns域名删除",true),
//线下店nginx切换
storeSwitch_viewStoreNginxToChangeConf("/storeSwitch/viewStoreNginxToChangeConf","线下店NGINX切换预览",true),
storeSwitch_switchStoreNginx("/storeSwitch/switchStoreNginx","线下店NGINX切换",true),
/************************ 管理员 ************************/
//redis缓存清理
redisClear_clear("/redisClear/clear","redis缓存清理",true),
//告警开发
OpsSmsOnOff_switchAlarm("/OpsSmsOnOff/switchAlarm","告警开关",true),
//伸缩组
autoScalingTool_modifyScalingGroup("/autoScalingTool/modifyScalingGroup","伸缩组-伸缩",true),
autoScalingTool_stopNoneProtectedJavaProcess("/autoScalingTool/stopNoneProtectedJavaProcess","伸缩组-停止非保护java机器",true),
autoScalingTool_deployCloudProject("/autoScalingTool/deployCloudProject","伸缩组-发布java",true),
autoScalingTool_deployCloudProjectForNode("/autoScalingTool/deployCloudProjectForNode","伸缩组-发布node",true),
autoScalingTool_updateIpToGit("/autoScalingTool/updateIpToGit","伸缩组-更新iptable",true),
autoScalingTool_updateEsConfig("/autoScalingTool/updateEsConfig","伸缩组-更新es配置",true),
autoScalingTool_updateGatewayUpstream("/autoScalingTool/updateGatewayUpstream","伸缩组-gateway项目更新upstream",true),
autoScalingTool_updateAnsibleDeployForNode("/autoScalingTool/updateAnsibleDeployForNode","伸缩组-node项目更新ansible",true),
autoScalingTool_updateToHost("/autoScalingTool/updateToHost","伸缩组-更新主机到cmdb",true),
autoScalingTool_updateMemcacheInfoForInternalDomain("/autoScalingTool/updateMemcacheInfoForInternalDomain","伸缩组-memcache更新内部dns",true),
autoScalingTool_updateMobjectInfo("/autoScalingTool/updateMobjectInfo","伸缩组-更新监控对象",true),
autoScalingTool_updateNginxConfig("/autoScalingTool/updateNginxConfig","伸缩组-nginx类型伸缩后执行脚本",true),
/************************ 项目发布 ************************/
//java发布
project_build("/project/build","java发布",true),
project_buildProjectWithIPs("/project/buildProjectWithIPs","java发布-指定ip",true),
project_deregisterHostYohoSearchService("/project/deregisterHostYohoSearchService","java发布-lb卸载",true),
project_registerHostYohoSearchService("/project/registerHostYohoSearchService","java发布-lb挂载",true),
//node发布 (已经配置,参见关键切换-node重启)
//dns发布 (已经配置,参见关键切换-搜索流量切换)
//php发布
phpBuild_build("/phpBuild/build","php发布",true),
//docker发布
dockerBuild_mirrorAndDeploy("/dockerBuild/mirrorAndDeploy","docker发布",true),
dockerBuild_rollback("/dockerBuild/rollback","docker回滚",true),
//java按天回滚
project_doRollbackByTime("/project/doRollbackByTime","java按天回滚",true)
;
private String uri;
private String desc;
private boolean aspectFlag;
UserOperateEnum(String uri, String desc,boolean aspectFlag){
this.uri = uri;
this.desc = desc;
this.aspectFlag=aspectFlag;
}
/**
* 根据uri获取具有拦截标识的操作对象
* @param uri
* @return
*/
public static UserOperateEnum getAspectByUri(String uri){
if(StringUtils.isBlank(uri)){
return null;
}
UserOperateEnum[] allOperate = UserOperateEnum.values();
for(UserOperateEnum oper:allOperate){
if(oper.aspectFlag&&oper.uri.equals(uri)){
return oper;
}
}
return null;
}
/**
* 获取操作的描述信息
* @param operate
* @return
*/
public String getDesc(UserOperateEnum operate){
if(operate==null){
return "";
}
return operate.desc;
}
}