Skip to content

Commit 3e7b685

Browse files
committed
feat: add upstream constants and refactor job and router parameters
1 parent 26abdec commit 3e7b685

File tree

3 files changed

+36
-21
lines changed

3 files changed

+36
-21
lines changed

internal/common/upstream.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package common
2+
3+
const (
4+
UpstreamNameGroupRankInfo = "group_rank_info"
5+
UpstreamNameRobotData = "robot_data"
6+
UpstreamNameSchedule = "schedule"
7+
)
8+
9+
const (
10+
UpstreamUrlGroupRankInfo = "https://pro-robomasters-hz-n5i3.oss-cn-hangzhou.aliyuncs.com/live_json/group_rank_info.json"
11+
UpstreamUrlRobotData = "https://pro-robomasters-hz-n5i3.oss-cn-hangzhou.aliyuncs.com/live_json/robot_data.json"
12+
UpstreamUrlSchedule = "https://pro-robomasters-hz-n5i3.oss-cn-hangzhou.aliyuncs.com/live_json/schedule.json"
13+
)

internal/job/init.go

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package job
22

33
import (
4+
"github.com/scutrobotlab/rm-schedule/internal/common"
45
"log"
56

67
"github.com/robfig/cron/v3"
@@ -13,19 +14,19 @@ type CronJobParam struct {
1314
}
1415

1516
var Params = map[string]CronJobParam{
16-
"group_rank_info": {
17-
Name: "group_rank_info",
18-
Url: "https://pro-robomasters-hz-n5i3.oss-cn-hangzhou.aliyuncs.com/live_json/group_rank_info.json",
17+
common.UpstreamNameGroupRankInfo: {
18+
Name: common.UpstreamNameGroupRankInfo,
19+
Url: common.UpstreamUrlGroupRankInfo,
1920
ReplaceRMStatic: false,
2021
},
21-
"robot_data": {
22-
Name: "robot_data",
23-
Url: "https://pro-robomasters-hz-n5i3.oss-cn-hangzhou.aliyuncs.com/live_json/robot_data.json",
22+
common.UpstreamNameRobotData: {
23+
Name: common.UpstreamNameRobotData,
24+
Url: common.UpstreamUrlRobotData,
2425
ReplaceRMStatic: false,
2526
},
26-
"schedule": {
27-
Name: "schedule",
28-
Url: "https://pro-robomasters-hz-n5i3.oss-cn-hangzhou.aliyuncs.com/live_json/schedule.json",
27+
common.UpstreamNameSchedule: {
28+
Name: common.UpstreamNameSchedule,
29+
Url: common.UpstreamUrlSchedule,
2930
ReplaceRMStatic: true,
3031
},
3132
}

internal/router/router.go

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,37 @@
11
package router
22

33
import (
4+
"fmt"
45
"github.com/kataras/iris/v12"
6+
"github.com/scutrobotlab/rm-schedule/internal/common"
57
"github.com/scutrobotlab/rm-schedule/internal/handler"
6-
"github.com/scutrobotlab/rm-schedule/internal/job"
78
"github.com/scutrobotlab/rm-schedule/internal/static"
89
)
910

1011
var Params = map[string]handler.RouteHandlerParam{
11-
"group_rank_info": {
12-
Name: "group_rank_info",
12+
common.UpstreamNameGroupRankInfo: {
13+
Name: common.UpstreamNameGroupRankInfo,
1314
Static: false,
1415
CacheControl: "public, max-age=5",
15-
OriginalUrl: job.Params["group_rank_info"].Url,
16+
OriginalUrl: common.UpstreamUrlGroupRankInfo,
1617
Data: static.GroupRankInfoBytes,
1718
SeasonMap: map[string][]byte{
1819
"2024": static.GroupRankInfoBytes2024,
1920
},
2021
},
21-
"robot_data": {
22-
Name: "robot_data",
22+
common.UpstreamNameRobotData: {
23+
Name: common.UpstreamNameRobotData,
2324
Static: false,
2425
CacheControl: "public, max-age=5",
25-
OriginalUrl: job.Params["robot_data"].Url,
26+
OriginalUrl: common.UpstreamUrlRobotData,
2627
Data: static.RobotDataBytes,
2728
SeasonMap: nil,
2829
},
29-
"schedule": {
30-
Name: "schedule",
30+
common.UpstreamNameSchedule: {
31+
Name: common.UpstreamNameSchedule,
3132
Static: false,
3233
CacheControl: "public, max-age=5",
33-
OriginalUrl: job.Params["schedule"].Url,
34+
OriginalUrl: common.UpstreamUrlSchedule,
3435
Data: static.ScheduleBytes,
3536
SeasonMap: map[string][]byte{
3637
"2024": static.ScheduleBytes2024,
@@ -45,8 +46,8 @@ func Router(r *iris.Application, frontend string) {
4546
api.Get("/mp/match", handler.MpMatchHandler)
4647
api.Get("/rank", handler.RankListHandler)
4748

48-
for handlerName, param := range Params {
49-
api.Get("/"+handlerName, handler.RouteHandlerFactory(param))
49+
for name, param := range Params {
50+
api.Get(fmt.Sprintf("/%s", name), handler.RouteHandlerFactory(param))
5051
}
5152

5253
r.HandleDir("/", iris.Dir(frontend), iris.DirOptions{

0 commit comments

Comments
 (0)