github.com/cloudwan/edgelq-sdk@v1.15.4/devices/resources/v1alpha2/provisioning_policy/provisioning_policy.pb.access.go (about)

     1  // Code generated by protoc-gen-goten-resource
     2  // Resource: ProvisioningPolicy
     3  // DO NOT EDIT!!!
     4  
     5  package provisioning_policy
     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  	device "github.com/cloudwan/edgelq-sdk/devices/resources/v1alpha2/device"
    21  	project "github.com/cloudwan/edgelq-sdk/devices/resources/v1alpha2/project"
    22  	iam_condition "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/condition"
    23  	iam_role "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/role"
    24  	iam_service_account "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/service_account"
    25  	meta "github.com/cloudwan/goten-sdk/types/meta"
    26  )
    27  
    28  // ensure the imports are used
    29  var (
    30  	_ = new(context.Context)
    31  
    32  	_ = codes.Internal
    33  	_ = status.Status{}
    34  
    35  	_ = watch_type.WatchType_STATEFUL
    36  	_ = new(gotenobject.FieldPath)
    37  	_ = new(gotenresource.ListQuery)
    38  )
    39  
    40  // make sure we're using proto imports
    41  var (
    42  	_ = &device.Device{}
    43  	_ = &project.Project{}
    44  	_ = &iam_condition.Condition{}
    45  	_ = &iam_role.Role{}
    46  	_ = &iam_service_account.ServiceAccount{}
    47  	_ = &meta.Meta{}
    48  )
    49  
    50  type ProvisioningPolicyAccess interface {
    51  	GetProvisioningPolicy(context.Context, *GetQuery, ...gotenresource.GetOption) (*ProvisioningPolicy, error)
    52  	BatchGetProvisioningPolicies(context.Context, []*Reference, ...gotenresource.BatchGetOption) error
    53  	QueryProvisioningPolicies(context.Context, *ListQuery, ...gotenresource.QueryOption) (*QueryResultSnapshot, error)
    54  	WatchProvisioningPolicy(context.Context, *GetQuery, func(*ProvisioningPolicyChange) error) error
    55  	WatchProvisioningPolicies(context.Context, *WatchQuery, func(*QueryResultChange) error) error
    56  	SaveProvisioningPolicy(context.Context, *ProvisioningPolicy, ...gotenresource.SaveOption) error
    57  	DeleteProvisioningPolicy(context.Context, *Reference, ...gotenresource.DeleteOption) error
    58  }
    59  
    60  type anyCastAccess struct {
    61  	ProvisioningPolicyAccess
    62  }
    63  
    64  func AsAnyCastAccess(access ProvisioningPolicyAccess) gotenresource.Access {
    65  	return &anyCastAccess{ProvisioningPolicyAccess: access}
    66  }
    67  
    68  func (a *anyCastAccess) Get(ctx context.Context, q gotenresource.GetQuery, opts ...gotenresource.GetOption) (gotenresource.Resource, error) {
    69  	if asProvisioningPolicyQuery, ok := q.(*GetQuery); ok {
    70  		return a.GetProvisioningPolicy(ctx, asProvisioningPolicyQuery, opts...)
    71  	}
    72  	return nil, status.Errorf(codes.Internal,
    73  		"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
    74  		q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
    75  }
    76  
    77  func (a *anyCastAccess) Query(ctx context.Context, q gotenresource.ListQuery, opts ...gotenresource.QueryOption) (gotenresource.QueryResultSnapshot, error) {
    78  	if asProvisioningPolicyQuery, ok := q.(*ListQuery); ok {
    79  		return a.QueryProvisioningPolicies(ctx, asProvisioningPolicyQuery, opts...)
    80  	}
    81  	return nil, status.Errorf(codes.Internal,
    82  		"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
    83  		q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
    84  }
    85  
    86  func (a *anyCastAccess) Search(ctx context.Context, q gotenresource.SearchQuery, opts ...gotenresource.QueryOption) (gotenresource.QueryResultSnapshot, error) {
    87  	return nil, status.Errorf(codes.Internal, "Search is not available for ProvisioningPolicy")
    88  }
    89  
    90  func (a *anyCastAccess) Watch(ctx context.Context, q gotenresource.GetQuery, cb func(ch gotenresource.ResourceChange) error) error {
    91  	if asProvisioningPolicyQuery, ok := q.(*GetQuery); ok {
    92  		return a.WatchProvisioningPolicy(ctx, asProvisioningPolicyQuery, func(change *ProvisioningPolicyChange) error {
    93  			return cb(change)
    94  		})
    95  	}
    96  	return status.Errorf(codes.Internal,
    97  		"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
    98  		q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
    99  }
   100  
   101  func (a *anyCastAccess) WatchQuery(ctx context.Context, q gotenresource.WatchQuery, cb func(ch gotenresource.QueryResultChange) error) error {
   102  	if asProvisioningPolicyQuery, ok := q.(*WatchQuery); ok {
   103  		return a.WatchProvisioningPolicies(ctx, asProvisioningPolicyQuery, func(change *QueryResultChange) error {
   104  			return cb(change)
   105  		})
   106  	}
   107  	return status.Errorf(codes.Internal,
   108  		"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
   109  		q.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
   110  }
   111  
   112  func (a *anyCastAccess) Save(ctx context.Context, res gotenresource.Resource, opts ...gotenresource.SaveOption) error {
   113  	if asProvisioningPolicyRes, ok := res.(*ProvisioningPolicy); ok {
   114  		return a.SaveProvisioningPolicy(ctx, asProvisioningPolicyRes, opts...)
   115  	}
   116  	return status.Errorf(codes.Internal,
   117  		"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
   118  		res.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
   119  }
   120  
   121  func (a *anyCastAccess) Delete(ctx context.Context, ref gotenresource.Reference, opts ...gotenresource.DeleteOption) error {
   122  	if asProvisioningPolicyRef, ok := ref.(*Reference); ok {
   123  		return a.DeleteProvisioningPolicy(ctx, asProvisioningPolicyRef, opts...)
   124  	}
   125  	return status.Errorf(codes.Internal,
   126  		"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
   127  		ref.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
   128  }
   129  
   130  func (a *anyCastAccess) BatchGet(ctx context.Context, toGet []gotenresource.Reference, opts ...gotenresource.BatchGetOption) error {
   131  	provisioningPolicyRefs := make([]*Reference, 0, len(toGet))
   132  	for _, ref := range toGet {
   133  		if asProvisioningPolicyRef, ok := ref.(*Reference); !ok {
   134  			return status.Errorf(codes.Internal,
   135  				"Unrecognized descriptor, expected ProvisioningPolicy, got: %s",
   136  				ref.GetResourceDescriptor().GetResourceTypeName().FullyQualifiedTypeName())
   137  		} else {
   138  			provisioningPolicyRefs = append(provisioningPolicyRefs, asProvisioningPolicyRef)
   139  		}
   140  	}
   141  	return a.BatchGetProvisioningPolicies(ctx, provisioningPolicyRefs, opts...)
   142  }
   143  
   144  func (a *anyCastAccess) GetResourceDescriptors() []gotenresource.Descriptor {
   145  	return []gotenresource.Descriptor{
   146  		GetDescriptor(),
   147  	}
   148  }