-
Notifications
You must be signed in to change notification settings - Fork 1
/
role_binding.pb.view.go
63 lines (54 loc) · 1.64 KB
/
role_binding.pb.view.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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
// Code generated by protoc-gen-goten-resource
// Resource: RoleBinding
// DO NOT EDIT!!!
package role_binding
import (
googlefieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
"github.com/cloudwan/goten-sdk/types/view"
)
// proto imports
import (
condition "github.com/cloudwan/edgelq-sdk/iam/resources/v1/condition"
organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1/organization"
project "github.com/cloudwan/edgelq-sdk/iam/resources/v1/project"
role "github.com/cloudwan/edgelq-sdk/iam/resources/v1/role"
meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service"
meta "github.com/cloudwan/goten-sdk/types/meta"
)
// ensure the imports are used
var (
_ = googlefieldmaskpb.FieldMask{}
_ = view.View_UNSPECIFIED
)
// make sure we're using proto imports
var (
_ = &condition.Condition{}
_ = &organization.Organization{}
_ = &project.Project{}
_ = &role.Role{}
_ = &meta_service.Service{}
_ = &meta.Meta{}
)
func ResourceViewFieldMask(viewName view.View, extraMask *RoleBinding_FieldMask) *RoleBinding_FieldMask {
protoFieldMask := &googlefieldmaskpb.FieldMask{}
switch viewName {
case view.View_UNSPECIFIED:
return extraMask
case view.View_FULL:
return nil
case view.View_BASIC:
protoFieldMask.Paths = append(protoFieldMask.Paths, "name", "role", "member")
break
case view.View_NAME:
protoFieldMask.Paths = append(protoFieldMask.Paths, "name")
break
default:
return extraMask
}
if extraMask != nil {
protoFieldMask.Paths = append(protoFieldMask.Paths, extraMask.ToProtoFieldMask().Paths...)
}
res := &RoleBinding_FieldMask{}
_ = res.FromProtoFieldMask(protoFieldMask)
return res
}