/
mongodb.go
48 lines (42 loc) · 2.1 KB
/
mongodb.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package server
import (
"context"
"github.com/kuzznya/letsdeploy/app/middleware"
"github.com/kuzznya/letsdeploy/internal/openapi"
"github.com/pkg/errors"
)
func (s Server) GetMongoDbUsers(ctx context.Context, request openapi.GetMongoDbUsersRequestObject) (openapi.GetMongoDbUsersResponseObject, error) {
users, err := s.core.MongoDbMgmt.GetMongoDbUsers(ctx, request.Id, middleware.GetAuth(ctx))
if err != nil {
return nil, errors.Wrap(err, "failed to get MongoDB users")
}
return openapi.GetMongoDbUsers200JSONResponse(users), nil
}
func (s Server) CreateMongoDbUser(ctx context.Context, request openapi.CreateMongoDbUserRequestObject) (openapi.CreateMongoDbUserResponseObject, error) {
user, err := s.core.MongoDbMgmt.CreateMongoDbUser(ctx, request.Id, *request.Body, middleware.GetAuth(ctx))
if err != nil {
return nil, errors.Wrap(err, "failed to create MongoDB user")
}
return openapi.CreateMongoDbUser200JSONResponse(user), nil
}
func (s Server) DeleteMongoDbUser(ctx context.Context, request openapi.DeleteMongoDbUserRequestObject) (openapi.DeleteMongoDbUserResponseObject, error) {
err := s.core.MongoDbMgmt.DeleteMongoDbUser(ctx, request.Id, request.Username, middleware.GetAuth(ctx))
if err != nil {
return nil, errors.Wrap(err, "failed to delete MongoDB user")
}
return openapi.DeleteMongoDbUser200Response{}, nil
}
func (s Server) GetMongoDbUser(ctx context.Context, request openapi.GetMongoDbUserRequestObject) (openapi.GetMongoDbUserResponseObject, error) {
user, err := s.core.MongoDbMgmt.GetMongoDbUser(ctx, request.Id, request.Username, middleware.GetAuth(ctx))
if err != nil {
return nil, errors.Wrap(err, "failed to get MongoDB user")
}
return openapi.GetMongoDbUser200JSONResponse(user), nil
}
func (s Server) UpdateMongoDbUser(ctx context.Context, request openapi.UpdateMongoDbUserRequestObject) (openapi.UpdateMongoDbUserResponseObject, error) {
user, err := s.core.MongoDbMgmt.UpdateMongoDbUser(ctx, request.Id, *request.Body, middleware.GetAuth(ctx))
if err != nil {
return nil, errors.Wrap(err, "failed to update MongoDB user")
}
return openapi.UpdateMongoDbUser200JSONResponse(user), nil
}