diff --git a/server/router/level_1_router.go b/server/router/level_1_router.go deleted file mode 100644 index fdcd3f5..0000000 --- a/server/router/level_1_router.go +++ /dev/null @@ -1,43 +0,0 @@ -package router - -import ( - "fmt" - "reflect" -) - -// NewLevel1Router 创建支持一级分类的路由器 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func NewLevel1Router[Route comparable, Handle any]() *Level1Router[Route, Handle] { - return &Level1Router[Route, Handle]{ - routes: map[Route]Handle{}, - } -} - -// Level1Router 支持一级分类的路由器 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -type Level1Router[Route comparable, Handle any] struct { - routes map[Route]Handle -} - -// Route 创建路由 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func (slf *Level1Router[Route, Handle]) Route(route Route, handleFunc Handle) { - if reflect.TypeOf(handleFunc).Kind() != reflect.Func { - panic(fmt.Errorf("route[%v] registration failed, handle must be a function type", route)) - } - _, exist := slf.routes[route] - if exist { - panic(fmt.Errorf("the route[%v] has already been registered, duplicate registration is not allowed", route)) - } - slf.routes[route] = handleFunc -} - -// Match 匹配路由 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func (slf *Level1Router[Route, Handle]) Match(route Route) Handle { - return slf.routes[route] -} diff --git a/server/router/level_2_router.go b/server/router/level_2_router.go deleted file mode 100644 index c7568e0..0000000 --- a/server/router/level_2_router.go +++ /dev/null @@ -1,49 +0,0 @@ -package router - -import ( - "fmt" - "reflect" -) - -// NewLevel2Router 创建支持二级分类的路由器 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func NewLevel2Router[Route comparable, Handle any]() *Level2Router[Route, Handle] { - return &Level2Router[Route, Handle]{ - routes: map[Route]map[Route]Handle{}, - } -} - -// Level2Router 支持二级分类的路由器 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -type Level2Router[Route comparable, Handle any] struct { - routes map[Route]map[Route]Handle -} - -// Route 创建路由 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func (slf *Level2Router[Route, Handle]) Route(topRoute Route, route Route, handleFunc Handle) { - if reflect.TypeOf(handleFunc).Kind() != reflect.Func { - panic(fmt.Errorf("route[%v] registration failed, handle must be a function type", route)) - } - routes, exist := slf.routes[topRoute] - if !exist { - routes = map[Route]Handle{} - slf.routes[topRoute] = routes - } - - _, exist = routes[route] - if exist { - panic(fmt.Errorf("the route[%v:%v] has already been registered, duplicate registration is not allowed", topRoute, route)) - } - routes[route] = handleFunc -} - -// Match 匹配路由 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func (slf *Level2Router[Route, Handle]) Match(topRoute Route, route Route) Handle { - return slf.routes[topRoute][route] -} diff --git a/server/router/level_3_router.go b/server/router/level_3_router.go deleted file mode 100644 index 737e106..0000000 --- a/server/router/level_3_router.go +++ /dev/null @@ -1,53 +0,0 @@ -package router - -import ( - "fmt" - "reflect" -) - -// NewLevel3Router 创建支持三级分类的路由器 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func NewLevel3Router[Route comparable, Handle any]() *Level3Router[Route, Handle] { - return &Level3Router[Route, Handle]{ - routes: map[Route]map[Route]map[Route]Handle{}, - } -} - -// Level3Router 支持三级分类的路由器 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -type Level3Router[Route comparable, Handle any] struct { - routes map[Route]map[Route]map[Route]Handle -} - -// Route 创建路由 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func (slf *Level3Router[Route, Handle]) Route(topRoute Route, level2Route Route, route Route, handleFunc Handle) { - if reflect.TypeOf(handleFunc).Kind() != reflect.Func { - panic(fmt.Errorf("route[%v] registration failed, handle must be a function type", route)) - } - routes, exist := slf.routes[topRoute] - if !exist { - routes = map[Route]map[Route]Handle{} - slf.routes[topRoute] = routes - } - level2Routes, exist := routes[level2Route] - if !exist { - level2Routes = map[Route]Handle{} - routes[level2Route] = level2Routes - } - _, exist = level2Routes[route] - if exist { - panic(fmt.Errorf("the route[%v:%v:%v] has already been registered, duplicate registration is not allowed", topRoute, level2Route, route)) - } - level2Routes[route] = handleFunc -} - -// Match 匹配路由 -// -// Deprecated: 从 Minotaur 0.1.7 开始,由于该路由器设计不合理,局限性大,已弃用。建议使用 Multistage 进行代替。 -func (slf *Level3Router[Route, Handle]) Match(topRoute Route, level2Route Route, route Route) Handle { - return slf.routes[topRoute][level2Route][route] -}