mirror of
https://github.com/shtorm-7/sing-box-extended.git
synced 2026-07-31 19:14:17 +03:00
refactor: Extract clash/v2ray/time service form router
This commit is contained in:
@@ -9,23 +9,22 @@ import (
|
||||
var _ RuleItem = (*ClashModeItem)(nil)
|
||||
|
||||
type ClashModeItem struct {
|
||||
router adapter.Router
|
||||
mode string
|
||||
clashServer adapter.ClashServer
|
||||
mode string
|
||||
}
|
||||
|
||||
func NewClashModeItem(router adapter.Router, mode string) *ClashModeItem {
|
||||
func NewClashModeItem(clashServer adapter.ClashServer, mode string) *ClashModeItem {
|
||||
return &ClashModeItem{
|
||||
router: router,
|
||||
mode: mode,
|
||||
clashServer: clashServer,
|
||||
mode: mode,
|
||||
}
|
||||
}
|
||||
|
||||
func (r *ClashModeItem) Match(metadata *adapter.InboundContext) bool {
|
||||
clashServer := r.router.ClashServer()
|
||||
if clashServer == nil {
|
||||
if r.clashServer == nil {
|
||||
return false
|
||||
}
|
||||
return strings.EqualFold(clashServer.Mode(), r.mode)
|
||||
return strings.EqualFold(r.clashServer.Mode(), r.mode)
|
||||
}
|
||||
|
||||
func (r *ClashModeItem) String() string {
|
||||
|
||||
Reference in New Issue
Block a user