1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/cloud/billing/v1/cloud_catalog.proto 3 4package billing 5 6import ( 7 context "context" 8 fmt "fmt" 9 math "math" 10 11 proto "github.com/golang/protobuf/proto" 12 timestamp "github.com/golang/protobuf/ptypes/timestamp" 13 _ "google.golang.org/genproto/googleapis/api/annotations" 14 money "google.golang.org/genproto/googleapis/type/money" 15 grpc "google.golang.org/grpc" 16 codes "google.golang.org/grpc/codes" 17 status "google.golang.org/grpc/status" 18) 19 20// Reference imports to suppress errors if they are not otherwise used. 21var _ = proto.Marshal 22var _ = fmt.Errorf 23var _ = math.Inf 24 25// This is a compile-time assertion to ensure that this generated file 26// is compatible with the proto package it is being compiled against. 27// A compilation error at this line likely means your copy of the 28// proto package needs to be updated. 29const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 30 31// The level at which usage is aggregated to compute cost. 32// Example: "ACCOUNT" aggregation level indicates that usage for tiered 33// pricing is aggregated across all projects in a single account. 34type AggregationInfo_AggregationLevel int32 35 36const ( 37 AggregationInfo_AGGREGATION_LEVEL_UNSPECIFIED AggregationInfo_AggregationLevel = 0 38 AggregationInfo_ACCOUNT AggregationInfo_AggregationLevel = 1 39 AggregationInfo_PROJECT AggregationInfo_AggregationLevel = 2 40) 41 42var AggregationInfo_AggregationLevel_name = map[int32]string{ 43 0: "AGGREGATION_LEVEL_UNSPECIFIED", 44 1: "ACCOUNT", 45 2: "PROJECT", 46} 47 48var AggregationInfo_AggregationLevel_value = map[string]int32{ 49 "AGGREGATION_LEVEL_UNSPECIFIED": 0, 50 "ACCOUNT": 1, 51 "PROJECT": 2, 52} 53 54func (x AggregationInfo_AggregationLevel) String() string { 55 return proto.EnumName(AggregationInfo_AggregationLevel_name, int32(x)) 56} 57 58func (AggregationInfo_AggregationLevel) EnumDescriptor() ([]byte, []int) { 59 return fileDescriptor_4ca652323baa1561, []int{5, 0} 60} 61 62// The interval at which usage is aggregated to compute cost. 63// Example: "MONTHLY" aggregation interval indicates that usage for tiered 64// pricing is aggregated every month. 65type AggregationInfo_AggregationInterval int32 66 67const ( 68 AggregationInfo_AGGREGATION_INTERVAL_UNSPECIFIED AggregationInfo_AggregationInterval = 0 69 AggregationInfo_DAILY AggregationInfo_AggregationInterval = 1 70 AggregationInfo_MONTHLY AggregationInfo_AggregationInterval = 2 71) 72 73var AggregationInfo_AggregationInterval_name = map[int32]string{ 74 0: "AGGREGATION_INTERVAL_UNSPECIFIED", 75 1: "DAILY", 76 2: "MONTHLY", 77} 78 79var AggregationInfo_AggregationInterval_value = map[string]int32{ 80 "AGGREGATION_INTERVAL_UNSPECIFIED": 0, 81 "DAILY": 1, 82 "MONTHLY": 2, 83} 84 85func (x AggregationInfo_AggregationInterval) String() string { 86 return proto.EnumName(AggregationInfo_AggregationInterval_name, int32(x)) 87} 88 89func (AggregationInfo_AggregationInterval) EnumDescriptor() ([]byte, []int) { 90 return fileDescriptor_4ca652323baa1561, []int{5, 1} 91} 92 93// Encapsulates a single service in Google Cloud Platform. 94type Service struct { 95 // The resource name for the service. 96 // Example: "services/DA34-426B-A397" 97 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 98 // The identifier for the service. 99 // Example: "DA34-426B-A397" 100 ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` 101 // A human readable display name for this service. 102 DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` 103 // The business under which the service is offered. 104 // Ex. "businessEntities/GCP", "businessEntities/Maps" 105 BusinessEntityName string `protobuf:"bytes,4,opt,name=business_entity_name,json=businessEntityName,proto3" json:"business_entity_name,omitempty"` 106 XXX_NoUnkeyedLiteral struct{} `json:"-"` 107 XXX_unrecognized []byte `json:"-"` 108 XXX_sizecache int32 `json:"-"` 109} 110 111func (m *Service) Reset() { *m = Service{} } 112func (m *Service) String() string { return proto.CompactTextString(m) } 113func (*Service) ProtoMessage() {} 114func (*Service) Descriptor() ([]byte, []int) { 115 return fileDescriptor_4ca652323baa1561, []int{0} 116} 117 118func (m *Service) XXX_Unmarshal(b []byte) error { 119 return xxx_messageInfo_Service.Unmarshal(m, b) 120} 121func (m *Service) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 122 return xxx_messageInfo_Service.Marshal(b, m, deterministic) 123} 124func (m *Service) XXX_Merge(src proto.Message) { 125 xxx_messageInfo_Service.Merge(m, src) 126} 127func (m *Service) XXX_Size() int { 128 return xxx_messageInfo_Service.Size(m) 129} 130func (m *Service) XXX_DiscardUnknown() { 131 xxx_messageInfo_Service.DiscardUnknown(m) 132} 133 134var xxx_messageInfo_Service proto.InternalMessageInfo 135 136func (m *Service) GetName() string { 137 if m != nil { 138 return m.Name 139 } 140 return "" 141} 142 143func (m *Service) GetServiceId() string { 144 if m != nil { 145 return m.ServiceId 146 } 147 return "" 148} 149 150func (m *Service) GetDisplayName() string { 151 if m != nil { 152 return m.DisplayName 153 } 154 return "" 155} 156 157func (m *Service) GetBusinessEntityName() string { 158 if m != nil { 159 return m.BusinessEntityName 160 } 161 return "" 162} 163 164// Encapsulates a single SKU in Google Cloud Platform 165type Sku struct { 166 // The resource name for the SKU. 167 // Example: "services/DA34-426B-A397/skus/AA95-CD31-42FE" 168 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 169 // The identifier for the SKU. 170 // Example: "AA95-CD31-42FE" 171 SkuId string `protobuf:"bytes,2,opt,name=sku_id,json=skuId,proto3" json:"sku_id,omitempty"` 172 // A human readable description of the SKU, has a maximum length of 256 173 // characters. 174 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 175 // The category hierarchy of this SKU, purely for organizational purpose. 176 Category *Category `protobuf:"bytes,4,opt,name=category,proto3" json:"category,omitempty"` 177 // List of service regions this SKU is offered at. 178 // Example: "asia-east1" 179 // Service regions can be found at https://cloud.google.com/about/locations/ 180 ServiceRegions []string `protobuf:"bytes,5,rep,name=service_regions,json=serviceRegions,proto3" json:"service_regions,omitempty"` 181 // A timeline of pricing info for this SKU in chronological order. 182 PricingInfo []*PricingInfo `protobuf:"bytes,6,rep,name=pricing_info,json=pricingInfo,proto3" json:"pricing_info,omitempty"` 183 // Identifies the service provider. 184 // This is 'Google' for first party services in Google Cloud Platform. 185 ServiceProviderName string `protobuf:"bytes,7,opt,name=service_provider_name,json=serviceProviderName,proto3" json:"service_provider_name,omitempty"` 186 XXX_NoUnkeyedLiteral struct{} `json:"-"` 187 XXX_unrecognized []byte `json:"-"` 188 XXX_sizecache int32 `json:"-"` 189} 190 191func (m *Sku) Reset() { *m = Sku{} } 192func (m *Sku) String() string { return proto.CompactTextString(m) } 193func (*Sku) ProtoMessage() {} 194func (*Sku) Descriptor() ([]byte, []int) { 195 return fileDescriptor_4ca652323baa1561, []int{1} 196} 197 198func (m *Sku) XXX_Unmarshal(b []byte) error { 199 return xxx_messageInfo_Sku.Unmarshal(m, b) 200} 201func (m *Sku) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 202 return xxx_messageInfo_Sku.Marshal(b, m, deterministic) 203} 204func (m *Sku) XXX_Merge(src proto.Message) { 205 xxx_messageInfo_Sku.Merge(m, src) 206} 207func (m *Sku) XXX_Size() int { 208 return xxx_messageInfo_Sku.Size(m) 209} 210func (m *Sku) XXX_DiscardUnknown() { 211 xxx_messageInfo_Sku.DiscardUnknown(m) 212} 213 214var xxx_messageInfo_Sku proto.InternalMessageInfo 215 216func (m *Sku) GetName() string { 217 if m != nil { 218 return m.Name 219 } 220 return "" 221} 222 223func (m *Sku) GetSkuId() string { 224 if m != nil { 225 return m.SkuId 226 } 227 return "" 228} 229 230func (m *Sku) GetDescription() string { 231 if m != nil { 232 return m.Description 233 } 234 return "" 235} 236 237func (m *Sku) GetCategory() *Category { 238 if m != nil { 239 return m.Category 240 } 241 return nil 242} 243 244func (m *Sku) GetServiceRegions() []string { 245 if m != nil { 246 return m.ServiceRegions 247 } 248 return nil 249} 250 251func (m *Sku) GetPricingInfo() []*PricingInfo { 252 if m != nil { 253 return m.PricingInfo 254 } 255 return nil 256} 257 258func (m *Sku) GetServiceProviderName() string { 259 if m != nil { 260 return m.ServiceProviderName 261 } 262 return "" 263} 264 265// Represents the category hierarchy of a SKU. 266type Category struct { 267 // The display name of the service this SKU belongs to. 268 ServiceDisplayName string `protobuf:"bytes,1,opt,name=service_display_name,json=serviceDisplayName,proto3" json:"service_display_name,omitempty"` 269 // The type of product the SKU refers to. 270 // Example: "Compute", "Storage", "Network", "ApplicationServices" etc. 271 ResourceFamily string `protobuf:"bytes,2,opt,name=resource_family,json=resourceFamily,proto3" json:"resource_family,omitempty"` 272 // A group classification for related SKUs. 273 // Example: "RAM", "GPU", "Prediction", "Ops", "GoogleEgress" etc. 274 ResourceGroup string `protobuf:"bytes,3,opt,name=resource_group,json=resourceGroup,proto3" json:"resource_group,omitempty"` 275 // Represents how the SKU is consumed. 276 // Example: "OnDemand", "Preemptible", "Commit1Mo", "Commit1Yr" etc. 277 UsageType string `protobuf:"bytes,4,opt,name=usage_type,json=usageType,proto3" json:"usage_type,omitempty"` 278 XXX_NoUnkeyedLiteral struct{} `json:"-"` 279 XXX_unrecognized []byte `json:"-"` 280 XXX_sizecache int32 `json:"-"` 281} 282 283func (m *Category) Reset() { *m = Category{} } 284func (m *Category) String() string { return proto.CompactTextString(m) } 285func (*Category) ProtoMessage() {} 286func (*Category) Descriptor() ([]byte, []int) { 287 return fileDescriptor_4ca652323baa1561, []int{2} 288} 289 290func (m *Category) XXX_Unmarshal(b []byte) error { 291 return xxx_messageInfo_Category.Unmarshal(m, b) 292} 293func (m *Category) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 294 return xxx_messageInfo_Category.Marshal(b, m, deterministic) 295} 296func (m *Category) XXX_Merge(src proto.Message) { 297 xxx_messageInfo_Category.Merge(m, src) 298} 299func (m *Category) XXX_Size() int { 300 return xxx_messageInfo_Category.Size(m) 301} 302func (m *Category) XXX_DiscardUnknown() { 303 xxx_messageInfo_Category.DiscardUnknown(m) 304} 305 306var xxx_messageInfo_Category proto.InternalMessageInfo 307 308func (m *Category) GetServiceDisplayName() string { 309 if m != nil { 310 return m.ServiceDisplayName 311 } 312 return "" 313} 314 315func (m *Category) GetResourceFamily() string { 316 if m != nil { 317 return m.ResourceFamily 318 } 319 return "" 320} 321 322func (m *Category) GetResourceGroup() string { 323 if m != nil { 324 return m.ResourceGroup 325 } 326 return "" 327} 328 329func (m *Category) GetUsageType() string { 330 if m != nil { 331 return m.UsageType 332 } 333 return "" 334} 335 336// Represents the pricing information for a SKU at a single point of time. 337type PricingInfo struct { 338 // The timestamp from which this pricing was effective within the requested 339 // time range. This is guaranteed to be greater than or equal to the 340 // start_time field in the request and less than the end_time field in the 341 // request. If a time range was not specified in the request this field will 342 // be equivalent to a time within the last 12 hours, indicating the latest 343 // pricing info. 344 EffectiveTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=effective_time,json=effectiveTime,proto3" json:"effective_time,omitempty"` 345 // An optional human readable summary of the pricing information, has a 346 // maximum length of 256 characters. 347 Summary string `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"` 348 // Expresses the pricing formula. See `PricingExpression` for an example. 349 PricingExpression *PricingExpression `protobuf:"bytes,3,opt,name=pricing_expression,json=pricingExpression,proto3" json:"pricing_expression,omitempty"` 350 // Aggregation Info. This can be left unspecified if the pricing expression 351 // doesn't require aggregation. 352 AggregationInfo *AggregationInfo `protobuf:"bytes,4,opt,name=aggregation_info,json=aggregationInfo,proto3" json:"aggregation_info,omitempty"` 353 // Conversion rate used for currency conversion, from USD to the currency 354 // specified in the request. This includes any surcharge collected for billing 355 // in non USD currency. If a currency is not specified in the request this 356 // defaults to 1.0. 357 // Example: USD * currency_conversion_rate = JPY 358 CurrencyConversionRate float64 `protobuf:"fixed64,5,opt,name=currency_conversion_rate,json=currencyConversionRate,proto3" json:"currency_conversion_rate,omitempty"` 359 XXX_NoUnkeyedLiteral struct{} `json:"-"` 360 XXX_unrecognized []byte `json:"-"` 361 XXX_sizecache int32 `json:"-"` 362} 363 364func (m *PricingInfo) Reset() { *m = PricingInfo{} } 365func (m *PricingInfo) String() string { return proto.CompactTextString(m) } 366func (*PricingInfo) ProtoMessage() {} 367func (*PricingInfo) Descriptor() ([]byte, []int) { 368 return fileDescriptor_4ca652323baa1561, []int{3} 369} 370 371func (m *PricingInfo) XXX_Unmarshal(b []byte) error { 372 return xxx_messageInfo_PricingInfo.Unmarshal(m, b) 373} 374func (m *PricingInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 375 return xxx_messageInfo_PricingInfo.Marshal(b, m, deterministic) 376} 377func (m *PricingInfo) XXX_Merge(src proto.Message) { 378 xxx_messageInfo_PricingInfo.Merge(m, src) 379} 380func (m *PricingInfo) XXX_Size() int { 381 return xxx_messageInfo_PricingInfo.Size(m) 382} 383func (m *PricingInfo) XXX_DiscardUnknown() { 384 xxx_messageInfo_PricingInfo.DiscardUnknown(m) 385} 386 387var xxx_messageInfo_PricingInfo proto.InternalMessageInfo 388 389func (m *PricingInfo) GetEffectiveTime() *timestamp.Timestamp { 390 if m != nil { 391 return m.EffectiveTime 392 } 393 return nil 394} 395 396func (m *PricingInfo) GetSummary() string { 397 if m != nil { 398 return m.Summary 399 } 400 return "" 401} 402 403func (m *PricingInfo) GetPricingExpression() *PricingExpression { 404 if m != nil { 405 return m.PricingExpression 406 } 407 return nil 408} 409 410func (m *PricingInfo) GetAggregationInfo() *AggregationInfo { 411 if m != nil { 412 return m.AggregationInfo 413 } 414 return nil 415} 416 417func (m *PricingInfo) GetCurrencyConversionRate() float64 { 418 if m != nil { 419 return m.CurrencyConversionRate 420 } 421 return 0 422} 423 424// Expresses a mathematical pricing formula. For Example:- 425// 426// `usage_unit: GBy` 427// `tiered_rates:` 428// `[start_usage_amount: 20, unit_price: $10]` 429// `[start_usage_amount: 100, unit_price: $5]` 430// 431// The above expresses a pricing formula where the first 20GB is free, the 432// next 80GB is priced at $10 per GB followed by $5 per GB for additional 433// usage. 434type PricingExpression struct { 435 // The short hand for unit of usage this pricing is specified in. 436 // Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte". 437 UsageUnit string `protobuf:"bytes,1,opt,name=usage_unit,json=usageUnit,proto3" json:"usage_unit,omitempty"` 438 // The unit of usage in human readable form. 439 // Example: "gibi byte". 440 UsageUnitDescription string `protobuf:"bytes,4,opt,name=usage_unit_description,json=usageUnitDescription,proto3" json:"usage_unit_description,omitempty"` 441 // The base unit for the SKU which is the unit used in usage exports. 442 // Example: "By" 443 BaseUnit string `protobuf:"bytes,5,opt,name=base_unit,json=baseUnit,proto3" json:"base_unit,omitempty"` 444 // The base unit in human readable form. 445 // Example: "byte". 446 BaseUnitDescription string `protobuf:"bytes,6,opt,name=base_unit_description,json=baseUnitDescription,proto3" json:"base_unit_description,omitempty"` 447 // Conversion factor for converting from price per usage_unit to price per 448 // base_unit, and start_usage_amount to start_usage_amount in base_unit. 449 // unit_price / base_unit_conversion_factor = price per base_unit. 450 // start_usage_amount * base_unit_conversion_factor = start_usage_amount in 451 // base_unit. 452 BaseUnitConversionFactor float64 `protobuf:"fixed64,7,opt,name=base_unit_conversion_factor,json=baseUnitConversionFactor,proto3" json:"base_unit_conversion_factor,omitempty"` 453 // The recommended quantity of units for displaying pricing info. When 454 // displaying pricing info it is recommended to display: 455 // (unit_price * display_quantity) per display_quantity usage_unit. 456 // This field does not affect the pricing formula and is for display purposes 457 // only. 458 // Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and 459 // the display_quantity is "1000" then the recommended way of displaying the 460 // pricing info is "0.10 USD per 1000 GB" 461 DisplayQuantity float64 `protobuf:"fixed64,2,opt,name=display_quantity,json=displayQuantity,proto3" json:"display_quantity,omitempty"` 462 // The list of tiered rates for this pricing. The total cost is computed by 463 // applying each of the tiered rates on usage. This repeated list is sorted 464 // by ascending order of start_usage_amount. 465 TieredRates []*PricingExpression_TierRate `protobuf:"bytes,3,rep,name=tiered_rates,json=tieredRates,proto3" json:"tiered_rates,omitempty"` 466 XXX_NoUnkeyedLiteral struct{} `json:"-"` 467 XXX_unrecognized []byte `json:"-"` 468 XXX_sizecache int32 `json:"-"` 469} 470 471func (m *PricingExpression) Reset() { *m = PricingExpression{} } 472func (m *PricingExpression) String() string { return proto.CompactTextString(m) } 473func (*PricingExpression) ProtoMessage() {} 474func (*PricingExpression) Descriptor() ([]byte, []int) { 475 return fileDescriptor_4ca652323baa1561, []int{4} 476} 477 478func (m *PricingExpression) XXX_Unmarshal(b []byte) error { 479 return xxx_messageInfo_PricingExpression.Unmarshal(m, b) 480} 481func (m *PricingExpression) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 482 return xxx_messageInfo_PricingExpression.Marshal(b, m, deterministic) 483} 484func (m *PricingExpression) XXX_Merge(src proto.Message) { 485 xxx_messageInfo_PricingExpression.Merge(m, src) 486} 487func (m *PricingExpression) XXX_Size() int { 488 return xxx_messageInfo_PricingExpression.Size(m) 489} 490func (m *PricingExpression) XXX_DiscardUnknown() { 491 xxx_messageInfo_PricingExpression.DiscardUnknown(m) 492} 493 494var xxx_messageInfo_PricingExpression proto.InternalMessageInfo 495 496func (m *PricingExpression) GetUsageUnit() string { 497 if m != nil { 498 return m.UsageUnit 499 } 500 return "" 501} 502 503func (m *PricingExpression) GetUsageUnitDescription() string { 504 if m != nil { 505 return m.UsageUnitDescription 506 } 507 return "" 508} 509 510func (m *PricingExpression) GetBaseUnit() string { 511 if m != nil { 512 return m.BaseUnit 513 } 514 return "" 515} 516 517func (m *PricingExpression) GetBaseUnitDescription() string { 518 if m != nil { 519 return m.BaseUnitDescription 520 } 521 return "" 522} 523 524func (m *PricingExpression) GetBaseUnitConversionFactor() float64 { 525 if m != nil { 526 return m.BaseUnitConversionFactor 527 } 528 return 0 529} 530 531func (m *PricingExpression) GetDisplayQuantity() float64 { 532 if m != nil { 533 return m.DisplayQuantity 534 } 535 return 0 536} 537 538func (m *PricingExpression) GetTieredRates() []*PricingExpression_TierRate { 539 if m != nil { 540 return m.TieredRates 541 } 542 return nil 543} 544 545// The price rate indicating starting usage and its corresponding price. 546type PricingExpression_TierRate struct { 547 // Usage is priced at this rate only after this amount. 548 // Example: start_usage_amount of 10 indicates that the usage will be priced 549 // at the unit_price after the first 10 usage_units. 550 StartUsageAmount float64 `protobuf:"fixed64,1,opt,name=start_usage_amount,json=startUsageAmount,proto3" json:"start_usage_amount,omitempty"` 551 // The price per unit of usage. 552 // Example: unit_price of amount $10 indicates that each unit will cost $10. 553 UnitPrice *money.Money `protobuf:"bytes,2,opt,name=unit_price,json=unitPrice,proto3" json:"unit_price,omitempty"` 554 XXX_NoUnkeyedLiteral struct{} `json:"-"` 555 XXX_unrecognized []byte `json:"-"` 556 XXX_sizecache int32 `json:"-"` 557} 558 559func (m *PricingExpression_TierRate) Reset() { *m = PricingExpression_TierRate{} } 560func (m *PricingExpression_TierRate) String() string { return proto.CompactTextString(m) } 561func (*PricingExpression_TierRate) ProtoMessage() {} 562func (*PricingExpression_TierRate) Descriptor() ([]byte, []int) { 563 return fileDescriptor_4ca652323baa1561, []int{4, 0} 564} 565 566func (m *PricingExpression_TierRate) XXX_Unmarshal(b []byte) error { 567 return xxx_messageInfo_PricingExpression_TierRate.Unmarshal(m, b) 568} 569func (m *PricingExpression_TierRate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 570 return xxx_messageInfo_PricingExpression_TierRate.Marshal(b, m, deterministic) 571} 572func (m *PricingExpression_TierRate) XXX_Merge(src proto.Message) { 573 xxx_messageInfo_PricingExpression_TierRate.Merge(m, src) 574} 575func (m *PricingExpression_TierRate) XXX_Size() int { 576 return xxx_messageInfo_PricingExpression_TierRate.Size(m) 577} 578func (m *PricingExpression_TierRate) XXX_DiscardUnknown() { 579 xxx_messageInfo_PricingExpression_TierRate.DiscardUnknown(m) 580} 581 582var xxx_messageInfo_PricingExpression_TierRate proto.InternalMessageInfo 583 584func (m *PricingExpression_TierRate) GetStartUsageAmount() float64 { 585 if m != nil { 586 return m.StartUsageAmount 587 } 588 return 0 589} 590 591func (m *PricingExpression_TierRate) GetUnitPrice() *money.Money { 592 if m != nil { 593 return m.UnitPrice 594 } 595 return nil 596} 597 598// Represents the aggregation level and interval for pricing of a single SKU. 599type AggregationInfo struct { 600 AggregationLevel AggregationInfo_AggregationLevel `protobuf:"varint,1,opt,name=aggregation_level,json=aggregationLevel,proto3,enum=google.cloud.billing.v1.AggregationInfo_AggregationLevel" json:"aggregation_level,omitempty"` 601 AggregationInterval AggregationInfo_AggregationInterval `protobuf:"varint,2,opt,name=aggregation_interval,json=aggregationInterval,proto3,enum=google.cloud.billing.v1.AggregationInfo_AggregationInterval" json:"aggregation_interval,omitempty"` 602 // The number of intervals to aggregate over. 603 // Example: If aggregation_level is "DAILY" and aggregation_count is 14, 604 // aggregation will be over 14 days. 605 AggregationCount int32 `protobuf:"varint,3,opt,name=aggregation_count,json=aggregationCount,proto3" json:"aggregation_count,omitempty"` 606 XXX_NoUnkeyedLiteral struct{} `json:"-"` 607 XXX_unrecognized []byte `json:"-"` 608 XXX_sizecache int32 `json:"-"` 609} 610 611func (m *AggregationInfo) Reset() { *m = AggregationInfo{} } 612func (m *AggregationInfo) String() string { return proto.CompactTextString(m) } 613func (*AggregationInfo) ProtoMessage() {} 614func (*AggregationInfo) Descriptor() ([]byte, []int) { 615 return fileDescriptor_4ca652323baa1561, []int{5} 616} 617 618func (m *AggregationInfo) XXX_Unmarshal(b []byte) error { 619 return xxx_messageInfo_AggregationInfo.Unmarshal(m, b) 620} 621func (m *AggregationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 622 return xxx_messageInfo_AggregationInfo.Marshal(b, m, deterministic) 623} 624func (m *AggregationInfo) XXX_Merge(src proto.Message) { 625 xxx_messageInfo_AggregationInfo.Merge(m, src) 626} 627func (m *AggregationInfo) XXX_Size() int { 628 return xxx_messageInfo_AggregationInfo.Size(m) 629} 630func (m *AggregationInfo) XXX_DiscardUnknown() { 631 xxx_messageInfo_AggregationInfo.DiscardUnknown(m) 632} 633 634var xxx_messageInfo_AggregationInfo proto.InternalMessageInfo 635 636func (m *AggregationInfo) GetAggregationLevel() AggregationInfo_AggregationLevel { 637 if m != nil { 638 return m.AggregationLevel 639 } 640 return AggregationInfo_AGGREGATION_LEVEL_UNSPECIFIED 641} 642 643func (m *AggregationInfo) GetAggregationInterval() AggregationInfo_AggregationInterval { 644 if m != nil { 645 return m.AggregationInterval 646 } 647 return AggregationInfo_AGGREGATION_INTERVAL_UNSPECIFIED 648} 649 650func (m *AggregationInfo) GetAggregationCount() int32 { 651 if m != nil { 652 return m.AggregationCount 653 } 654 return 0 655} 656 657// Request message for `ListServices`. 658type ListServicesRequest struct { 659 // Requested page size. Defaults to 5000. 660 PageSize int32 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 661 // A token identifying a page of results to return. This should be a 662 // `next_page_token` value returned from a previous `ListServices` 663 // call. If unspecified, the first page of results is returned. 664 PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 665 XXX_NoUnkeyedLiteral struct{} `json:"-"` 666 XXX_unrecognized []byte `json:"-"` 667 XXX_sizecache int32 `json:"-"` 668} 669 670func (m *ListServicesRequest) Reset() { *m = ListServicesRequest{} } 671func (m *ListServicesRequest) String() string { return proto.CompactTextString(m) } 672func (*ListServicesRequest) ProtoMessage() {} 673func (*ListServicesRequest) Descriptor() ([]byte, []int) { 674 return fileDescriptor_4ca652323baa1561, []int{6} 675} 676 677func (m *ListServicesRequest) XXX_Unmarshal(b []byte) error { 678 return xxx_messageInfo_ListServicesRequest.Unmarshal(m, b) 679} 680func (m *ListServicesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 681 return xxx_messageInfo_ListServicesRequest.Marshal(b, m, deterministic) 682} 683func (m *ListServicesRequest) XXX_Merge(src proto.Message) { 684 xxx_messageInfo_ListServicesRequest.Merge(m, src) 685} 686func (m *ListServicesRequest) XXX_Size() int { 687 return xxx_messageInfo_ListServicesRequest.Size(m) 688} 689func (m *ListServicesRequest) XXX_DiscardUnknown() { 690 xxx_messageInfo_ListServicesRequest.DiscardUnknown(m) 691} 692 693var xxx_messageInfo_ListServicesRequest proto.InternalMessageInfo 694 695func (m *ListServicesRequest) GetPageSize() int32 { 696 if m != nil { 697 return m.PageSize 698 } 699 return 0 700} 701 702func (m *ListServicesRequest) GetPageToken() string { 703 if m != nil { 704 return m.PageToken 705 } 706 return "" 707} 708 709// Response message for `ListServices`. 710type ListServicesResponse struct { 711 // A list of services. 712 Services []*Service `protobuf:"bytes,1,rep,name=services,proto3" json:"services,omitempty"` 713 // A token to retrieve the next page of results. To retrieve the next page, 714 // call `ListServices` again with the `page_token` field set to this 715 // value. This field is empty if there are no more results to retrieve. 716 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 717 XXX_NoUnkeyedLiteral struct{} `json:"-"` 718 XXX_unrecognized []byte `json:"-"` 719 XXX_sizecache int32 `json:"-"` 720} 721 722func (m *ListServicesResponse) Reset() { *m = ListServicesResponse{} } 723func (m *ListServicesResponse) String() string { return proto.CompactTextString(m) } 724func (*ListServicesResponse) ProtoMessage() {} 725func (*ListServicesResponse) Descriptor() ([]byte, []int) { 726 return fileDescriptor_4ca652323baa1561, []int{7} 727} 728 729func (m *ListServicesResponse) XXX_Unmarshal(b []byte) error { 730 return xxx_messageInfo_ListServicesResponse.Unmarshal(m, b) 731} 732func (m *ListServicesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 733 return xxx_messageInfo_ListServicesResponse.Marshal(b, m, deterministic) 734} 735func (m *ListServicesResponse) XXX_Merge(src proto.Message) { 736 xxx_messageInfo_ListServicesResponse.Merge(m, src) 737} 738func (m *ListServicesResponse) XXX_Size() int { 739 return xxx_messageInfo_ListServicesResponse.Size(m) 740} 741func (m *ListServicesResponse) XXX_DiscardUnknown() { 742 xxx_messageInfo_ListServicesResponse.DiscardUnknown(m) 743} 744 745var xxx_messageInfo_ListServicesResponse proto.InternalMessageInfo 746 747func (m *ListServicesResponse) GetServices() []*Service { 748 if m != nil { 749 return m.Services 750 } 751 return nil 752} 753 754func (m *ListServicesResponse) GetNextPageToken() string { 755 if m != nil { 756 return m.NextPageToken 757 } 758 return "" 759} 760 761// Request message for `ListSkus`. 762type ListSkusRequest struct { 763 // Required. The name of the service. 764 // Example: "services/DA34-426B-A397" 765 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 766 // Optional inclusive start time of the time range for which the pricing 767 // versions will be returned. Timestamps in the future are not allowed. 768 // The time range has to be within a single calendar month in 769 // America/Los_Angeles timezone. Time range as a whole is optional. If not 770 // specified, the latest pricing will be returned (up to 12 hours old at 771 // most). 772 StartTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 773 // Optional exclusive end time of the time range for which the pricing 774 // versions will be returned. Timestamps in the future are not allowed. 775 // The time range has to be within a single calendar month in 776 // America/Los_Angeles timezone. Time range as a whole is optional. If not 777 // specified, the latest pricing will be returned (up to 12 hours old at 778 // most). 779 EndTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` 780 // The ISO 4217 currency code for the pricing info in the response proto. 781 // Will use the conversion rate as of start_time. 782 // Optional. If not specified USD will be used. 783 CurrencyCode string `protobuf:"bytes,4,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"` 784 // Requested page size. Defaults to 5000. 785 PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 786 // A token identifying a page of results to return. This should be a 787 // `next_page_token` value returned from a previous `ListSkus` 788 // call. If unspecified, the first page of results is returned. 789 PageToken string `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 790 XXX_NoUnkeyedLiteral struct{} `json:"-"` 791 XXX_unrecognized []byte `json:"-"` 792 XXX_sizecache int32 `json:"-"` 793} 794 795func (m *ListSkusRequest) Reset() { *m = ListSkusRequest{} } 796func (m *ListSkusRequest) String() string { return proto.CompactTextString(m) } 797func (*ListSkusRequest) ProtoMessage() {} 798func (*ListSkusRequest) Descriptor() ([]byte, []int) { 799 return fileDescriptor_4ca652323baa1561, []int{8} 800} 801 802func (m *ListSkusRequest) XXX_Unmarshal(b []byte) error { 803 return xxx_messageInfo_ListSkusRequest.Unmarshal(m, b) 804} 805func (m *ListSkusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 806 return xxx_messageInfo_ListSkusRequest.Marshal(b, m, deterministic) 807} 808func (m *ListSkusRequest) XXX_Merge(src proto.Message) { 809 xxx_messageInfo_ListSkusRequest.Merge(m, src) 810} 811func (m *ListSkusRequest) XXX_Size() int { 812 return xxx_messageInfo_ListSkusRequest.Size(m) 813} 814func (m *ListSkusRequest) XXX_DiscardUnknown() { 815 xxx_messageInfo_ListSkusRequest.DiscardUnknown(m) 816} 817 818var xxx_messageInfo_ListSkusRequest proto.InternalMessageInfo 819 820func (m *ListSkusRequest) GetParent() string { 821 if m != nil { 822 return m.Parent 823 } 824 return "" 825} 826 827func (m *ListSkusRequest) GetStartTime() *timestamp.Timestamp { 828 if m != nil { 829 return m.StartTime 830 } 831 return nil 832} 833 834func (m *ListSkusRequest) GetEndTime() *timestamp.Timestamp { 835 if m != nil { 836 return m.EndTime 837 } 838 return nil 839} 840 841func (m *ListSkusRequest) GetCurrencyCode() string { 842 if m != nil { 843 return m.CurrencyCode 844 } 845 return "" 846} 847 848func (m *ListSkusRequest) GetPageSize() int32 { 849 if m != nil { 850 return m.PageSize 851 } 852 return 0 853} 854 855func (m *ListSkusRequest) GetPageToken() string { 856 if m != nil { 857 return m.PageToken 858 } 859 return "" 860} 861 862// Response message for `ListSkus`. 863type ListSkusResponse struct { 864 // The list of public SKUs of the given service. 865 Skus []*Sku `protobuf:"bytes,1,rep,name=skus,proto3" json:"skus,omitempty"` 866 // A token to retrieve the next page of results. To retrieve the next page, 867 // call `ListSkus` again with the `page_token` field set to this 868 // value. This field is empty if there are no more results to retrieve. 869 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 870 XXX_NoUnkeyedLiteral struct{} `json:"-"` 871 XXX_unrecognized []byte `json:"-"` 872 XXX_sizecache int32 `json:"-"` 873} 874 875func (m *ListSkusResponse) Reset() { *m = ListSkusResponse{} } 876func (m *ListSkusResponse) String() string { return proto.CompactTextString(m) } 877func (*ListSkusResponse) ProtoMessage() {} 878func (*ListSkusResponse) Descriptor() ([]byte, []int) { 879 return fileDescriptor_4ca652323baa1561, []int{9} 880} 881 882func (m *ListSkusResponse) XXX_Unmarshal(b []byte) error { 883 return xxx_messageInfo_ListSkusResponse.Unmarshal(m, b) 884} 885func (m *ListSkusResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 886 return xxx_messageInfo_ListSkusResponse.Marshal(b, m, deterministic) 887} 888func (m *ListSkusResponse) XXX_Merge(src proto.Message) { 889 xxx_messageInfo_ListSkusResponse.Merge(m, src) 890} 891func (m *ListSkusResponse) XXX_Size() int { 892 return xxx_messageInfo_ListSkusResponse.Size(m) 893} 894func (m *ListSkusResponse) XXX_DiscardUnknown() { 895 xxx_messageInfo_ListSkusResponse.DiscardUnknown(m) 896} 897 898var xxx_messageInfo_ListSkusResponse proto.InternalMessageInfo 899 900func (m *ListSkusResponse) GetSkus() []*Sku { 901 if m != nil { 902 return m.Skus 903 } 904 return nil 905} 906 907func (m *ListSkusResponse) GetNextPageToken() string { 908 if m != nil { 909 return m.NextPageToken 910 } 911 return "" 912} 913 914func init() { 915 proto.RegisterEnum("google.cloud.billing.v1.AggregationInfo_AggregationLevel", AggregationInfo_AggregationLevel_name, AggregationInfo_AggregationLevel_value) 916 proto.RegisterEnum("google.cloud.billing.v1.AggregationInfo_AggregationInterval", AggregationInfo_AggregationInterval_name, AggregationInfo_AggregationInterval_value) 917 proto.RegisterType((*Service)(nil), "google.cloud.billing.v1.Service") 918 proto.RegisterType((*Sku)(nil), "google.cloud.billing.v1.Sku") 919 proto.RegisterType((*Category)(nil), "google.cloud.billing.v1.Category") 920 proto.RegisterType((*PricingInfo)(nil), "google.cloud.billing.v1.PricingInfo") 921 proto.RegisterType((*PricingExpression)(nil), "google.cloud.billing.v1.PricingExpression") 922 proto.RegisterType((*PricingExpression_TierRate)(nil), "google.cloud.billing.v1.PricingExpression.TierRate") 923 proto.RegisterType((*AggregationInfo)(nil), "google.cloud.billing.v1.AggregationInfo") 924 proto.RegisterType((*ListServicesRequest)(nil), "google.cloud.billing.v1.ListServicesRequest") 925 proto.RegisterType((*ListServicesResponse)(nil), "google.cloud.billing.v1.ListServicesResponse") 926 proto.RegisterType((*ListSkusRequest)(nil), "google.cloud.billing.v1.ListSkusRequest") 927 proto.RegisterType((*ListSkusResponse)(nil), "google.cloud.billing.v1.ListSkusResponse") 928} 929 930func init() { 931 proto.RegisterFile("google/cloud/billing/v1/cloud_catalog.proto", fileDescriptor_4ca652323baa1561) 932} 933 934var fileDescriptor_4ca652323baa1561 = []byte{ 935 // 1446 bytes of a gzipped FileDescriptorProto 936 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0x4f, 0x6f, 0x1b, 0x45, 937 0x14, 0xef, 0xda, 0x75, 0x62, 0x3f, 0xe7, 0x8f, 0x33, 0x49, 0x1b, 0x93, 0xb4, 0x34, 0x75, 0x5b, 938 0x9a, 0xfe, 0xb3, 0x1b, 0x17, 0x24, 0x5a, 0x5a, 0xc4, 0xc6, 0x71, 0x83, 0x91, 0x9b, 0xa4, 0x1b, 939 0x27, 0x52, 0xb9, 0xac, 0x26, 0xeb, 0xf1, 0x76, 0xe5, 0xf5, 0xee, 0x76, 0x67, 0xd6, 0x6d, 0x5a, 940 0x7a, 0x41, 0x9c, 0xb9, 0x20, 0xf1, 0x01, 0xb8, 0x01, 0x9f, 0x81, 0x2f, 0xc0, 0x05, 0x09, 0x38, 941 0xf5, 0xc4, 0x81, 0x03, 0xea, 0x17, 0x40, 0x42, 0x1c, 0xd0, 0xcc, 0xce, 0xae, 0xd7, 0x4e, 0x93, 942 0x46, 0xdc, 0x3c, 0xbf, 0xf7, 0xff, 0xbd, 0xdf, 0xdb, 0x19, 0xc3, 0x35, 0xd3, 0x75, 0x4d, 0x9b, 943 0x54, 0x0c, 0xdb, 0x0d, 0xda, 0x95, 0x3d, 0xcb, 0xb6, 0x2d, 0xc7, 0xac, 0xf4, 0x57, 0x42, 0x40, 944 0x37, 0x30, 0xc3, 0xb6, 0x6b, 0x96, 0x3d, 0xdf, 0x65, 0x2e, 0x9a, 0x0f, 0x95, 0xcb, 0x42, 0x56, 945 0x96, 0xca, 0xe5, 0xfe, 0xca, 0xc2, 0x19, 0xe9, 0x05, 0x7b, 0x56, 0x05, 0x3b, 0x8e, 0xcb, 0x30, 946 0xb3, 0x5c, 0x87, 0x86, 0x66, 0x0b, 0xf3, 0x09, 0xa9, 0x61, 0x5b, 0xc4, 0x61, 0x52, 0x70, 0x2e, 947 0x21, 0xe8, 0x58, 0xc4, 0x6e, 0xeb, 0x7b, 0xe4, 0x31, 0xee, 0x5b, 0xae, 0x2f, 0x15, 0xde, 0x49, 948 0x28, 0xf8, 0x84, 0xba, 0x81, 0x6f, 0x90, 0x11, 0x5b, 0x71, 0xda, 0x0b, 0x3a, 0x15, 0x66, 0xf5, 949 0x08, 0x65, 0xb8, 0xe7, 0x8d, 0x44, 0x65, 0xfb, 0x1e, 0xa9, 0xf4, 0x5c, 0x87, 0xec, 0x87, 0x82, 950 0xd2, 0x2f, 0x0a, 0x8c, 0x6f, 0x13, 0xbf, 0x6f, 0x19, 0x04, 0x21, 0x38, 0xe9, 0xe0, 0x1e, 0x29, 951 0x2a, 0x4b, 0xca, 0x72, 0x4e, 0x13, 0xbf, 0xd1, 0x59, 0x00, 0x1a, 0x8a, 0x75, 0xab, 0x5d, 0x4c, 952 0x09, 0x49, 0x4e, 0x22, 0x8d, 0x36, 0x3a, 0x0f, 0x13, 0x6d, 0x8b, 0x7a, 0x36, 0xde, 0xd7, 0x85, 953 0x69, 0x5a, 0x28, 0xe4, 0x25, 0xb6, 0xc1, 0x3d, 0xdc, 0x84, 0xb9, 0xbd, 0x80, 0x5a, 0x0e, 0xa1, 954 0x54, 0x27, 0x0e, 0xb3, 0x98, 0x54, 0x3d, 0x29, 0x54, 0x51, 0x24, 0xab, 0x0b, 0x11, 0xb7, 0xb8, 955 0x73, 0xf7, 0xb5, 0x7a, 0x1b, 0x2e, 0x88, 0xbe, 0x46, 0x6d, 0x0d, 0xd3, 0xc7, 0x9e, 0x45, 0xcb, 956 0x86, 0xdb, 0xab, 0xc4, 0x19, 0xcb, 0x4c, 0x68, 0xe5, 0x85, 0xfc, 0xf5, 0xb2, 0xf4, 0x6f, 0x0a, 957 0xd2, 0xdb, 0xdd, 0xe0, 0x8d, 0xd5, 0x9c, 0x82, 0x31, 0xda, 0x0d, 0x06, 0x95, 0x64, 0x68, 0x37, 958 0x68, 0xb4, 0xd1, 0x12, 0xe4, 0xdb, 0x84, 0x1a, 0xbe, 0xe5, 0xf1, 0x49, 0xc5, 0x45, 0x0c, 0x20, 959 0x74, 0x0f, 0xb2, 0x06, 0x66, 0xc4, 0x74, 0xfd, 0x7d, 0x91, 0x78, 0xbe, 0x7a, 0xbe, 0x7c, 0xc8, 960 0xfc, 0xcb, 0x35, 0xa9, 0xa8, 0xc5, 0x26, 0xe8, 0x32, 0x4c, 0x47, 0x5d, 0xf4, 0x89, 0xc9, 0xd9, 961 0x50, 0xcc, 0x2c, 0xa5, 0x97, 0x73, 0xda, 0x94, 0x84, 0xb5, 0x10, 0x45, 0xeb, 0x30, 0xe1, 0xf9, 962 0x96, 0x61, 0x39, 0xa6, 0x6e, 0x39, 0x1d, 0xb7, 0x38, 0xb6, 0x94, 0x5e, 0xce, 0x57, 0x2f, 0x1e, 963 0x1a, 0x6b, 0x2b, 0x54, 0x6e, 0x38, 0x1d, 0x57, 0xcb, 0x7b, 0x83, 0x03, 0xaa, 0xc2, 0xa9, 0x28, 964 0xa2, 0xe7, 0xbb, 0x7d, 0xab, 0x4d, 0xfc, 0xb0, 0xed, 0xe3, 0xa2, 0xb8, 0x59, 0x29, 0xdc, 0x92, 965 0x32, 0xd1, 0xf7, 0xda, 0x6b, 0xf5, 0x13, 0x38, 0x77, 0x64, 0xdf, 0xbb, 0x01, 0x3a, 0x7b, 0xb0, 966 0xe7, 0x15, 0xda, 0x0d, 0xf8, 0xb1, 0x1b, 0xbc, 0x2c, 0xfd, 0xa8, 0x40, 0x36, 0xea, 0x00, 0x9f, 967 0x7d, 0x94, 0xc5, 0x10, 0x4d, 0xc2, 0x99, 0x44, 0xd3, 0x5b, 0x4b, 0xb0, 0xe5, 0x32, 0x4c, 0x47, 968 0xdc, 0xd6, 0x3b, 0xb8, 0x67, 0xd9, 0xfb, 0x72, 0x54, 0x53, 0x11, 0x7c, 0x5f, 0xa0, 0xe8, 0x12, 969 0xc4, 0x88, 0x6e, 0xfa, 0x6e, 0xe0, 0xc9, 0xb1, 0x4d, 0x46, 0xe8, 0x3a, 0x07, 0x39, 0x7f, 0x03, 970 0x8a, 0x4d, 0xa2, 0x73, 0xe6, 0x4b, 0xce, 0xe5, 0x04, 0xd2, 0xda, 0xf7, 0x48, 0xe9, 0xf7, 0x14, 971 0xe4, 0x13, 0x3d, 0x44, 0x2a, 0x4c, 0x91, 0x4e, 0x87, 0x18, 0xcc, 0xea, 0x13, 0x9d, 0x2f, 0x91, 972 0x48, 0x35, 0x5f, 0x5d, 0x88, 0x26, 0x10, 0x6d, 0x58, 0xb9, 0x15, 0x6d, 0x98, 0x36, 0x19, 0x5b, 973 0x70, 0x0c, 0x15, 0x61, 0x9c, 0x06, 0xbd, 0x1e, 0xf6, 0xa3, 0xcc, 0xa3, 0x23, 0x7a, 0x04, 0x28, 974 0x1a, 0x2e, 0x79, 0xe6, 0xf9, 0x84, 0xd2, 0x88, 0x6d, 0xf9, 0xea, 0xd5, 0xb7, 0x8d, 0xb8, 0x1e, 975 0x5b, 0x68, 0x33, 0xde, 0x28, 0x84, 0xb6, 0xa1, 0x80, 0x4d, 0xd3, 0x27, 0xa6, 0xf8, 0xd6, 0x84, 976 0xdc, 0x09, 0x79, 0xba, 0x7c, 0xa8, 0x63, 0x75, 0x60, 0x20, 0xf8, 0x33, 0x8d, 0x87, 0x01, 0xf4, 977 0x21, 0x14, 0x8d, 0xc0, 0xf7, 0x89, 0x63, 0xec, 0xeb, 0x86, 0xeb, 0xf4, 0x89, 0xcf, 0x63, 0xe9, 978 0x3e, 0x66, 0xa4, 0x98, 0x59, 0x52, 0x96, 0x15, 0xed, 0x74, 0x24, 0xaf, 0xc5, 0x62, 0x0d, 0x33, 979 0x52, 0xfa, 0x2b, 0x0d, 0x33, 0x07, 0xf2, 0x1e, 0xcc, 0x22, 0x70, 0x2c, 0x26, 0x39, 0x10, 0xce, 980 0x62, 0xc7, 0xb1, 0x18, 0x7a, 0x1f, 0x4e, 0x0f, 0xc4, 0x7a, 0x72, 0x21, 0xc3, 0xb1, 0xcd, 0xc5, 981 0xaa, 0x6b, 0x89, 0xcd, 0x5c, 0x84, 0xdc, 0x1e, 0xa6, 0xd2, 0x67, 0x46, 0x28, 0x66, 0x39, 0x20, 982 0x5c, 0x56, 0xe1, 0x54, 0x2c, 0x1c, 0xf2, 0x38, 0x16, 0x6e, 0x41, 0xa4, 0xb8, 0x36, 0xb4, 0xea, 983 0x8b, 0x03, 0x9b, 0x44, 0xd9, 0x1d, 0x6c, 0x30, 0xd7, 0x17, 0xfb, 0xa3, 0x68, 0xc5, 0xc8, 0x72, 984 0x50, 0xf8, 0x7d, 0x21, 0x47, 0x57, 0xa0, 0x10, 0x51, 0xfd, 0x49, 0x80, 0xc5, 0x47, 0x4d, 0xf0, 985 0x40, 0xd1, 0xa6, 0x25, 0xfe, 0x50, 0xc2, 0x68, 0x17, 0x26, 0x98, 0x45, 0x7c, 0xd2, 0x16, 0x2d, 986 0xa5, 0xc5, 0xb4, 0x58, 0xf6, 0x5b, 0xc7, 0x67, 0x42, 0xb9, 0x65, 0x11, 0x9f, 0x37, 0x5c, 0xcb, 987 0x87, 0x8e, 0xf8, 0x6f, 0xba, 0xd0, 0x85, 0x6c, 0x24, 0x40, 0xd7, 0x01, 0x51, 0x86, 0x7d, 0xa6, 988 0x87, 0xad, 0xc5, 0x3d, 0x37, 0x70, 0xc2, 0xde, 0x2b, 0x5a, 0x41, 0x48, 0x76, 0xb8, 0x40, 0x15, 989 0x38, 0x5a, 0x01, 0x10, 0x65, 0x73, 0x82, 0x11, 0x91, 0x76, 0xbe, 0x8a, 0xa2, 0x7c, 0xf8, 0x06, 990 0x95, 0x1f, 0xf0, 0xbb, 0x43, 0xcb, 0x71, 0x2d, 0x9e, 0x0e, 0x29, 0xfd, 0x94, 0x86, 0xe9, 0x11, 991 0x26, 0xa1, 0x0e, 0xcc, 0x24, 0xd9, 0x68, 0x93, 0x3e, 0xb1, 0x45, 0xcc, 0xa9, 0xea, 0xed, 0xe3, 992 0xd2, 0x31, 0x79, 0x6e, 0x72, 0x07, 0x5a, 0x92, 0xe1, 0x02, 0x41, 0x2e, 0xcc, 0x0d, 0xb3, 0x9e, 993 0x11, 0xbf, 0x8f, 0x6d, 0x91, 0xf8, 0x54, 0xf5, 0xee, 0xff, 0x09, 0xd5, 0x90, 0x3e, 0xb4, 0x59, 994 0x7c, 0x10, 0x44, 0xd7, 0x86, 0x0b, 0x33, 0x44, 0x33, 0xf9, 0x02, 0x67, 0x86, 0xb2, 0xab, 0x71, 995 0xbc, 0xb4, 0x09, 0x85, 0xd1, 0x1a, 0xd0, 0x79, 0x38, 0xab, 0xae, 0xaf, 0x6b, 0xf5, 0x75, 0xb5, 996 0xd5, 0xd8, 0xdc, 0xd0, 0x9b, 0xf5, 0xdd, 0x7a, 0x53, 0xdf, 0xd9, 0xd8, 0xde, 0xaa, 0xd7, 0x1a, 997 0xf7, 0x1b, 0xf5, 0xb5, 0xc2, 0x09, 0x94, 0x87, 0x71, 0xb5, 0x56, 0xdb, 0xdc, 0xd9, 0x68, 0x15, 998 0x14, 0x7e, 0xd8, 0xd2, 0x36, 0x3f, 0xab, 0xd7, 0x5a, 0x85, 0x54, 0x69, 0x1b, 0x66, 0xdf, 0x90, 999 0x29, 0xba, 0x08, 0x4b, 0x49, 0x9f, 0x8d, 0x8d, 0x56, 0x5d, 0xdb, 0x55, 0x47, 0xdd, 0xe6, 0x20, 1000 0xb3, 0xa6, 0x36, 0x9a, 0x8f, 0x42, 0xa7, 0x0f, 0x36, 0x37, 0x5a, 0x9f, 0x36, 0x1f, 0x15, 0x52, 1001 0xa5, 0x87, 0x30, 0xdb, 0xb4, 0x28, 0x93, 0x37, 0x2a, 0xd5, 0xc8, 0x93, 0x80, 0x50, 0xc6, 0xd7, 1002 0xca, 0xe3, 0x84, 0xa1, 0xd6, 0xf3, 0xf0, 0x1b, 0x98, 0xd1, 0xb2, 0x1c, 0xd8, 0xb6, 0x9e, 0x8b, 1003 0x47, 0x81, 0x10, 0x32, 0xb7, 0x4b, 0x9c, 0xe8, 0x51, 0xc0, 0x91, 0x16, 0x07, 0x4a, 0x5f, 0xc0, 1004 0xdc, 0xb0, 0x4b, 0xea, 0xb9, 0x0e, 0x25, 0xe8, 0x2e, 0x64, 0xa3, 0xbb, 0xa3, 0xa8, 0x08, 0xae, 1005 0x2f, 0x1d, 0x3a, 0x22, 0x69, 0xac, 0xc5, 0x16, 0xe8, 0x3d, 0x98, 0x76, 0xc8, 0x33, 0xa6, 0x1f, 1006 0x88, 0x3c, 0xc9, 0xe1, 0xad, 0x38, 0xfa, 0xf7, 0x29, 0x98, 0x16, 0xe1, 0xbb, 0x41, 0x5c, 0x4d, 1007 0x0d, 0xc6, 0x3c, 0xec, 0x13, 0xc9, 0xfc, 0xdc, 0xea, 0xb5, 0x3f, 0xd4, 0xd4, 0x3f, 0xea, 0xa5, 1008 0x63, 0x3d, 0x32, 0x34, 0x69, 0x8a, 0x6e, 0x03, 0x84, 0xab, 0x24, 0xee, 0x85, 0xd4, 0x5b, 0xef, 1009 0x85, 0x9c, 0xd0, 0x16, 0x77, 0xc2, 0x07, 0x90, 0x25, 0x4e, 0x3b, 0x34, 0x4c, 0xbf, 0xd5, 0x70, 1010 0x9c, 0x38, 0x6d, 0x61, 0x76, 0x01, 0x26, 0x13, 0x1f, 0xe0, 0x76, 0x74, 0x7f, 0x4d, 0x0c, 0xbe, 1011 0xba, 0x6d, 0x32, 0x3c, 0xa9, 0xcc, 0x91, 0x93, 0x1a, 0x1b, 0x9d, 0x94, 0x0d, 0x85, 0x41, 0xab, 1012 0xe4, 0x94, 0x6e, 0xc2, 0x49, 0x7e, 0x9d, 0xcb, 0x09, 0x9d, 0x39, 0x7c, 0x42, 0xdd, 0x40, 0x13, 1013 0x9a, 0xc7, 0x9d, 0x4c, 0xf5, 0xef, 0x14, 0x4c, 0xd4, 0xb8, 0x9b, 0x5a, 0xf8, 0x90, 0x46, 0x5f, 1014 0x29, 0x30, 0x91, 0x64, 0x0a, 0xba, 0x7e, 0x68, 0xb4, 0x37, 0x70, 0x74, 0xe1, 0xc6, 0x31, 0xb5, 1015 0xc3, 0xc2, 0x4a, 0xf3, 0xaf, 0xd4, 0x13, 0x5f, 0xfe, 0xf6, 0xe7, 0x37, 0xa9, 0x29, 0x34, 0xc1, 1016 0x1f, 0xf5, 0x31, 0xb3, 0xbe, 0x56, 0x20, 0x1b, 0xb5, 0x01, 0x2d, 0x1f, 0xed, 0x74, 0x40, 0xaa, 1017 0x85, 0x2b, 0xc7, 0xd0, 0x94, 0xa1, 0x6f, 0xbc, 0x52, 0x25, 0x8b, 0x44, 0x02, 0xef, 0xa2, 0x33, 1018 0x3c, 0x81, 0x17, 0x21, 0x74, 0x2f, 0x7e, 0x50, 0x5d, 0x0d, 0x5f, 0x52, 0x0b, 0x9b, 0x3f, 0xab, 1019 0x8b, 0x47, 0x30, 0xf3, 0x57, 0xb5, 0xfc, 0x98, 0x31, 0x8f, 0xde, 0xa9, 0x54, 0x9e, 0x3e, 0x7d, 1020 0x3a, 0x4a, 0x5b, 0x1c, 0xb0, 0xc7, 0xe1, 0x1f, 0x96, 0x1b, 0x9e, 0x8d, 0x59, 0xc7, 0xf5, 0x7b, 1021 0xab, 0xdf, 0x2a, 0xb0, 0x68, 0xb8, 0xbd, 0xc3, 0x12, 0x5e, 0x9d, 0x49, 0x8e, 0x65, 0x8b, 0x33, 1022 0x72, 0x4b, 0xf9, 0xfc, 0x63, 0xa9, 0x6d, 0xba, 0x36, 0x76, 0xcc, 0xb2, 0xeb, 0x9b, 0x15, 0x93, 1023 0x38, 0x82, 0xaf, 0x95, 0x41, 0xcc, 0x03, 0x7f, 0x96, 0x3e, 0x92, 0x3f, 0xbf, 0x4b, 0x8d, 0xd7, 1024 0x9a, 0x6b, 0xb5, 0x56, 0x73, 0xfd, 0x87, 0xd4, 0xfc, 0x7a, 0xe8, 0x4a, 0x84, 0x29, 0xaf, 0xca, 1025 0xc0, 0xbb, 0x2b, 0x7b, 0x63, 0xc2, 0xdd, 0xad, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x98, 0x2d, 1026 0xcc, 0x14, 0x7a, 0x0d, 0x00, 0x00, 1027} 1028 1029// Reference imports to suppress errors if they are not otherwise used. 1030var _ context.Context 1031var _ grpc.ClientConnInterface 1032 1033// This is a compile-time assertion to ensure that this generated file 1034// is compatible with the grpc package it is being compiled against. 1035const _ = grpc.SupportPackageIsVersion6 1036 1037// CloudCatalogClient is the client API for CloudCatalog service. 1038// 1039// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 1040type CloudCatalogClient interface { 1041 // Lists all public cloud services. 1042 ListServices(ctx context.Context, in *ListServicesRequest, opts ...grpc.CallOption) (*ListServicesResponse, error) 1043 // Lists all publicly available SKUs for a given cloud service. 1044 ListSkus(ctx context.Context, in *ListSkusRequest, opts ...grpc.CallOption) (*ListSkusResponse, error) 1045} 1046 1047type cloudCatalogClient struct { 1048 cc grpc.ClientConnInterface 1049} 1050 1051func NewCloudCatalogClient(cc grpc.ClientConnInterface) CloudCatalogClient { 1052 return &cloudCatalogClient{cc} 1053} 1054 1055func (c *cloudCatalogClient) ListServices(ctx context.Context, in *ListServicesRequest, opts ...grpc.CallOption) (*ListServicesResponse, error) { 1056 out := new(ListServicesResponse) 1057 err := c.cc.Invoke(ctx, "/google.cloud.billing.v1.CloudCatalog/ListServices", in, out, opts...) 1058 if err != nil { 1059 return nil, err 1060 } 1061 return out, nil 1062} 1063 1064func (c *cloudCatalogClient) ListSkus(ctx context.Context, in *ListSkusRequest, opts ...grpc.CallOption) (*ListSkusResponse, error) { 1065 out := new(ListSkusResponse) 1066 err := c.cc.Invoke(ctx, "/google.cloud.billing.v1.CloudCatalog/ListSkus", in, out, opts...) 1067 if err != nil { 1068 return nil, err 1069 } 1070 return out, nil 1071} 1072 1073// CloudCatalogServer is the server API for CloudCatalog service. 1074type CloudCatalogServer interface { 1075 // Lists all public cloud services. 1076 ListServices(context.Context, *ListServicesRequest) (*ListServicesResponse, error) 1077 // Lists all publicly available SKUs for a given cloud service. 1078 ListSkus(context.Context, *ListSkusRequest) (*ListSkusResponse, error) 1079} 1080 1081// UnimplementedCloudCatalogServer can be embedded to have forward compatible implementations. 1082type UnimplementedCloudCatalogServer struct { 1083} 1084 1085func (*UnimplementedCloudCatalogServer) ListServices(ctx context.Context, req *ListServicesRequest) (*ListServicesResponse, error) { 1086 return nil, status.Errorf(codes.Unimplemented, "method ListServices not implemented") 1087} 1088func (*UnimplementedCloudCatalogServer) ListSkus(ctx context.Context, req *ListSkusRequest) (*ListSkusResponse, error) { 1089 return nil, status.Errorf(codes.Unimplemented, "method ListSkus not implemented") 1090} 1091 1092func RegisterCloudCatalogServer(s *grpc.Server, srv CloudCatalogServer) { 1093 s.RegisterService(&_CloudCatalog_serviceDesc, srv) 1094} 1095 1096func _CloudCatalog_ListServices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1097 in := new(ListServicesRequest) 1098 if err := dec(in); err != nil { 1099 return nil, err 1100 } 1101 if interceptor == nil { 1102 return srv.(CloudCatalogServer).ListServices(ctx, in) 1103 } 1104 info := &grpc.UnaryServerInfo{ 1105 Server: srv, 1106 FullMethod: "/google.cloud.billing.v1.CloudCatalog/ListServices", 1107 } 1108 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1109 return srv.(CloudCatalogServer).ListServices(ctx, req.(*ListServicesRequest)) 1110 } 1111 return interceptor(ctx, in, info, handler) 1112} 1113 1114func _CloudCatalog_ListSkus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1115 in := new(ListSkusRequest) 1116 if err := dec(in); err != nil { 1117 return nil, err 1118 } 1119 if interceptor == nil { 1120 return srv.(CloudCatalogServer).ListSkus(ctx, in) 1121 } 1122 info := &grpc.UnaryServerInfo{ 1123 Server: srv, 1124 FullMethod: "/google.cloud.billing.v1.CloudCatalog/ListSkus", 1125 } 1126 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1127 return srv.(CloudCatalogServer).ListSkus(ctx, req.(*ListSkusRequest)) 1128 } 1129 return interceptor(ctx, in, info, handler) 1130} 1131 1132var _CloudCatalog_serviceDesc = grpc.ServiceDesc{ 1133 ServiceName: "google.cloud.billing.v1.CloudCatalog", 1134 HandlerType: (*CloudCatalogServer)(nil), 1135 Methods: []grpc.MethodDesc{ 1136 { 1137 MethodName: "ListServices", 1138 Handler: _CloudCatalog_ListServices_Handler, 1139 }, 1140 { 1141 MethodName: "ListSkus", 1142 Handler: _CloudCatalog_ListSkus_Handler, 1143 }, 1144 }, 1145 Streams: []grpc.StreamDesc{}, 1146 Metadata: "google/cloud/billing/v1/cloud_catalog.proto", 1147} 1148