@@ -304,6 +304,135 @@ func (enum *PublicCatalogProductPropertiesHardwareCPUArch) UnmarshalJSON(data []
304304 return nil
305305}
306306
307+ type PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass string
308+
309+ const (
310+ // Unknown storage class.
311+ PublicCatalogProductPropertiesObjectStorageClassTypeStorageClassUnknownStorageClass = PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ("unknown_storage_class" )
312+ // Standard storage class.
313+ PublicCatalogProductPropertiesObjectStorageClassTypeStorageClassStandard = PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ("standard" )
314+ // Glacier storage class.
315+ PublicCatalogProductPropertiesObjectStorageClassTypeStorageClassGlacier = PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ("glacier" )
316+ // One Zone Infrequent Access storage class.
317+ PublicCatalogProductPropertiesObjectStorageClassTypeStorageClassOnezoneIa = PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ("onezone_ia" )
318+ )
319+
320+ func (enum PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ) String () string {
321+ if enum == "" {
322+ // return default value if empty
323+ return string (PublicCatalogProductPropertiesObjectStorageClassTypeStorageClassUnknownStorageClass )
324+ }
325+ return string (enum )
326+ }
327+
328+ func (enum PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ) Values () []PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass {
329+ return []PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass {
330+ "unknown_storage_class" ,
331+ "standard" ,
332+ "glacier" ,
333+ "onezone_ia" ,
334+ }
335+ }
336+
337+ func (enum PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ) MarshalJSON () ([]byte , error ) {
338+ return []byte (fmt .Sprintf (`"%s"` , enum )), nil
339+ }
340+
341+ func (enum * PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass ) UnmarshalJSON (data []byte ) error {
342+ tmp := ""
343+
344+ if err := json .Unmarshal (data , & tmp ); err != nil {
345+ return err
346+ }
347+
348+ * enum = PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass (PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass (tmp ).String ())
349+ return nil
350+ }
351+
352+ type PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType string
353+
354+ const (
355+ // Unknown traffic type.
356+ PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficTypeUnknownTrafficType = PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ("unknown_traffic_type" )
357+ // Ingress traffic type.
358+ PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficTypeIngress = PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ("ingress" )
359+ // Egress traffic type.
360+ PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficTypeEgress = PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ("egress" )
361+ // Alliance traffic type.
362+ PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficTypeAlliance = PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ("alliance" )
363+ )
364+
365+ func (enum PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ) String () string {
366+ if enum == "" {
367+ // return default value if empty
368+ return string (PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficTypeUnknownTrafficType )
369+ }
370+ return string (enum )
371+ }
372+
373+ func (enum PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ) Values () []PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType {
374+ return []PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType {
375+ "unknown_traffic_type" ,
376+ "ingress" ,
377+ "egress" ,
378+ "alliance" ,
379+ }
380+ }
381+
382+ func (enum PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ) MarshalJSON () ([]byte , error ) {
383+ return []byte (fmt .Sprintf (`"%s"` , enum )), nil
384+ }
385+
386+ func (enum * PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType ) UnmarshalJSON (data []byte ) error {
387+ tmp := ""
388+
389+ if err := json .Unmarshal (data , & tmp ); err != nil {
390+ return err
391+ }
392+
393+ * enum = PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType (PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType (tmp ).String ())
394+ return nil
395+ }
396+
397+ type PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType string
398+
399+ const (
400+ // Unknown restore type.
401+ PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreTypeUnknownRestoreType = PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType ("unknown_restore_type" )
402+ // Standard restore type.
403+ PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreTypeStandard = PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType ("standard" )
404+ )
405+
406+ func (enum PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType ) String () string {
407+ if enum == "" {
408+ // return default value if empty
409+ return string (PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreTypeUnknownRestoreType )
410+ }
411+ return string (enum )
412+ }
413+
414+ func (enum PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType ) Values () []PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType {
415+ return []PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType {
416+ "unknown_restore_type" ,
417+ "standard" ,
418+ }
419+ }
420+
421+ func (enum PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType ) MarshalJSON () ([]byte , error ) {
422+ return []byte (fmt .Sprintf (`"%s"` , enum )), nil
423+ }
424+
425+ func (enum * PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType ) UnmarshalJSON (data []byte ) error {
426+ tmp := ""
427+
428+ if err := json .Unmarshal (data , & tmp ); err != nil {
429+ return err
430+ }
431+
432+ * enum = PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType (PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType (tmp ).String ())
433+ return nil
434+ }
435+
307436type PublicCatalogProductStatus string
308437
309438const (
@@ -586,6 +715,33 @@ type PublicCatalogProductPropertiesHardwareStorage struct {
586715 Total scw.Size `json:"total"`
587716}
588717
718+ // PublicCatalogProductPropertiesObjectStorageClassType: public catalog product properties object storage class type.
719+ type PublicCatalogProductPropertiesObjectStorageClassType struct {
720+ // StorageClass: the storage class.
721+ // Default value: unknown_storage_class
722+ StorageClass PublicCatalogProductPropertiesObjectStorageClassTypeStorageClass `json:"storage_class"`
723+ }
724+
725+ // PublicCatalogProductPropertiesObjectStorageInternetTrafficType: public catalog product properties object storage internet traffic type.
726+ type PublicCatalogProductPropertiesObjectStorageInternetTrafficType struct {
727+ // TrafficType: the type of internet traffic.
728+ // Default value: unknown_traffic_type
729+ TrafficType PublicCatalogProductPropertiesObjectStorageInternetTrafficTypeTrafficType `json:"traffic_type"`
730+ }
731+
732+ // PublicCatalogProductPropertiesObjectStorageRegionTrafficType: public catalog product properties object storage region traffic type.
733+ type PublicCatalogProductPropertiesObjectStorageRegionTrafficType struct {
734+ // RegionDestination: the destination region for the region traffic.
735+ RegionDestination string `json:"region_destination"`
736+ }
737+
738+ // PublicCatalogProductPropertiesObjectStorageRestoreType: public catalog product properties object storage restore type.
739+ type PublicCatalogProductPropertiesObjectStorageRestoreType struct {
740+ // RestoreType: the type of restore.
741+ // Default value: unknown_restore_type
742+ RestoreType PublicCatalogProductPropertiesObjectStorageRestoreTypeRestoreType `json:"restore_type"`
743+ }
744+
589745// PublicCatalogProductPropertiesAppleSilicon: public catalog product properties apple silicon.
590746type PublicCatalogProductPropertiesAppleSilicon struct {
591747 // Range: the range of the Apple Silicon server.
@@ -675,7 +831,23 @@ type PublicCatalogProductPropertiesManagedInference struct {
675831}
676832
677833// PublicCatalogProductPropertiesObjectStorage: public catalog product properties object storage.
678- type PublicCatalogProductPropertiesObjectStorage struct {}
834+ type PublicCatalogProductPropertiesObjectStorage struct {
835+ // Class: the properties related to Object Storage class.
836+ // Precisely one of Class, Restore, InternetTraffic, RegionTraffic must be set.
837+ Class * PublicCatalogProductPropertiesObjectStorageClassType `json:"class,omitempty"`
838+
839+ // Restore: the properties related to Object Storage restore operations.
840+ // Precisely one of Class, Restore, InternetTraffic, RegionTraffic must be set.
841+ Restore * PublicCatalogProductPropertiesObjectStorageRestoreType `json:"restore,omitempty"`
842+
843+ // InternetTraffic: the properties related to Object Storage internet traffic.
844+ // Precisely one of Class, Restore, InternetTraffic, RegionTraffic must be set.
845+ InternetTraffic * PublicCatalogProductPropertiesObjectStorageInternetTrafficType `json:"internet_traffic,omitempty"`
846+
847+ // RegionTraffic: the properties related to Object Storage region traffic.
848+ // Precisely one of Class, Restore, InternetTraffic, RegionTraffic must be set.
849+ RegionTraffic * PublicCatalogProductPropertiesObjectStorageRegionTrafficType `json:"region_traffic,omitempty"`
850+ }
679851
680852// PublicCatalogProductPropertiesSecretManager: public catalog product properties secret manager.
681853type PublicCatalogProductPropertiesSecretManager struct {}
0 commit comments