X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=lib%2Fapiv1%2Fapiv1.go;h=cde25261cca2f9ef7b7be477b16f606893a07771;hb=bf2487c4e4c925f437f9e72f09f6ef5099a0c3cb;hp=56c750334ec352bf1f9de08e7ee2b909df904218;hpb=ec7051e1da665206f594c7616ad381bfeaea333a;p=src%2Fxds%2Fxds-server.git diff --git a/lib/apiv1/apiv1.go b/lib/apiv1/apiv1.go index 56c7503..cde2526 100644 --- a/lib/apiv1/apiv1.go +++ b/lib/apiv1/apiv1.go @@ -4,6 +4,8 @@ import ( "github.com/Sirupsen/logrus" "github.com/gin-gonic/gin" + "github.com/iotbzh/xds-server/lib/crosssdk" + "github.com/iotbzh/xds-server/lib/model" "github.com/iotbzh/xds-server/lib/session" "github.com/iotbzh/xds-server/lib/xdsconfig" ) @@ -13,21 +15,26 @@ type APIService struct { router *gin.Engine apiRouter *gin.RouterGroup sessions *session.Sessions - cfg xdsconfig.Config + cfg *xdsconfig.Config + mfolder *model.Folder + sdks *crosssdk.SDKs log *logrus.Logger } // New creates a new instance of API service -func New(sess *session.Sessions, cfg xdsconfig.Config, r *gin.Engine) *APIService { +func New(r *gin.Engine, sess *session.Sessions, cfg *xdsconfig.Config, mfolder *model.Folder, sdks *crosssdk.SDKs) *APIService { s := &APIService{ router: r, sessions: sess, apiRouter: r.Group("/api/v1"), cfg: cfg, + mfolder: mfolder, + sdks: sdks, log: cfg.Log, } s.apiRouter.GET("/version", s.getVersion) + s.apiRouter.GET("/xdsagent/info", s.getXdsAgentInfo) s.apiRouter.GET("/config", s.getConfig) s.apiRouter.POST("/config", s.setConfig) @@ -37,13 +44,15 @@ func New(sess *session.Sessions, cfg xdsconfig.Config, r *gin.Engine) *APIServic s.apiRouter.POST("/folder", s.addFolder) s.apiRouter.DELETE("/folder/:id", s.delFolder) + s.apiRouter.GET("/sdks", s.getSdks) + s.apiRouter.GET("/sdk/:id", s.getSdk) + s.apiRouter.POST("/make", s.buildMake) s.apiRouter.POST("/make/:id", s.buildMake) - /* TODO: to be tested and then enabled s.apiRouter.POST("/exec", s.execCmd) s.apiRouter.POST("/exec/:id", s.execCmd) - */ + s.apiRouter.POST("/signal", s.execSignalCmd) return s }