Files
crawlab/core/apps/interfaces.go
2024-06-14 15:42:50 +08:00

40 lines
583 B
Go

package apps
import (
"github.com/crawlab-team/crawlab/core/interfaces"
"github.com/gin-gonic/gin"
"net/http"
)
type App interface {
Init()
Start()
Wait()
Stop()
}
type ApiApp interface {
App
GetGinEngine() (engine *gin.Engine)
GetHttpServer() (svr *http.Server)
Ready() (ok bool)
}
type NodeApp interface {
App
interfaces.WithConfigPath
}
type ServerApp interface {
NodeApp
GetApi() (api ApiApp)
GetNodeService() (masterSvc interfaces.NodeService)
}
type DockerApp interface {
App
GetParent() (parent NodeApp)
SetParent(parent NodeApp)
Ready() (ok bool)
}