github.com/cloudwan/edgelq-sdk@v1.15.4/alerting/resources/v1/alert/alert.pb.access.go (about) 1 // Code generated by protoc-gen-goten-resource 2 // Resource: Alert 3 // DO NOT EDIT!!! 4 5 package alert 6 7 import ( 8 "context" 9 10 "google.golang.org/grpc/codes" 11 "google.golang.org/grpc/status" 12 13 gotenobject "github.com/cloudwan/goten-sdk/runtime/object" 14 gotenresource "github.com/cloudwan/goten-sdk/runtime/resource" 15 "github.com/cloudwan/goten-sdk/types/watch_type" 16 ) 17 18 // proto imports 19 import ( 20 rcommon "github.com/cloudwan/edgelq-sdk/alerting/resources/v1/common" 21 log_condition "github.com/cloudwan/edgelq-sdk/alerting/resources/v1/log_condition" 22 notification_channel "github.com/cloudwan/edgelq-sdk/alerting/resources/v1/notification_channel" 23 ts_condition "github.com/cloudwan/edgelq-sdk/alerting/resources/v1/ts_condition" 24 meta "github.com/cloudwan/goten-sdk/types/meta" 25 durationpb "google.golang.org/protobuf/types/known/durationpb" 26 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 27 ) 28 29 // ensure the imports are used 30 var ( 31 _ = new(context.Context) 32 33 _ = codes.Internal 34 _ = status.Status{} 35 36 _ = watch_type.WatchType_STATEFUL 37 _ = new(gotenobject.FieldPath) 38 _ = new(gotenresource.ListQuery) 39 ) 40 41 // make sure we're using proto imports 42 var ( 43 _ = &log_condition.LogCondition{} 44 _ = ¬ification_channel.NotificationChannel{} 45 _ = &rcommon.LogCndSpec{} 46 _ = &ts_condition.TsCondition{} 47 _ = &durationpb.Duration{} 48 _ = ×tamppb.Timestamp{} 49 _ = &meta.Meta{} 50 ) 51 52 type AlertAccess interface { 53 GetAlert(context.Context, *GetQuery, ...gotenresource.GetOption) (*Alert, error) 54 BatchGetAlerts(context.Context, []*Reference, ...gotenresource.BatchGetOption) error 55 QueryAlerts(context.Context, *ListQuery, ...gotenresource.QueryOption) (*QueryResultSnapshot, error) 56 WatchAlert(context.Context, *GetQuery, func(*AlertChange) error) error 57 WatchAlerts(context.Context, *WatchQuery, func(*QueryResultChange) error) error 58 SaveAlert(context.Context, *Alert, ...gotenresource.SaveOption) error 59 DeleteAlert(context.Context, *Reference, ...gotenresource.DeleteOption) error 60 } 61 62 type anyCastAccess struct { 63 AlertAccess 64 } 65 66 func AsAnyCastAccess(access AlertAccess) gotenresource.Access { 67 return &anyCastAccess{AlertAccess: access} 68 } 69 70 func (a *anyCastAccess) Get(ctx context.Context, q gotenresource.GetQuery, opts ...gotenresource.GetOption) (gotenresource.Resource, error) { 71 if asAlertQuery, ok := q.(*GetQuery); ok { 72 return a.GetAlert(ctx, asAlertQuery, opts...) 73 } 74 return nil, status.Errorf(codes.Internal, 75 "Unrecognized descriptor, expected Alert, got: %s", 76 q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 77 } 78 79 func (a *anyCastAccess) Query(ctx context.Context, q gotenresource.ListQuery, opts ...gotenresource.QueryOption) (gotenresource.QueryResultSnapshot, error) { 80 if asAlertQuery, ok := q.(*ListQuery); ok { 81 return a.QueryAlerts(ctx, asAlertQuery, opts...) 82 } 83 return nil, status.Errorf(codes.Internal, 84 "Unrecognized descriptor, expected Alert, got: %s", 85 q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 86 } 87 88 func (a *anyCastAccess) Search(ctx context.Context, q gotenresource.SearchQuery, opts ...gotenresource.QueryOption) (gotenresource.QueryResultSnapshot, error) { 89 return nil, status.Errorf(codes.Internal, "Search is not available for Alert") 90 } 91 92 func (a *anyCastAccess) Watch(ctx context.Context, q gotenresource.GetQuery, cb func(ch gotenresource.ResourceChange) error) error { 93 if asAlertQuery, ok := q.(*GetQuery); ok { 94 return a.WatchAlert(ctx, asAlertQuery, func(change *AlertChange) error { 95 return cb(change) 96 }) 97 } 98 return status.Errorf(codes.Internal, 99 "Unrecognized descriptor, expected Alert, got: %s", 100 q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 101 } 102 103 func (a *anyCastAccess) WatchQuery(ctx context.Context, q gotenresource.WatchQuery, cb func(ch gotenresource.QueryResultChange) error) error { 104 if asAlertQuery, ok := q.(*WatchQuery); ok { 105 return a.WatchAlerts(ctx, asAlertQuery, func(change *QueryResultChange) error { 106 return cb(change) 107 }) 108 } 109 return status.Errorf(codes.Internal, 110 "Unrecognized descriptor, expected Alert, got: %s", 111 q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 112 } 113 114 func (a *anyCastAccess) Save(ctx context.Context, res gotenresource.Resource, opts ...gotenresource.SaveOption) error { 115 if asAlertRes, ok := res.(*Alert); ok { 116 return a.SaveAlert(ctx, asAlertRes, opts...) 117 } 118 return status.Errorf(codes.Internal, 119 "Unrecognized descriptor, expected Alert, got: %s", 120 res.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 121 } 122 123 func (a *anyCastAccess) Delete(ctx context.Context, ref gotenresource.Reference, opts ...gotenresource.DeleteOption) error { 124 if asAlertRef, ok := ref.(*Reference); ok { 125 return a.DeleteAlert(ctx, asAlertRef, opts...) 126 } 127 return status.Errorf(codes.Internal, 128 "Unrecognized descriptor, expected Alert, got: %s", 129 ref.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 130 } 131 132 func (a *anyCastAccess) BatchGet(ctx context.Context, toGet []gotenresource.Reference, opts ...gotenresource.BatchGetOption) error { 133 alertRefs := make([]*Reference, 0, len(toGet)) 134 for _, ref := range toGet { 135 if asAlertRef, ok := ref.(*Reference); !ok { 136 return status.Errorf(codes.Internal, 137 "Unrecognized descriptor, expected Alert, got: %s", 138 ref.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName()) 139 } else { 140 alertRefs = append(alertRefs, asAlertRef) 141 } 142 } 143 return a.BatchGetAlerts(ctx, alertRefs, opts...) 144 } 145 146 func (a *anyCastAccess) GetResourceDescriptors() []gotenresource.Descriptor { 147 return []gotenresource.Descriptor{ 148 GetDescriptor(), 149 } 150 }