mirror of
https://github.com/netbirdio/netbird.git
synced 2026-04-16 07:16:38 +00:00
Move router validation to handlers
This commit is contained in:
@@ -105,6 +105,12 @@ func (h *routersHandler) createRouter(w http.ResponseWriter, r *http.Request) {
|
|||||||
router.NetworkID = networkID
|
router.NetworkID = networkID
|
||||||
router.AccountID = accountID
|
router.AccountID = accountID
|
||||||
router.Enabled = true
|
router.Enabled = true
|
||||||
|
|
||||||
|
if err := router.Validate(); err != nil {
|
||||||
|
util.WriteErrorResponse(err.Error(), http.StatusBadRequest, w)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
router, err = h.routersManager.CreateRouter(r.Context(), userID, router)
|
router, err = h.routersManager.CreateRouter(r.Context(), userID, router)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
util.WriteError(r.Context(), err, w)
|
util.WriteError(r.Context(), err, w)
|
||||||
@@ -157,6 +163,11 @@ func (h *routersHandler) updateRouter(w http.ResponseWriter, r *http.Request) {
|
|||||||
router.ID = mux.Vars(r)["routerId"]
|
router.ID = mux.Vars(r)["routerId"]
|
||||||
router.AccountID = accountID
|
router.AccountID = accountID
|
||||||
|
|
||||||
|
if err := router.Validate(); err != nil {
|
||||||
|
util.WriteErrorResponse(err.Error(), http.StatusBadRequest, w)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
router, err = h.routersManager.UpdateRouter(r.Context(), userID, router)
|
router, err = h.routersManager.UpdateRouter(r.Context(), userID, router)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
util.WriteError(r.Context(), err, w)
|
util.WriteError(r.Context(), err, w)
|
||||||
|
|||||||
@@ -80,10 +80,6 @@ func (m *managerImpl) GetAllRoutersInAccount(ctx context.Context, accountID, use
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (m *managerImpl) CreateRouter(ctx context.Context, userID string, router *types.NetworkRouter) (*types.NetworkRouter, error) {
|
func (m *managerImpl) CreateRouter(ctx context.Context, userID string, router *types.NetworkRouter) (*types.NetworkRouter, error) {
|
||||||
if err := router.Validate(); err != nil {
|
|
||||||
return nil, status.Errorf(status.InvalidArgument, "%s", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
ok, err := m.permissionsManager.ValidateUserPermissions(ctx, router.AccountID, userID, modules.Networks, operations.Create)
|
ok, err := m.permissionsManager.ValidateUserPermissions(ctx, router.AccountID, userID, modules.Networks, operations.Create)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, status.NewPermissionValidationError(err)
|
return nil, status.NewPermissionValidationError(err)
|
||||||
@@ -150,10 +146,6 @@ func (m *managerImpl) GetRouter(ctx context.Context, accountID, userID, networkI
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (m *managerImpl) UpdateRouter(ctx context.Context, userID string, router *types.NetworkRouter) (*types.NetworkRouter, error) {
|
func (m *managerImpl) UpdateRouter(ctx context.Context, userID string, router *types.NetworkRouter) (*types.NetworkRouter, error) {
|
||||||
if err := router.Validate(); err != nil {
|
|
||||||
return nil, status.Errorf(status.InvalidArgument, "%s", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
ok, err := m.permissionsManager.ValidateUserPermissions(ctx, router.AccountID, userID, modules.Networks, operations.Update)
|
ok, err := m.permissionsManager.ValidateUserPermissions(ctx, router.AccountID, userID, modules.Networks, operations.Update)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, status.NewPermissionValidationError(err)
|
return nil, status.NewPermissionValidationError(err)
|
||||||
|
|||||||
Reference in New Issue
Block a user