|
|
@@ -109,12 +109,20 @@ func (r *RootRouter) BasePath() string {
|
|
|
return r.engine.BasePath()
|
|
|
}
|
|
|
|
|
|
+// VersionedRouter returns a specific versioned router based on the provided version string
|
|
|
+// This is a method of the RootRouter struct that allows accessing version-specific routing configurations
|
|
|
func (r *RootRouter) VersionedRouter(version string) Router {
|
|
|
+ // Return the router associated with the specified version from the versioned map
|
|
|
return r.versioned[version]
|
|
|
}
|
|
|
|
|
|
func (r *RootRouter) DumpPermissionItems() []PermissionItem {
|
|
|
- return r.permissionItems
|
|
|
+ permissionItems := r.permissionItems
|
|
|
+ for _, versioned := range r.versioned {
|
|
|
+ permissionItems = append(permissionItems, versioned.permissionItems...)
|
|
|
+ }
|
|
|
+
|
|
|
+ return permissionItems
|
|
|
}
|
|
|
|
|
|
func (r *RootRouter) AddRoute(method string, relativePathPattern string, handlers ...Handler) Router {
|
|
|
@@ -203,7 +211,12 @@ func (r *PrefixRouter) BasePath() string {
|
|
|
}
|
|
|
|
|
|
func (r *PrefixRouter) DumpPermissionItems() []PermissionItem {
|
|
|
- return r.permissionItems
|
|
|
+ permissionItems := r.permissionItems
|
|
|
+ for _, versioned := range r.versioned {
|
|
|
+ permissionItems = append(permissionItems, versioned.permissionItems...)
|
|
|
+ }
|
|
|
+
|
|
|
+ return permissionItems
|
|
|
}
|
|
|
|
|
|
func transferHandlers(handlers ...Handler) []gin.HandlerFunc {
|