mirror of
https://github.com/wyx2685/V2bX.git
synced 2026-02-05 21:20:09 +00:00
clear code
This commit is contained in:
25
core/node.go
25
core/node.go
@@ -8,6 +8,7 @@ import (
|
|||||||
"github.com/Yuzuki616/V2bX/conf"
|
"github.com/Yuzuki616/V2bX/conf"
|
||||||
"github.com/xtls/xray-core/core"
|
"github.com/xtls/xray-core/core"
|
||||||
"github.com/xtls/xray-core/features/inbound"
|
"github.com/xtls/xray-core/features/inbound"
|
||||||
|
"github.com/xtls/xray-core/features/outbound"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (c *Core) AddNode(tag string, info *panel.NodeInfo, config *conf.ControllerConfig) error {
|
func (c *Core) AddNode(tag string, info *panel.NodeInfo, config *conf.ControllerConfig) error {
|
||||||
@@ -23,7 +24,7 @@ func (c *Core) AddNode(tag string, info *panel.NodeInfo, config *conf.Controller
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("build outbound error: %s", err)
|
return fmt.Errorf("build outbound error: %s", err)
|
||||||
}
|
}
|
||||||
err = c.AddOutbound(outBoundConfig)
|
err = c.addOutbound(outBoundConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("add outbound error: %s", err)
|
return fmt.Errorf("add outbound error: %s", err)
|
||||||
}
|
}
|
||||||
@@ -45,12 +46,27 @@ func (c *Core) addInbound(config *core.InboundHandlerConfig) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *Core) addOutbound(config *core.OutboundHandlerConfig) error {
|
||||||
|
rawHandler, err := core.CreateObject(c.Server, config)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
handler, ok := rawHandler.(outbound.Handler)
|
||||||
|
if !ok {
|
||||||
|
return fmt.Errorf("not an InboundHandler: %s", err)
|
||||||
|
}
|
||||||
|
if err := c.ohm.AddHandler(context.Background(), handler); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (c *Core) DelNode(tag string) error {
|
func (c *Core) DelNode(tag string) error {
|
||||||
err := c.removeInbound(tag)
|
err := c.removeInbound(tag)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("remove in error: %s", err)
|
return fmt.Errorf("remove in error: %s", err)
|
||||||
}
|
}
|
||||||
err = c.RemoveOutbound(tag)
|
err = c.removeOutbound(tag)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("remove out error: %s", err)
|
return fmt.Errorf("remove out error: %s", err)
|
||||||
}
|
}
|
||||||
@@ -60,3 +76,8 @@ func (c *Core) DelNode(tag string) error {
|
|||||||
func (c *Core) removeInbound(tag string) error {
|
func (c *Core) removeInbound(tag string) error {
|
||||||
return c.ihm.RemoveHandler(context.Background(), tag)
|
return c.ihm.RemoveHandler(context.Background(), tag)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *Core) removeOutbound(tag string) error {
|
||||||
|
err := c.ohm.RemoveHandler(context.Background(), tag)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
package core
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
"fmt"
|
|
||||||
"github.com/xtls/xray-core/core"
|
|
||||||
"github.com/xtls/xray-core/features/outbound"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (c *Core) RemoveOutbound(tag string) error {
|
|
||||||
err := c.ohm.RemoveHandler(context.Background(), tag)
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *Core) AddOutbound(config *core.OutboundHandlerConfig) error {
|
|
||||||
rawHandler, err := core.CreateObject(c.Server, config)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
handler, ok := rawHandler.(outbound.Handler)
|
|
||||||
if !ok {
|
|
||||||
return fmt.Errorf("not an InboundHandler: %s", err)
|
|
||||||
}
|
|
||||||
if err := c.ohm.AddHandler(context.Background(), handler); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user