github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v4/metric_descriptor/metric_descriptor.pb.view.go (about)

     1  // Code generated by protoc-gen-goten-resource
     2  // Resource: MetricDescriptor
     3  // DO NOT EDIT!!!
     4  
     5  package metric_descriptor
     6  
     7  import (
     8  	googlefieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
     9  
    10  	"github.com/cloudwan/goten-sdk/types/view"
    11  )
    12  
    13  // proto imports
    14  import (
    15  	api "github.com/cloudwan/edgelq-sdk/common/api"
    16  	common "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/common"
    17  	monitored_resource_descriptor "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/monitored_resource_descriptor"
    18  	project "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/project"
    19  	meta "github.com/cloudwan/goten-sdk/types/meta"
    20  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    21  )
    22  
    23  // ensure the imports are used
    24  var (
    25  	_ = googlefieldmaskpb.FieldMask{}
    26  
    27  	_ = view.View_UNSPECIFIED
    28  )
    29  
    30  // make sure we're using proto imports
    31  var (
    32  	_ = api.LaunchStage(0)
    33  	_ = &common.LabelDescriptor{}
    34  	_ = &monitored_resource_descriptor.MonitoredResourceDescriptor{}
    35  	_ = &project.Project{}
    36  	_ = &durationpb.Duration{}
    37  	_ = &meta.Meta{}
    38  )
    39  
    40  func ResourceViewFieldMask(viewName view.View, extraMask *MetricDescriptor_FieldMask) *MetricDescriptor_FieldMask {
    41  	protoFieldMask := &googlefieldmaskpb.FieldMask{}
    42  
    43  	switch viewName {
    44  	case view.View_UNSPECIFIED:
    45  		return extraMask
    46  	case view.View_FULL:
    47  		return nil
    48  	case view.View_BASIC:
    49  		protoFieldMask.Paths = append(protoFieldMask.Paths, "name", "display_name", "type", "metric_kind", "value_type", "unit", "metric_descriptor_metadata.launch_stage")
    50  		break
    51  	case view.View_NAME:
    52  		protoFieldMask.Paths = append(protoFieldMask.Paths, "name", "display_name")
    53  		break
    54  	default:
    55  		return extraMask
    56  	}
    57  	if extraMask != nil {
    58  		protoFieldMask.Paths = append(protoFieldMask.Paths, extraMask.ToProtoFieldMask().Paths...)
    59  	}
    60  	res := &MetricDescriptor_FieldMask{}
    61  	_ = res.FromProtoFieldMask(protoFieldMask)
    62  	return res
    63  }