mirror of
https://github.com/andwati/zitadel.git
synced 2026-11-11 08:35:13 +00:00
fix: projects (#221)
* feat: projects and project grants seperated * fix: tests * fix: add mock
This commit is contained in:
@@ -255,7 +255,7 @@ var ManagementService_AuthMethods = utils_auth.MethodMapping{
|
||||
CheckParam: "",
|
||||
},
|
||||
|
||||
"/caos.zitadel.management.api.v1.ManagementService/SearchGrantedProjects": utils_auth.Option{
|
||||
"/caos.zitadel.management.api.v1.ManagementService/SearchProjects": utils_auth.Option{
|
||||
Permission: "project.read",
|
||||
CheckParam: "",
|
||||
},
|
||||
@@ -285,7 +285,12 @@ var ManagementService_AuthMethods = utils_auth.MethodMapping{
|
||||
CheckParam: "Id",
|
||||
},
|
||||
|
||||
"/caos.zitadel.management.api.v1.ManagementService/GetGrantedProjectGrantByID": utils_auth.Option{
|
||||
"/caos.zitadel.management.api.v1.ManagementService/SearchGrantedProjects": utils_auth.Option{
|
||||
Permission: "project.read",
|
||||
CheckParam: "ProjectId",
|
||||
},
|
||||
|
||||
"/caos.zitadel.management.api.v1.ManagementService/GetGrantedProjectByID": utils_auth.Option{
|
||||
Permission: "project.read",
|
||||
CheckParam: "",
|
||||
},
|
||||
|
||||
+3104
-3022
File diff suppressed because it is too large
Load Diff
@@ -1292,8 +1292,8 @@ func request_ManagementService_SearchMyOrgMembers_0(ctx context.Context, marshal
|
||||
|
||||
}
|
||||
|
||||
func request_ManagementService_SearchGrantedProjects_0(ctx context.Context, marshaler runtime.Marshaler, client ManagementServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
|
||||
var protoReq GrantedProjectSearchRequest
|
||||
func request_ManagementService_SearchProjects_0(ctx context.Context, marshaler runtime.Marshaler, client ManagementServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
|
||||
var protoReq ProjectSearchRequest
|
||||
var metadata runtime.ServerMetadata
|
||||
|
||||
newReader, berr := utilities.IOReaderFactory(req.Body)
|
||||
@@ -1304,7 +1304,7 @@ func request_ManagementService_SearchGrantedProjects_0(ctx context.Context, mars
|
||||
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
|
||||
}
|
||||
|
||||
msg, err := client.SearchGrantedProjects(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
|
||||
msg, err := client.SearchProjects(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
|
||||
return msg, metadata, err
|
||||
|
||||
}
|
||||
@@ -1458,7 +1458,24 @@ func request_ManagementService_ReactivateProject_0(ctx context.Context, marshale
|
||||
|
||||
}
|
||||
|
||||
func request_ManagementService_GetGrantedProjectGrantByID_0(ctx context.Context, marshaler runtime.Marshaler, client ManagementServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
|
||||
func request_ManagementService_SearchGrantedProjects_0(ctx context.Context, marshaler runtime.Marshaler, client ManagementServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
|
||||
var protoReq GrantedProjectSearchRequest
|
||||
var metadata runtime.ServerMetadata
|
||||
|
||||
newReader, berr := utilities.IOReaderFactory(req.Body)
|
||||
if berr != nil {
|
||||
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr)
|
||||
}
|
||||
if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF {
|
||||
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
|
||||
}
|
||||
|
||||
msg, err := client.SearchGrantedProjects(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
|
||||
return msg, metadata, err
|
||||
|
||||
}
|
||||
|
||||
func request_ManagementService_GetGrantedProjectByID_0(ctx context.Context, marshaler runtime.Marshaler, client ManagementServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
|
||||
var protoReq ProjectGrantID
|
||||
var metadata runtime.ServerMetadata
|
||||
|
||||
@@ -1491,7 +1508,7 @@ func request_ManagementService_GetGrantedProjectGrantByID_0(ctx context.Context,
|
||||
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "id", err)
|
||||
}
|
||||
|
||||
msg, err := client.GetGrantedProjectGrantByID(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
|
||||
msg, err := client.GetGrantedProjectByID(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
|
||||
return msg, metadata, err
|
||||
|
||||
}
|
||||
@@ -4623,7 +4640,7 @@ func RegisterManagementServiceHandlerClient(ctx context.Context, mux *runtime.Se
|
||||
|
||||
})
|
||||
|
||||
mux.Handle("POST", pattern_ManagementService_SearchGrantedProjects_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
|
||||
mux.Handle("POST", pattern_ManagementService_SearchProjects_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
|
||||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
@@ -4632,14 +4649,14 @@ func RegisterManagementServiceHandlerClient(ctx context.Context, mux *runtime.Se
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_ManagementService_SearchGrantedProjects_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_ManagementService_SearchProjects_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
|
||||
forward_ManagementService_SearchGrantedProjects_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)
|
||||
forward_ManagementService_SearchProjects_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)
|
||||
|
||||
})
|
||||
|
||||
@@ -4743,7 +4760,7 @@ func RegisterManagementServiceHandlerClient(ctx context.Context, mux *runtime.Se
|
||||
|
||||
})
|
||||
|
||||
mux.Handle("GET", pattern_ManagementService_GetGrantedProjectGrantByID_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
|
||||
mux.Handle("POST", pattern_ManagementService_SearchGrantedProjects_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
|
||||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
@@ -4752,14 +4769,34 @@ func RegisterManagementServiceHandlerClient(ctx context.Context, mux *runtime.Se
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_ManagementService_GetGrantedProjectGrantByID_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_ManagementService_SearchGrantedProjects_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
|
||||
forward_ManagementService_GetGrantedProjectGrantByID_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)
|
||||
forward_ManagementService_SearchGrantedProjects_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)
|
||||
|
||||
})
|
||||
|
||||
mux.Handle("GET", pattern_ManagementService_GetGrantedProjectByID_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
|
||||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_ManagementService_GetGrantedProjectByID_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
|
||||
forward_ManagementService_GetGrantedProjectByID_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...)
|
||||
|
||||
})
|
||||
|
||||
@@ -5869,7 +5906,7 @@ var (
|
||||
|
||||
pattern_ManagementService_SearchMyOrgMembers_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"orgs", "me", "members", "_search"}, ""))
|
||||
|
||||
pattern_ManagementService_SearchGrantedProjects_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"grantedprojects", "_search"}, ""))
|
||||
pattern_ManagementService_SearchProjects_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"projects", "_search"}, ""))
|
||||
|
||||
pattern_ManagementService_ProjectByID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 1, 0, 4, 1, 5, 1}, []string{"projects", "id"}, ""))
|
||||
|
||||
@@ -5881,7 +5918,9 @@ var (
|
||||
|
||||
pattern_ManagementService_ReactivateProject_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 1, 0, 4, 1, 5, 1, 2, 2}, []string{"projects", "id", "_reactivate"}, ""))
|
||||
|
||||
pattern_ManagementService_GetGrantedProjectGrantByID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 1, 0, 4, 1, 5, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"grantedprojects", "project_id", "grants", "id"}, ""))
|
||||
pattern_ManagementService_SearchGrantedProjects_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"grantedprojects", "_search"}, ""))
|
||||
|
||||
pattern_ManagementService_GetGrantedProjectByID_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 1, 0, 4, 1, 5, 1, 2, 2, 1, 0, 4, 1, 5, 3}, []string{"grantedprojects", "project_id", "grants", "id"}, ""))
|
||||
|
||||
pattern_ManagementService_GetProjectMemberRoles_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"projects", "members", "roles"}, ""))
|
||||
|
||||
@@ -6087,7 +6126,7 @@ var (
|
||||
|
||||
forward_ManagementService_SearchMyOrgMembers_0 = runtime.ForwardResponseMessage
|
||||
|
||||
forward_ManagementService_SearchGrantedProjects_0 = runtime.ForwardResponseMessage
|
||||
forward_ManagementService_SearchProjects_0 = runtime.ForwardResponseMessage
|
||||
|
||||
forward_ManagementService_ProjectByID_0 = runtime.ForwardResponseMessage
|
||||
|
||||
@@ -6099,7 +6138,9 @@ var (
|
||||
|
||||
forward_ManagementService_ReactivateProject_0 = runtime.ForwardResponseMessage
|
||||
|
||||
forward_ManagementService_GetGrantedProjectGrantByID_0 = runtime.ForwardResponseMessage
|
||||
forward_ManagementService_SearchGrantedProjects_0 = runtime.ForwardResponseMessage
|
||||
|
||||
forward_ManagementService_GetGrantedProjectByID_0 = runtime.ForwardResponseMessage
|
||||
|
||||
forward_ManagementService_GetProjectMemberRoles_0 = runtime.ForwardResponseMessage
|
||||
|
||||
|
||||
@@ -134,13 +134,13 @@
|
||||
},
|
||||
"/grantedprojects/_search": {
|
||||
"post": {
|
||||
"summary": "PROJECTS",
|
||||
"summary": "GRANTED_PROJECT_GRANTS",
|
||||
"operationId": "SearchGrantedProjects",
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/v1GrantedProjectSearchResponse"
|
||||
"$ref": "#/definitions/v1ProjectGrantSearchResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -161,13 +161,12 @@
|
||||
},
|
||||
"/grantedprojects/{project_id}/grants/{id}": {
|
||||
"get": {
|
||||
"summary": "GRANTED_PROJECT_GRANTS",
|
||||
"operationId": "GetGrantedProjectGrantByID",
|
||||
"operationId": "GetGrantedProjectByID",
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/v1GrantedProject"
|
||||
"$ref": "#/definitions/v1ProjectGrantView"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -981,6 +980,33 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"/projects/_search": {
|
||||
"post": {
|
||||
"summary": "PROJECTS",
|
||||
"operationId": "SearchProjects",
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/v1ProjectSearchResponse"
|
||||
}
|
||||
}
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
"name": "body",
|
||||
"in": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"$ref": "#/definitions/v1ProjectSearchRequest"
|
||||
}
|
||||
}
|
||||
],
|
||||
"tags": [
|
||||
"ManagementService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/projects/grants/members/roles": {
|
||||
"get": {
|
||||
"summary": "PROJECT_GRANT_MEMBER",
|
||||
@@ -3765,72 +3791,6 @@
|
||||
],
|
||||
"default": "GENDER_UNSPECIFIED"
|
||||
},
|
||||
"v1GrantedProject": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"state": {
|
||||
"$ref": "#/definitions/v1ProjectState"
|
||||
},
|
||||
"change_date": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
},
|
||||
"creation_date": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
},
|
||||
"type": {
|
||||
"$ref": "#/definitions/v1ProjectType"
|
||||
},
|
||||
"resource_owner": {
|
||||
"type": "string"
|
||||
},
|
||||
"org_id": {
|
||||
"type": "string"
|
||||
},
|
||||
"org_name": {
|
||||
"type": "string"
|
||||
},
|
||||
"org_domain": {
|
||||
"type": "string"
|
||||
},
|
||||
"grant_id": {
|
||||
"type": "string"
|
||||
},
|
||||
"sequence": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1GrantedProjectSearchKey": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PROJECTSEARCHKEY_UNSPECIFIED",
|
||||
"PROJECTSEARCHKEY_PROJECT_NAME"
|
||||
],
|
||||
"default": "PROJECTSEARCHKEY_UNSPECIFIED"
|
||||
},
|
||||
"v1GrantedProjectSearchQuery": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"key": {
|
||||
"$ref": "#/definitions/v1GrantedProjectSearchKey"
|
||||
},
|
||||
"method": {
|
||||
"$ref": "#/definitions/v1SearchMethod"
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1GrantedProjectSearchRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -3845,30 +3805,7 @@
|
||||
"queries": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1GrantedProjectSearchQuery"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1GrantedProjectSearchResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"offset": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"limit": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"total_result": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"result": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1GrantedProject"
|
||||
"$ref": "#/definitions/v1ProjectSearchQuery"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5363,6 +5300,70 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1ProjectSearchKey": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PROJECTSEARCHKEY_UNSPECIFIED",
|
||||
"PROJECTSEARCHKEY_PROJECT_NAME"
|
||||
],
|
||||
"default": "PROJECTSEARCHKEY_UNSPECIFIED"
|
||||
},
|
||||
"v1ProjectSearchQuery": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"key": {
|
||||
"$ref": "#/definitions/v1ProjectSearchKey"
|
||||
},
|
||||
"method": {
|
||||
"$ref": "#/definitions/v1SearchMethod"
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1ProjectSearchRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"offset": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"limit": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"queries": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1ProjectSearchQuery"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1ProjectSearchResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"offset": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"limit": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"total_result": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
},
|
||||
"result": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1ProjectView"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1ProjectState": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
@@ -5372,15 +5373,6 @@
|
||||
],
|
||||
"default": "PROJECTSTATE_UNSPECIFIED"
|
||||
},
|
||||
"v1ProjectType": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"PROJECTTYPE_UNSPECIFIED",
|
||||
"PROJECTTYPE_OWNED",
|
||||
"PROJECTTYPE_GRANTED"
|
||||
],
|
||||
"default": "PROJECTTYPE_UNSPECIFIED"
|
||||
},
|
||||
"v1ProjectUpdateRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -5448,6 +5440,35 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1ProjectView": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"project_id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"state": {
|
||||
"$ref": "#/definitions/v1ProjectState"
|
||||
},
|
||||
"change_date": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
},
|
||||
"creation_date": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
},
|
||||
"resource_owner": {
|
||||
"type": "string"
|
||||
},
|
||||
"sequence": {
|
||||
"type": "string",
|
||||
"format": "uint64"
|
||||
}
|
||||
}
|
||||
},
|
||||
"v1SearchMethod": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
|
||||
@@ -37,24 +37,24 @@ func (m *MockManagementServiceClient) EXPECT() *MockManagementServiceClientMockR
|
||||
return m.recorder
|
||||
}
|
||||
|
||||
// AddOrgMember mocks base method
|
||||
func (m *MockManagementServiceClient) AddOrgMember(arg0 context.Context, arg1 *grpc.AddOrgMemberRequest, arg2 ...grpc0.CallOption) (*grpc.OrgMember, error) {
|
||||
// AddMyOrgMember mocks base method
|
||||
func (m *MockManagementServiceClient) AddMyOrgMember(arg0 context.Context, arg1 *grpc.AddOrgMemberRequest, arg2 ...grpc0.CallOption) (*grpc.OrgMember, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "AddOrgMember", varargs...)
|
||||
ret := m.ctrl.Call(m, "AddMyOrgMember", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.OrgMember)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// AddOrgMember indicates an expected call of AddOrgMember
|
||||
func (mr *MockManagementServiceClientMockRecorder) AddOrgMember(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
// AddMyOrgMember indicates an expected call of AddMyOrgMember
|
||||
func (mr *MockManagementServiceClientMockRecorder) AddMyOrgMember(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1}, arg2...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddOrgMember", reflect.TypeOf((*MockManagementServiceClient)(nil).AddOrgMember), varargs...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddMyOrgMember", reflect.TypeOf((*MockManagementServiceClient)(nil).AddMyOrgMember), varargs...)
|
||||
}
|
||||
|
||||
// AddProjectGrantMember mocks base method
|
||||
@@ -157,24 +157,24 @@ func (mr *MockManagementServiceClientMockRecorder) ApplicationChanges(arg0, arg1
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ApplicationChanges", reflect.TypeOf((*MockManagementServiceClient)(nil).ApplicationChanges), varargs...)
|
||||
}
|
||||
|
||||
// ChangeOrgMember mocks base method
|
||||
func (m *MockManagementServiceClient) ChangeOrgMember(arg0 context.Context, arg1 *grpc.ChangeOrgMemberRequest, arg2 ...grpc0.CallOption) (*grpc.OrgMember, error) {
|
||||
// ChangeMyOrgMember mocks base method
|
||||
func (m *MockManagementServiceClient) ChangeMyOrgMember(arg0 context.Context, arg1 *grpc.ChangeOrgMemberRequest, arg2 ...grpc0.CallOption) (*grpc.OrgMember, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "ChangeOrgMember", varargs...)
|
||||
ret := m.ctrl.Call(m, "ChangeMyOrgMember", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.OrgMember)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// ChangeOrgMember indicates an expected call of ChangeOrgMember
|
||||
func (mr *MockManagementServiceClientMockRecorder) ChangeOrgMember(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
// ChangeMyOrgMember indicates an expected call of ChangeMyOrgMember
|
||||
func (mr *MockManagementServiceClientMockRecorder) ChangeMyOrgMember(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1}, arg2...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ChangeOrgMember", reflect.TypeOf((*MockManagementServiceClient)(nil).ChangeOrgMember), varargs...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ChangeMyOrgMember", reflect.TypeOf((*MockManagementServiceClient)(nil).ChangeMyOrgMember), varargs...)
|
||||
}
|
||||
|
||||
// ChangeProjectGrantMember mocks base method
|
||||
@@ -717,24 +717,24 @@ func (mr *MockManagementServiceClientMockRecorder) DeleteUser(arg0, arg1 interfa
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteUser", reflect.TypeOf((*MockManagementServiceClient)(nil).DeleteUser), varargs...)
|
||||
}
|
||||
|
||||
// GetGrantedProjectGrantByID mocks base method
|
||||
func (m *MockManagementServiceClient) GetGrantedProjectGrantByID(arg0 context.Context, arg1 *grpc.ProjectGrantID, arg2 ...grpc0.CallOption) (*grpc.ProjectGrant, error) {
|
||||
// GetGrantedProjectByID mocks base method
|
||||
func (m *MockManagementServiceClient) GetGrantedProjectByID(arg0 context.Context, arg1 *grpc.ProjectGrantID, arg2 ...grpc0.CallOption) (*grpc.ProjectGrantView, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "GetGrantedProjectGrantByID", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.ProjectGrant)
|
||||
ret := m.ctrl.Call(m, "GetGrantedProjectByID", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.ProjectGrantView)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// GetGrantedProjectGrantByID indicates an expected call of GetGrantedProjectGrantByID
|
||||
func (mr *MockManagementServiceClientMockRecorder) GetGrantedProjectGrantByID(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
// GetGrantedProjectByID indicates an expected call of GetGrantedProjectByID
|
||||
func (mr *MockManagementServiceClientMockRecorder) GetGrantedProjectByID(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1}, arg2...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetGrantedProjectGrantByID", reflect.TypeOf((*MockManagementServiceClient)(nil).GetGrantedProjectGrantByID), varargs...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetGrantedProjectByID", reflect.TypeOf((*MockManagementServiceClient)(nil).GetGrantedProjectByID), varargs...)
|
||||
}
|
||||
|
||||
// GetOrgByDomainGlobal mocks base method
|
||||
@@ -1437,24 +1437,24 @@ func (mr *MockManagementServiceClientMockRecorder) RemoveApplication(arg0, arg1
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveApplication", reflect.TypeOf((*MockManagementServiceClient)(nil).RemoveApplication), varargs...)
|
||||
}
|
||||
|
||||
// RemoveOrgMember mocks base method
|
||||
func (m *MockManagementServiceClient) RemoveOrgMember(arg0 context.Context, arg1 *grpc.RemoveOrgMemberRequest, arg2 ...grpc0.CallOption) (*emptypb.Empty, error) {
|
||||
// RemoveMyOrgMember mocks base method
|
||||
func (m *MockManagementServiceClient) RemoveMyOrgMember(arg0 context.Context, arg1 *grpc.RemoveOrgMemberRequest, arg2 ...grpc0.CallOption) (*emptypb.Empty, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "RemoveOrgMember", varargs...)
|
||||
ret := m.ctrl.Call(m, "RemoveMyOrgMember", varargs...)
|
||||
ret0, _ := ret[0].(*emptypb.Empty)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// RemoveOrgMember indicates an expected call of RemoveOrgMember
|
||||
func (mr *MockManagementServiceClientMockRecorder) RemoveOrgMember(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
// RemoveMyOrgMember indicates an expected call of RemoveMyOrgMember
|
||||
func (mr *MockManagementServiceClientMockRecorder) RemoveMyOrgMember(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1}, arg2...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveOrgMember", reflect.TypeOf((*MockManagementServiceClient)(nil).RemoveOrgMember), varargs...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveMyOrgMember", reflect.TypeOf((*MockManagementServiceClient)(nil).RemoveMyOrgMember), varargs...)
|
||||
}
|
||||
|
||||
// RemoveProjectGrant mocks base method
|
||||
@@ -1638,14 +1638,14 @@ func (mr *MockManagementServiceClientMockRecorder) SearchAuthGrant(arg0, arg1 in
|
||||
}
|
||||
|
||||
// SearchGrantedProjects mocks base method
|
||||
func (m *MockManagementServiceClient) SearchGrantedProjects(arg0 context.Context, arg1 *grpc.GrantedProjectSearchRequest, arg2 ...grpc0.CallOption) (*grpc.GrantedProjectSearchResponse, error) {
|
||||
func (m *MockManagementServiceClient) SearchGrantedProjects(arg0 context.Context, arg1 *grpc.GrantedProjectSearchRequest, arg2 ...grpc0.CallOption) (*grpc.ProjectGrantSearchResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "SearchGrantedProjects", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.GrantedProjectSearchResponse)
|
||||
ret0, _ := ret[0].(*grpc.ProjectGrantSearchResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
@@ -1657,24 +1657,24 @@ func (mr *MockManagementServiceClientMockRecorder) SearchGrantedProjects(arg0, a
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchGrantedProjects", reflect.TypeOf((*MockManagementServiceClient)(nil).SearchGrantedProjects), varargs...)
|
||||
}
|
||||
|
||||
// SearchOrgMembers mocks base method
|
||||
func (m *MockManagementServiceClient) SearchOrgMembers(arg0 context.Context, arg1 *grpc.OrgMemberSearchRequest, arg2 ...grpc0.CallOption) (*grpc.OrgMemberSearchResponse, error) {
|
||||
// SearchMyOrgMembers mocks base method
|
||||
func (m *MockManagementServiceClient) SearchMyOrgMembers(arg0 context.Context, arg1 *grpc.OrgMemberSearchRequest, arg2 ...grpc0.CallOption) (*grpc.OrgMemberSearchResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "SearchOrgMembers", varargs...)
|
||||
ret := m.ctrl.Call(m, "SearchMyOrgMembers", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.OrgMemberSearchResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// SearchOrgMembers indicates an expected call of SearchOrgMembers
|
||||
func (mr *MockManagementServiceClientMockRecorder) SearchOrgMembers(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
// SearchMyOrgMembers indicates an expected call of SearchMyOrgMembers
|
||||
func (mr *MockManagementServiceClientMockRecorder) SearchMyOrgMembers(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1}, arg2...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchOrgMembers", reflect.TypeOf((*MockManagementServiceClient)(nil).SearchOrgMembers), varargs...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchMyOrgMembers", reflect.TypeOf((*MockManagementServiceClient)(nil).SearchMyOrgMembers), varargs...)
|
||||
}
|
||||
|
||||
// SearchProjectGrantMembers mocks base method
|
||||
@@ -1797,6 +1797,26 @@ func (mr *MockManagementServiceClientMockRecorder) SearchProjectUserGrants(arg0,
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchProjectUserGrants", reflect.TypeOf((*MockManagementServiceClient)(nil).SearchProjectUserGrants), varargs...)
|
||||
}
|
||||
|
||||
// SearchProjects mocks base method
|
||||
func (m *MockManagementServiceClient) SearchProjects(arg0 context.Context, arg1 *grpc.ProjectSearchRequest, arg2 ...grpc0.CallOption) (*grpc.ProjectSearchResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []interface{}{arg0, arg1}
|
||||
for _, a := range arg2 {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "SearchProjects", varargs...)
|
||||
ret0, _ := ret[0].(*grpc.ProjectSearchResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// SearchProjects indicates an expected call of SearchProjects
|
||||
func (mr *MockManagementServiceClientMockRecorder) SearchProjects(arg0, arg1 interface{}, arg2 ...interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]interface{}{arg0, arg1}, arg2...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SearchProjects", reflect.TypeOf((*MockManagementServiceClient)(nil).SearchProjects), varargs...)
|
||||
}
|
||||
|
||||
// SearchUserGrants mocks base method
|
||||
func (m *MockManagementServiceClient) SearchUserGrants(arg0 context.Context, arg1 *grpc.UserGrantSearchRequest, arg2 ...grpc0.CallOption) (*grpc.UserGrantSearchResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
|
||||
@@ -47,15 +47,14 @@ func (s *Server) ReactivateProject(ctx context.Context, in *ProjectID) (*Project
|
||||
return projectFromModel(project), nil
|
||||
}
|
||||
|
||||
func (s *Server) SearchGrantedProjects(ctx context.Context, in *GrantedProjectSearchRequest) (*GrantedProjectSearchResponse, error) {
|
||||
request := grantedProjectSearchRequestsToModel(in)
|
||||
orgID := grpc_util.GetHeader(ctx, api.ZitadelOrgID)
|
||||
request.AppendMyOrgQuery(orgID)
|
||||
response, err := s.project.SearchGrantedProjects(ctx, request)
|
||||
func (s *Server) SearchProjects(ctx context.Context, in *ProjectSearchRequest) (*ProjectSearchResponse, error) {
|
||||
request := projectSearchRequestsToModel(in)
|
||||
request.AppendMyResourceOwnerQuery(grpc_util.GetHeader(ctx, api.ZitadelOrgID))
|
||||
response, err := s.project.SearchProjects(ctx, request)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return grantedProjectSearchResponseFromModel(response), nil
|
||||
return projectSearchResponseFromModel(response), nil
|
||||
}
|
||||
|
||||
func (s *Server) ProjectByID(ctx context.Context, id *ProjectID) (*Project, error) {
|
||||
@@ -66,12 +65,22 @@ func (s *Server) ProjectByID(ctx context.Context, id *ProjectID) (*Project, erro
|
||||
return projectFromModel(project), nil
|
||||
}
|
||||
|
||||
func (s *Server) GetGrantedProjectGrantByID(ctx context.Context, in *ProjectGrantID) (*GrantedProject, error) {
|
||||
project, err := s.project.GetGrantedProjectGrantByIDs(ctx, in.ProjectId, in.Id)
|
||||
func (s *Server) SearchGrantedProjects(ctx context.Context, in *GrantedProjectSearchRequest) (*ProjectGrantSearchResponse, error) {
|
||||
request := grantedProjectSearchRequestsToModel(in)
|
||||
request.AppendMyOrgQuery(grpc_util.GetHeader(ctx, api.ZitadelOrgID))
|
||||
response, err := s.project.SearchProjectGrants(ctx, request)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return grantedProjectFromModel(project), nil
|
||||
return projectGrantSearchResponseFromModel(response), nil
|
||||
}
|
||||
|
||||
func (s *Server) GetGrantedProjectByID(ctx context.Context, in *ProjectGrantID) (*ProjectGrantView, error) {
|
||||
project, err := s.project.ProjectGrantViewByID(ctx, in.Id)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return projectGrantFromGrantedProjectModel(project), nil
|
||||
}
|
||||
|
||||
func (s *Server) AddProjectRole(ctx context.Context, in *ProjectRoleAdd) (*ProjectRole, error) {
|
||||
|
||||
@@ -24,43 +24,38 @@ func projectFromModel(project *proj_model.Project) *Project {
|
||||
}
|
||||
}
|
||||
|
||||
func grantedProjectSearchResponseFromModel(response *proj_model.GrantedProjectSearchResponse) *GrantedProjectSearchResponse {
|
||||
return &GrantedProjectSearchResponse{
|
||||
func projectSearchResponseFromModel(response *proj_model.ProjectViewSearchResponse) *ProjectSearchResponse {
|
||||
return &ProjectSearchResponse{
|
||||
Offset: response.Offset,
|
||||
Limit: response.Limit,
|
||||
TotalResult: response.TotalResult,
|
||||
Result: grantedProjectsFromModel(response.Result),
|
||||
Result: projectViewsFromModel(response.Result),
|
||||
}
|
||||
}
|
||||
|
||||
func grantedProjectsFromModel(projects []*proj_model.GrantedProjectView) []*GrantedProject {
|
||||
converted := make([]*GrantedProject, len(projects))
|
||||
func projectViewsFromModel(projects []*proj_model.ProjectView) []*ProjectView {
|
||||
converted := make([]*ProjectView, len(projects))
|
||||
for i, project := range projects {
|
||||
converted[i] = grantedProjectFromModel(project)
|
||||
converted[i] = projectViewFromModel(project)
|
||||
}
|
||||
return converted
|
||||
}
|
||||
|
||||
func grantedProjectFromModel(project *proj_model.GrantedProjectView) *GrantedProject {
|
||||
func projectViewFromModel(project *proj_model.ProjectView) *ProjectView {
|
||||
creationDate, err := ptypes.TimestampProto(project.CreationDate)
|
||||
logging.Log("GRPC-dlso3").OnError(err).Debug("unable to parse timestamp")
|
||||
|
||||
changeDate, err := ptypes.TimestampProto(project.ChangeDate)
|
||||
logging.Log("GRPC-sope3").OnError(err).Debug("unable to parse timestamp")
|
||||
|
||||
return &GrantedProject{
|
||||
Id: project.ProjectID,
|
||||
return &ProjectView{
|
||||
ProjectId: project.ProjectID,
|
||||
State: projectStateFromModel(project.State),
|
||||
CreationDate: creationDate,
|
||||
ChangeDate: changeDate,
|
||||
Name: project.Name,
|
||||
Sequence: project.Sequence,
|
||||
ResourceOwner: project.ResourceOwner,
|
||||
OrgId: project.OrgID,
|
||||
OrgName: project.OrgName,
|
||||
OrgDomain: project.OrgDomain,
|
||||
GrantId: project.GrantID,
|
||||
Type: projectTypeFromModel(project.Type),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,17 +101,6 @@ func projectStateFromModel(state proj_model.ProjectState) ProjectState {
|
||||
}
|
||||
}
|
||||
|
||||
func projectTypeFromModel(projecttype proj_model.ProjectType) ProjectType {
|
||||
switch projecttype {
|
||||
case proj_model.PROJECTTYPE_OWNED:
|
||||
return ProjectType_PROJECTTYPE_OWNED
|
||||
case proj_model.PROJECTTYPE_GRANTED:
|
||||
return ProjectType_PROJECTTYPE_GRANTED
|
||||
default:
|
||||
return ProjectType_PROJECTTYPE_UNSPECIFIED
|
||||
}
|
||||
}
|
||||
|
||||
func projectUpdateToModel(project *ProjectUpdateRequest) *proj_model.Project {
|
||||
return &proj_model.Project{
|
||||
ObjectRoot: models.ObjectRoot{
|
||||
@@ -165,33 +149,65 @@ func projectRoleChangeToModel(role *ProjectRoleChange) *proj_model.ProjectRole {
|
||||
}
|
||||
}
|
||||
|
||||
func grantedProjectSearchRequestsToModel(project *GrantedProjectSearchRequest) *proj_model.GrantedProjectSearchRequest {
|
||||
return &proj_model.GrantedProjectSearchRequest{
|
||||
func projectSearchRequestsToModel(project *ProjectSearchRequest) *proj_model.ProjectViewSearchRequest {
|
||||
return &proj_model.ProjectViewSearchRequest{
|
||||
Offset: project.Offset,
|
||||
Limit: project.Limit,
|
||||
Queries: grantedProjectSearchQueriesToModel(project.Queries),
|
||||
Queries: projectSearchQueriesToModel(project.Queries),
|
||||
}
|
||||
}
|
||||
func grantedProjectSearchRequestsToModel(request *GrantedProjectSearchRequest) *proj_model.ProjectGrantViewSearchRequest {
|
||||
return &proj_model.ProjectGrantViewSearchRequest{
|
||||
Offset: request.Offset,
|
||||
Limit: request.Limit,
|
||||
Queries: grantedPRojectSearchQueriesToModel(request.Queries),
|
||||
}
|
||||
}
|
||||
|
||||
func grantedProjectSearchQueriesToModel(queries []*GrantedProjectSearchQuery) []*proj_model.GrantedProjectSearchQuery {
|
||||
converted := make([]*proj_model.GrantedProjectSearchQuery, len(queries))
|
||||
func projectSearchQueriesToModel(queries []*ProjectSearchQuery) []*proj_model.ProjectViewSearchQuery {
|
||||
converted := make([]*proj_model.ProjectViewSearchQuery, len(queries))
|
||||
for i, q := range queries {
|
||||
converted[i] = grantedProjectSearchQueryToModel(q)
|
||||
converted[i] = projectSearchQueryToModel(q)
|
||||
}
|
||||
return converted
|
||||
}
|
||||
|
||||
func grantedProjectSearchQueryToModel(query *GrantedProjectSearchQuery) *proj_model.GrantedProjectSearchQuery {
|
||||
return &proj_model.GrantedProjectSearchQuery{
|
||||
func projectSearchQueryToModel(query *ProjectSearchQuery) *proj_model.ProjectViewSearchQuery {
|
||||
return &proj_model.ProjectViewSearchQuery{
|
||||
Key: projectSearchKeyToModel(query.Key),
|
||||
Method: searchMethodToModel(query.Method),
|
||||
Value: query.Value,
|
||||
}
|
||||
}
|
||||
|
||||
func projectSearchKeyToModel(key GrantedProjectSearchKey) proj_model.GrantedProjectSearchKey {
|
||||
func projectSearchKeyToModel(key ProjectSearchKey) proj_model.ProjectViewSearchKey {
|
||||
switch key {
|
||||
case GrantedProjectSearchKey_PROJECTSEARCHKEY_PROJECT_NAME:
|
||||
case ProjectSearchKey_PROJECTSEARCHKEY_PROJECT_NAME:
|
||||
return proj_model.PROJECTSEARCHKEY_NAME
|
||||
default:
|
||||
return proj_model.PROJECTSEARCHKEY_UNSPECIFIED
|
||||
}
|
||||
}
|
||||
|
||||
func grantedPRojectSearchQueriesToModel(queries []*ProjectSearchQuery) []*proj_model.ProjectGrantViewSearchQuery {
|
||||
converted := make([]*proj_model.ProjectGrantViewSearchQuery, len(queries))
|
||||
for i, q := range queries {
|
||||
converted[i] = grantedProjectSearchQueryToModel(q)
|
||||
}
|
||||
return converted
|
||||
}
|
||||
|
||||
func grantedProjectSearchQueryToModel(query *ProjectSearchQuery) *proj_model.ProjectGrantViewSearchQuery {
|
||||
return &proj_model.ProjectGrantViewSearchQuery{
|
||||
Key: projectGrantSearchKeyToModel(query.Key),
|
||||
Method: searchMethodToModel(query.Method),
|
||||
Value: query.Value,
|
||||
}
|
||||
}
|
||||
|
||||
func projectGrantSearchKeyToModel(key ProjectSearchKey) proj_model.ProjectGrantViewSearchKey {
|
||||
switch key {
|
||||
case ProjectSearchKey_PROJECTSEARCHKEY_PROJECT_NAME:
|
||||
return proj_model.GRANTEDPROJECTSEARCHKEY_NAME
|
||||
default:
|
||||
return proj_model.GRANTEDPROJECTSEARCHKEY_UNSPECIFIED
|
||||
|
||||
@@ -13,7 +13,7 @@ func (s *Server) SearchProjectGrants(ctx context.Context, in *ProjectGrantSearch
|
||||
orgID := grpc_util.GetHeader(ctx, api.ZitadelOrgID)
|
||||
request.AppendMyResourceOwnerQuery(orgID)
|
||||
request.AppendNotMyOrgQuery(orgID)
|
||||
response, err := s.project.SearchGrantedProjects(ctx, request)
|
||||
response, err := s.project.SearchProjectGrants(ctx, request)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -47,24 +47,24 @@ func projectGrantUpdateToModel(grant *ProjectGrantUpdate) *proj_model.ProjectGra
|
||||
}
|
||||
}
|
||||
|
||||
func projectGrantSearchRequestsToModel(request *ProjectGrantSearchRequest) *proj_model.GrantedProjectSearchRequest {
|
||||
return &proj_model.GrantedProjectSearchRequest{
|
||||
func projectGrantSearchRequestsToModel(request *ProjectGrantSearchRequest) *proj_model.ProjectGrantViewSearchRequest {
|
||||
return &proj_model.ProjectGrantViewSearchRequest{
|
||||
Offset: request.Offset,
|
||||
Limit: request.Limit,
|
||||
Queries: projectGrantSearchQueriesToModel(request.ProjectId),
|
||||
}
|
||||
}
|
||||
|
||||
func projectGrantSearchQueriesToModel(projectId string) []*proj_model.GrantedProjectSearchQuery {
|
||||
converted := make([]*proj_model.GrantedProjectSearchQuery, 0)
|
||||
return append(converted, &proj_model.GrantedProjectSearchQuery{
|
||||
func projectGrantSearchQueriesToModel(projectId string) []*proj_model.ProjectGrantViewSearchQuery {
|
||||
converted := make([]*proj_model.ProjectGrantViewSearchQuery, 0)
|
||||
return append(converted, &proj_model.ProjectGrantViewSearchQuery{
|
||||
Key: proj_model.GRANTEDPROJECTSEARCHKEY_PROJECTID,
|
||||
Method: model.SEARCHMETHOD_EQUALS,
|
||||
Value: projectId,
|
||||
})
|
||||
}
|
||||
|
||||
func projectGrantSearchResponseFromModel(response *proj_model.GrantedProjectSearchResponse) *ProjectGrantSearchResponse {
|
||||
func projectGrantSearchResponseFromModel(response *proj_model.ProjectGrantViewSearchResponse) *ProjectGrantSearchResponse {
|
||||
return &ProjectGrantSearchResponse{
|
||||
Offset: response.Offset,
|
||||
Limit: response.Limit,
|
||||
@@ -73,7 +73,7 @@ func projectGrantSearchResponseFromModel(response *proj_model.GrantedProjectSear
|
||||
}
|
||||
}
|
||||
|
||||
func projectGrantsFromGrantedProjectModel(projects []*proj_model.GrantedProjectView) []*ProjectGrantView {
|
||||
func projectGrantsFromGrantedProjectModel(projects []*proj_model.ProjectGrantView) []*ProjectGrantView {
|
||||
converted := make([]*ProjectGrantView, len(projects))
|
||||
for i, project := range projects {
|
||||
converted[i] = projectGrantFromGrantedProjectModel(project)
|
||||
@@ -81,7 +81,7 @@ func projectGrantsFromGrantedProjectModel(projects []*proj_model.GrantedProjectV
|
||||
return converted
|
||||
}
|
||||
|
||||
func projectGrantFromGrantedProjectModel(project *proj_model.GrantedProjectView) *ProjectGrantView {
|
||||
func projectGrantFromGrantedProjectModel(project *proj_model.ProjectGrantView) *ProjectGrantView {
|
||||
creationDate, err := ptypes.TimestampProto(project.CreationDate)
|
||||
logging.Log("GRPC-dlso3").OnError(err).Debug("unable to parse timestamp")
|
||||
|
||||
|
||||
@@ -571,9 +571,9 @@ service ManagementService {
|
||||
}
|
||||
|
||||
//PROJECTS
|
||||
rpc SearchGrantedProjects(GrantedProjectSearchRequest) returns (GrantedProjectSearchResponse) {
|
||||
rpc SearchProjects(ProjectSearchRequest) returns (ProjectSearchResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/grantedprojects/_search"
|
||||
post: "/projects/_search"
|
||||
body: "*"
|
||||
};
|
||||
|
||||
@@ -641,7 +641,19 @@ service ManagementService {
|
||||
}
|
||||
|
||||
//GRANTED_PROJECT_GRANTS
|
||||
rpc GetGrantedProjectGrantByID(ProjectGrantID) returns (GrantedProject) {
|
||||
rpc SearchGrantedProjects(GrantedProjectSearchRequest) returns (ProjectGrantSearchResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/grantedprojects/_search"
|
||||
body: "*"
|
||||
};
|
||||
|
||||
option (caos.zitadel.utils.v1.auth_option) = {
|
||||
permission: "project.read"
|
||||
check_field_name: "ProjectId"
|
||||
};
|
||||
}
|
||||
|
||||
rpc GetGrantedProjectByID(ProjectGrantID) returns (ProjectGrantView) {
|
||||
option (google.api.http) = {
|
||||
get: "/grantedprojects/{project_id}/grants/{id}"
|
||||
};
|
||||
@@ -1718,6 +1730,41 @@ message ProjectUpdateRequest {
|
||||
string name = 2 [(validate.rules).string = {min_len: 1, max_len: 200}];
|
||||
}
|
||||
|
||||
message ProjectSearchResponse {
|
||||
uint64 offset = 1;
|
||||
uint64 limit = 2;
|
||||
uint64 total_result = 3;
|
||||
repeated ProjectView result = 4;
|
||||
}
|
||||
|
||||
message ProjectView {
|
||||
string project_id = 1;
|
||||
string name = 2;
|
||||
ProjectState state = 3;
|
||||
google.protobuf.Timestamp change_date = 4;
|
||||
google.protobuf.Timestamp creation_date = 5;
|
||||
string resource_owner = 6;
|
||||
uint64 sequence = 7;
|
||||
}
|
||||
|
||||
|
||||
message ProjectSearchRequest {
|
||||
uint64 offset = 1;
|
||||
uint64 limit = 2;
|
||||
repeated ProjectSearchQuery queries = 3;
|
||||
}
|
||||
|
||||
message ProjectSearchQuery {
|
||||
ProjectSearchKey key = 1 [(validate.rules).enum = {not_in: [0]}];
|
||||
SearchMethod method = 2;
|
||||
string value = 3;
|
||||
}
|
||||
|
||||
enum ProjectSearchKey {
|
||||
PROJECTSEARCHKEY_UNSPECIFIED = 0;
|
||||
PROJECTSEARCHKEY_PROJECT_NAME = 1;
|
||||
}
|
||||
|
||||
message Projects {
|
||||
repeated Project projects = 1;
|
||||
}
|
||||
@@ -1743,45 +1790,6 @@ enum ProjectType {
|
||||
PROJECTTYPE_GRANTED = 2;
|
||||
}
|
||||
|
||||
message GrantedProjectSearchResponse {
|
||||
uint64 offset = 1;
|
||||
uint64 limit = 2;
|
||||
uint64 total_result = 3;
|
||||
repeated GrantedProject result = 4;
|
||||
}
|
||||
|
||||
message GrantedProject {
|
||||
string id = 1;
|
||||
string name = 2;
|
||||
ProjectState state = 3;
|
||||
google.protobuf.Timestamp change_date = 4;
|
||||
google.protobuf.Timestamp creation_date = 5;
|
||||
ProjectType type = 6;
|
||||
string resource_owner = 7;
|
||||
string org_id = 8;
|
||||
string org_name = 9;
|
||||
string org_domain = 10;
|
||||
string grant_id = 11;
|
||||
uint64 sequence = 12;
|
||||
}
|
||||
|
||||
message GrantedProjectSearchRequest {
|
||||
uint64 offset = 1;
|
||||
uint64 limit = 2;
|
||||
repeated GrantedProjectSearchQuery queries = 3;
|
||||
}
|
||||
|
||||
message GrantedProjectSearchQuery {
|
||||
GrantedProjectSearchKey key = 1 [(validate.rules).enum = {not_in: [0]}];
|
||||
SearchMethod method = 2;
|
||||
string value = 3;
|
||||
}
|
||||
|
||||
enum GrantedProjectSearchKey {
|
||||
PROJECTSEARCHKEY_UNSPECIFIED = 0;
|
||||
PROJECTSEARCHKEY_PROJECT_NAME = 1;
|
||||
}
|
||||
|
||||
message ProjectMemberRoles {
|
||||
repeated string roles = 1;
|
||||
}
|
||||
@@ -2099,6 +2107,12 @@ message ProjectGrantSearchRequest {
|
||||
uint64 limit = 3;
|
||||
}
|
||||
|
||||
message GrantedProjectSearchRequest {
|
||||
uint64 offset = 1;
|
||||
uint64 limit = 2;
|
||||
repeated ProjectSearchQuery queries = 3;
|
||||
}
|
||||
|
||||
message ProjectGrantMemberRoles {
|
||||
repeated string roles = 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user