replace unnecessary Task interface with struct

This commit is contained in:
yusing
2024-12-17 09:32:51 +08:00
parent 4d94d12e9c
commit c5d96f96e1
15 changed files with 106 additions and 112 deletions

View File

@@ -31,7 +31,7 @@ type (
handler http.Handler
rp *gphttp.ReverseProxy
task task.Task
task *task.Task
l zerolog.Logger
}
@@ -74,8 +74,8 @@ func (r *HTTPRoute) String() string {
return string(r.Alias)
}
// Start implements task.TaskStarter.
func (r *HTTPRoute) Start(providerSubtask task.Task) E.Error {
// Start implements*task.TaskStarter.
func (r *HTTPRoute) Start(providerSubtask *task.Task) E.Error {
if entry.ShouldNotServe(r) {
providerSubtask.Finish("should not serve")
return nil
@@ -148,7 +148,7 @@ func (r *HTTPRoute) Start(providerSubtask task.Task) E.Error {
return nil
}
// Finish implements task.TaskFinisher.
// Finish implements*task.TaskFinisher.
func (r *HTTPRoute) Finish(reason any) {
r.task.Finish(reason)
}

View File

@@ -28,7 +28,7 @@ func (p *Provider) newEventHandler() *EventHandler {
}
}
func (handler *EventHandler) Handle(parent task.Task, events []watcher.Event) {
func (handler *EventHandler) Handle(parent *task.Task, events []watcher.Event) {
oldRoutes := handler.provider.routes
newRoutes, err := handler.provider.loadRoutesImpl()
if err != nil {
@@ -97,7 +97,7 @@ func (handler *EventHandler) match(event watcher.Event, route *route.Route) bool
return false
}
func (handler *EventHandler) Add(parent task.Task, route *route.Route) {
func (handler *EventHandler) Add(parent *task.Task, route *route.Route) {
err := handler.provider.startRoute(parent, route)
if err != nil {
handler.errs.Add(err.Subject("add"))
@@ -112,7 +112,7 @@ func (handler *EventHandler) Remove(route *route.Route) {
handler.removed.Adds(route.Entry.Alias)
}
func (handler *EventHandler) Update(parent task.Task, oldRoute *route.Route, newRoute *route.Route) {
func (handler *EventHandler) Update(parent *task.Task, oldRoute *route.Route, newRoute *route.Route) {
oldRoute.Finish("route update")
err := handler.provider.startRoute(parent, newRoute)
if err != nil {

View File

@@ -100,7 +100,7 @@ func (p *Provider) MarshalText() ([]byte, error) {
return []byte(p.String()), nil
}
func (p *Provider) startRoute(parent task.Task, r *R.Route) E.Error {
func (p *Provider) startRoute(parent *task.Task, r *R.Route) E.Error {
subtask := parent.Subtask(p.String() + "/" + r.Entry.Alias)
err := r.Start(subtask)
if err != nil {
@@ -115,8 +115,8 @@ func (p *Provider) startRoute(parent task.Task, r *R.Route) E.Error {
return nil
}
// Start implements task.TaskStarter.
func (p *Provider) Start(configSubtask task.Task) E.Error {
// Start implements*task.TaskStarter.
func (p *Provider) Start(configSubtask *task.Task) E.Error {
// routes and event queue will stop on parent cancel
providerTask := configSubtask
@@ -128,7 +128,7 @@ func (p *Provider) Start(configSubtask task.Task) E.Error {
eventQueue := events.NewEventQueue(
providerTask,
providerEventFlushInterval,
func(flushTask task.Task, events []events.Event) {
func(flushTask *task.Task, events []events.Event) {
handler := p.newEventHandler()
// routes' lifetime should follow the provider's lifetime
handler.Handle(providerTask, events)

View File

@@ -24,7 +24,7 @@ type StreamRoute struct {
HealthMon health.HealthMonitor `json:"health"`
task task.Task
task *task.Task
l zerolog.Logger
}
@@ -47,8 +47,8 @@ func (r *StreamRoute) String() string {
return fmt.Sprintf("stream %s", r.Alias)
}
// Start implements task.TaskStarter.
func (r *StreamRoute) Start(providerSubtask task.Task) E.Error {
// Start implements*task.TaskStarter.
func (r *StreamRoute) Start(providerSubtask *task.Task) E.Error {
if entry.ShouldNotServe(r) {
providerSubtask.Finish("should not serve")
return nil