github.com/vmware/govmomi@v0.37.1/pbm/types/enum.go (about)

     1  /*
     2  Copyright (c) 2014-2023 VMware, Inc. All Rights Reserved.
     3  
     4  Licensed under the Apache License, Version 2.0 (the "License");
     5  you may not use this file except in compliance with the License.
     6  You may obtain a copy of the License at
     7  
     8      http://www.apache.org/licenses/LICENSE-2.0
     9  
    10  Unless required by applicable law or agreed to in writing, software
    11  distributed under the License is distributed on an "AS IS" BASIS,
    12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  See the License for the specific language governing permissions and
    14  limitations under the License.
    15  */
    16  
    17  package types
    18  
    19  import (
    20  	"reflect"
    21  
    22  	"github.com/vmware/govmomi/vim25/types"
    23  )
    24  
    25  type PbmAssociateAndApplyPolicyStatusPolicyStatus string
    26  
    27  const (
    28  	// Policy applied successfully.
    29  	PbmAssociateAndApplyPolicyStatusPolicyStatusSuccess = PbmAssociateAndApplyPolicyStatusPolicyStatus("success")
    30  	// Policy cannot be applied
    31  	PbmAssociateAndApplyPolicyStatusPolicyStatusFailed = PbmAssociateAndApplyPolicyStatusPolicyStatus("failed")
    32  	// Policy cannot be applied
    33  	PbmAssociateAndApplyPolicyStatusPolicyStatusInvalid = PbmAssociateAndApplyPolicyStatusPolicyStatus("invalid")
    34  )
    35  
    36  func init() {
    37  	types.Add("pbm:PbmAssociateAndApplyPolicyStatusPolicyStatus", reflect.TypeOf((*PbmAssociateAndApplyPolicyStatusPolicyStatus)(nil)).Elem())
    38  }
    39  
    40  // The `PbmBuiltinGenericType_enum` enumerated type defines the list
    41  // of builtin generic datatypes.
    42  //
    43  // See
    44  // `PbmCapabilityGenericTypeInfo*.*PbmCapabilityGenericTypeInfo.genericTypeName`.
    45  //
    46  // A generic datatype indicates how to interpret a collection of values
    47  // of a specific datatype (`PbmCapabilityTypeInfo.typeName`).
    48  type PbmBuiltinGenericType string
    49  
    50  const (
    51  	// Indicates a full or partial range of values (`PbmCapabilityRange`).
    52  	//
    53  	// A full range specifies both <code>min</code> and <code>max</code> values.
    54  	// A partial range specifies one or the other, <code>min</code> or <code>max</code>.
    55  	PbmBuiltinGenericTypeVMW_RANGE = PbmBuiltinGenericType("VMW_RANGE")
    56  	// Indicates a single value or a discrete set of values
    57  	// (`PbmCapabilityDiscreteSet`).
    58  	PbmBuiltinGenericTypeVMW_SET = PbmBuiltinGenericType("VMW_SET")
    59  )
    60  
    61  func init() {
    62  	types.Add("pbm:PbmBuiltinGenericType", reflect.TypeOf((*PbmBuiltinGenericType)(nil)).Elem())
    63  }
    64  
    65  // The `PbmBuiltinType_enum` enumerated type defines datatypes
    66  // for storage profiles.
    67  //
    68  // Property metadata
    69  // (`PbmCapabilityPropertyMetadata`) uses the builtin types
    70  // to define data types for storage capabilities and requirements.
    71  // It may also specify the semantics that are applied to a collection
    72  // of builtin type values. See `PbmCapabilityTypeInfo`.
    73  // These semantics are specified as a generic builtin type.
    74  // See `PbmCapabilityGenericTypeInfo`.
    75  // The type information determines how capability constraints are interpreted
    76  // `PbmCapabilityPropertyInstance.value`).
    77  type PbmBuiltinType string
    78  
    79  const (
    80  	// Unsigned long value.
    81  	//
    82  	// This datatype supports the following constraint values.
    83  	//     - Single value
    84  	//     - Full or partial range of values (`PbmCapabilityRange`)
    85  	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
    86  	PbmBuiltinTypeXSD_LONG = PbmBuiltinType("XSD_LONG")
    87  	// Datatype not supported.
    88  	PbmBuiltinTypeXSD_SHORT = PbmBuiltinType("XSD_SHORT")
    89  	// Datatype not supported.
    90  	//
    91  	// Use XSD\_INT instead.
    92  	PbmBuiltinTypeXSD_INTEGER = PbmBuiltinType("XSD_INTEGER")
    93  	// Integer value.
    94  	//
    95  	// This datatype supports the following constraint values.
    96  	//     - Single value
    97  	//     - Full or partial range of values (`PbmCapabilityRange`)
    98  	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
    99  	PbmBuiltinTypeXSD_INT = PbmBuiltinType("XSD_INT")
   100  	// String value.
   101  	//
   102  	// This datatype supports a single value
   103  	// or a discrete set of values (`PbmCapabilityDiscreteSet`).
   104  	PbmBuiltinTypeXSD_STRING = PbmBuiltinType("XSD_STRING")
   105  	// Boolean value.
   106  	PbmBuiltinTypeXSD_BOOLEAN = PbmBuiltinType("XSD_BOOLEAN")
   107  	// Double precision floating point value.
   108  	//
   109  	// This datatype supports the following
   110  	// constraint values.
   111  	//     - Single value
   112  	//     - Full or partial range of values (`PbmCapabilityRange`)
   113  	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
   114  	PbmBuiltinTypeXSD_DOUBLE = PbmBuiltinType("XSD_DOUBLE")
   115  	// Date and time value.
   116  	PbmBuiltinTypeXSD_DATETIME = PbmBuiltinType("XSD_DATETIME")
   117  	// Timespan value (`PbmCapabilityTimeSpan`).
   118  	//
   119  	// This datatype supports
   120  	// the following constraint values.
   121  	//     - Single value
   122  	//     - Full or partial range of values (`PbmCapabilityRange`)
   123  	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
   124  	PbmBuiltinTypeVMW_TIMESPAN = PbmBuiltinType("VMW_TIMESPAN")
   125  	PbmBuiltinTypeVMW_POLICY   = PbmBuiltinType("VMW_POLICY")
   126  )
   127  
   128  func init() {
   129  	types.Add("pbm:PbmBuiltinType", reflect.TypeOf((*PbmBuiltinType)(nil)).Elem())
   130  }
   131  
   132  // List of operators that are supported for constructing policy.
   133  //
   134  // Currently only tag based properties can use this operator.
   135  // Other operators can be added as required.
   136  type PbmCapabilityOperator string
   137  
   138  const (
   139  	PbmCapabilityOperatorNOT = PbmCapabilityOperator("NOT")
   140  )
   141  
   142  func init() {
   143  	types.Add("pbm:PbmCapabilityOperator", reflect.TypeOf((*PbmCapabilityOperator)(nil)).Elem())
   144  }
   145  
   146  // The `PbmCapabilityTimeUnitType_enum` enumeration type
   147  // defines the supported list of time units for profiles that specify
   148  // time span capabilities and constraints.
   149  //
   150  // See `PbmCapabilityTimeSpan`.
   151  type PbmCapabilityTimeUnitType string
   152  
   153  const (
   154  	// Constraints and capabilities expressed in units of seconds.
   155  	PbmCapabilityTimeUnitTypeSECONDS = PbmCapabilityTimeUnitType("SECONDS")
   156  	// Constraints and capabilities expressed in units of minutes.
   157  	PbmCapabilityTimeUnitTypeMINUTES = PbmCapabilityTimeUnitType("MINUTES")
   158  	// Constraints and capabilities expressed in units of hours.
   159  	PbmCapabilityTimeUnitTypeHOURS = PbmCapabilityTimeUnitType("HOURS")
   160  	// Constraints and capabilities expressed in units of days.
   161  	PbmCapabilityTimeUnitTypeDAYS = PbmCapabilityTimeUnitType("DAYS")
   162  	// Constraints and capabilities expressed in units of weeks.
   163  	PbmCapabilityTimeUnitTypeWEEKS = PbmCapabilityTimeUnitType("WEEKS")
   164  	// Constraints and capabilities expressed in units of months.
   165  	PbmCapabilityTimeUnitTypeMONTHS = PbmCapabilityTimeUnitType("MONTHS")
   166  	// Constraints and capabilities expressed in units of years.
   167  	PbmCapabilityTimeUnitTypeYEARS = PbmCapabilityTimeUnitType("YEARS")
   168  )
   169  
   170  func init() {
   171  	types.Add("pbm:PbmCapabilityTimeUnitType", reflect.TypeOf((*PbmCapabilityTimeUnitType)(nil)).Elem())
   172  }
   173  
   174  // The `PbmComplianceResultComplianceTaskStatus_enum`
   175  // enumeration type defines the set of task status for compliance
   176  // operations.
   177  //
   178  // See `PbmComplianceResult` and
   179  // `PbmRollupComplianceResult`.
   180  type PbmComplianceResultComplianceTaskStatus string
   181  
   182  const (
   183  	// Compliance calculation is in progress.
   184  	PbmComplianceResultComplianceTaskStatusInProgress = PbmComplianceResultComplianceTaskStatus("inProgress")
   185  	// Compliance calculation has succeeded.
   186  	PbmComplianceResultComplianceTaskStatusSuccess = PbmComplianceResultComplianceTaskStatus("success")
   187  	// Compliance calculation failed due to some exception.
   188  	PbmComplianceResultComplianceTaskStatusFailed = PbmComplianceResultComplianceTaskStatus("failed")
   189  )
   190  
   191  func init() {
   192  	types.Add("pbm:PbmComplianceResultComplianceTaskStatus", reflect.TypeOf((*PbmComplianceResultComplianceTaskStatus)(nil)).Elem())
   193  }
   194  
   195  // The `PbmComplianceStatus_enum`
   196  // enumeration type defines the set of status values
   197  // for compliance operations.
   198  //
   199  // See `PbmComplianceResult` and
   200  // `PbmRollupComplianceResult`.
   201  type PbmComplianceStatus string
   202  
   203  const (
   204  	// Entity is in compliance.
   205  	PbmComplianceStatusCompliant = PbmComplianceStatus("compliant")
   206  	// Entity is out of compliance.
   207  	PbmComplianceStatusNonCompliant = PbmComplianceStatus("nonCompliant")
   208  	// Compliance status of the entity is not known.
   209  	PbmComplianceStatusUnknown = PbmComplianceStatus("unknown")
   210  	// Compliance computation is not applicable for this entity,
   211  	// because it does not have any storage requirements that
   212  	// apply to the object-based datastore on which this entity is placed.
   213  	PbmComplianceStatusNotApplicable = PbmComplianceStatus("notApplicable")
   214  	// This is the same as `PbmComplianceResult.mismatch`
   215  	// variable.
   216  	//
   217  	// Compliance status becomes out-of-date when the profile
   218  	// associated with the entity is edited and not applied. The compliance
   219  	// status will remain in out-of-date compliance status until the latest
   220  	// policy is applied to the entity.
   221  	PbmComplianceStatusOutOfDate = PbmComplianceStatus("outOfDate")
   222  )
   223  
   224  func init() {
   225  	types.Add("pbm:PbmComplianceStatus", reflect.TypeOf((*PbmComplianceStatus)(nil)).Elem())
   226  }
   227  
   228  // This enum corresponds to the keystores used by
   229  // sps.
   230  type PbmDebugManagerKeystoreName string
   231  
   232  const (
   233  	// Refers to SMS keystore
   234  	PbmDebugManagerKeystoreNameSMS = PbmDebugManagerKeystoreName("SMS")
   235  	// Refers to TRUSTED\_ROOTS keystore.
   236  	PbmDebugManagerKeystoreNameTRUSTED_ROOTS = PbmDebugManagerKeystoreName("TRUSTED_ROOTS")
   237  )
   238  
   239  func init() {
   240  	types.Add("pbm:PbmDebugManagerKeystoreName", reflect.TypeOf((*PbmDebugManagerKeystoreName)(nil)).Elem())
   241  }
   242  
   243  // The enumeration type defines the set of health status values for an entity
   244  // that is part of entity health operation.
   245  type PbmHealthStatusForEntity string
   246  
   247  const (
   248  	// For file share: 'red' if the file server for this file share is in error
   249  	// state or any of its backing vSAN objects are degraded.
   250  	//
   251  	// For FCD: 'red' if the datastore on which the FCD resides is not
   252  	// accessible from any of the hosts it is mounted.
   253  	PbmHealthStatusForEntityRed = PbmHealthStatusForEntity("red")
   254  	// For file share: 'yellow' if some backing objects are repairing, i.e.
   255  	//
   256  	// warning state.
   257  	// For FCD: 'yellow' if the datastore on which the entity resides is
   258  	// accessible only from some of the hosts it is mounted but not all.
   259  	PbmHealthStatusForEntityYellow = PbmHealthStatusForEntity("yellow")
   260  	// For file share: 'green' if the file server for this file share is
   261  	// running properly and all its backing vSAN objects are healthy.
   262  	//
   263  	// For FCD: 'green' if the datastore on which the entity resides
   264  	// is accessible from all the hosts it is mounted.
   265  	PbmHealthStatusForEntityGreen = PbmHealthStatusForEntity("green")
   266  	// If the health status of a file share is unknown, not valid for FCD.
   267  	PbmHealthStatusForEntityUnknown = PbmHealthStatusForEntity("unknown")
   268  )
   269  
   270  func init() {
   271  	types.Add("pbm:PbmHealthStatusForEntity", reflect.TypeOf((*PbmHealthStatusForEntity)(nil)).Elem())
   272  }
   273  
   274  // Recognized types of an IO Filter.
   275  //
   276  // String constant used in `IofilterInfo#filterType`.
   277  // These should match(upper case) the IO Filter classes as defined by IO Filter framework.
   278  // See https://opengrok.eng.vmware.com/source/xref/vmcore-main.perforce.1666/bora/scons/apps/esx/iofilterApps.sc#33
   279  type PbmIofilterInfoFilterType string
   280  
   281  const (
   282  	PbmIofilterInfoFilterTypeINSPECTION         = PbmIofilterInfoFilterType("INSPECTION")
   283  	PbmIofilterInfoFilterTypeCOMPRESSION        = PbmIofilterInfoFilterType("COMPRESSION")
   284  	PbmIofilterInfoFilterTypeENCRYPTION         = PbmIofilterInfoFilterType("ENCRYPTION")
   285  	PbmIofilterInfoFilterTypeREPLICATION        = PbmIofilterInfoFilterType("REPLICATION")
   286  	PbmIofilterInfoFilterTypeCACHE              = PbmIofilterInfoFilterType("CACHE")
   287  	PbmIofilterInfoFilterTypeDATAPROVIDER       = PbmIofilterInfoFilterType("DATAPROVIDER")
   288  	PbmIofilterInfoFilterTypeDATASTOREIOCONTROL = PbmIofilterInfoFilterType("DATASTOREIOCONTROL")
   289  )
   290  
   291  func init() {
   292  	types.Add("pbm:PbmIofilterInfoFilterType", reflect.TypeOf((*PbmIofilterInfoFilterType)(nil)).Elem())
   293  }
   294  
   295  // Denotes the line of service of a schema.
   296  type PbmLineOfServiceInfoLineOfServiceEnum string
   297  
   298  const (
   299  	PbmLineOfServiceInfoLineOfServiceEnumINSPECTION           = PbmLineOfServiceInfoLineOfServiceEnum("INSPECTION")
   300  	PbmLineOfServiceInfoLineOfServiceEnumCOMPRESSION          = PbmLineOfServiceInfoLineOfServiceEnum("COMPRESSION")
   301  	PbmLineOfServiceInfoLineOfServiceEnumENCRYPTION           = PbmLineOfServiceInfoLineOfServiceEnum("ENCRYPTION")
   302  	PbmLineOfServiceInfoLineOfServiceEnumREPLICATION          = PbmLineOfServiceInfoLineOfServiceEnum("REPLICATION")
   303  	PbmLineOfServiceInfoLineOfServiceEnumCACHING              = PbmLineOfServiceInfoLineOfServiceEnum("CACHING")
   304  	PbmLineOfServiceInfoLineOfServiceEnumPERSISTENCE          = PbmLineOfServiceInfoLineOfServiceEnum("PERSISTENCE")
   305  	PbmLineOfServiceInfoLineOfServiceEnumDATA_PROVIDER        = PbmLineOfServiceInfoLineOfServiceEnum("DATA_PROVIDER")
   306  	PbmLineOfServiceInfoLineOfServiceEnumDATASTORE_IO_CONTROL = PbmLineOfServiceInfoLineOfServiceEnum("DATASTORE_IO_CONTROL")
   307  	PbmLineOfServiceInfoLineOfServiceEnumDATA_PROTECTION      = PbmLineOfServiceInfoLineOfServiceEnum("DATA_PROTECTION")
   308  )
   309  
   310  func init() {
   311  	types.Add("pbm:PbmLineOfServiceInfoLineOfServiceEnum", reflect.TypeOf((*PbmLineOfServiceInfoLineOfServiceEnum)(nil)).Elem())
   312  }
   313  
   314  // This enum corresponds to the different packages whose logging
   315  // is configured independently by sps service.
   316  type PbmLoggingConfigurationComponent string
   317  
   318  const (
   319  	// Modifies logging level of com.vmware.pbm package.
   320  	PbmLoggingConfigurationComponentPbm = PbmLoggingConfigurationComponent("pbm")
   321  	// Modifies logging level of com.vmware.vslm package.
   322  	PbmLoggingConfigurationComponentVslm = PbmLoggingConfigurationComponent("vslm")
   323  	// Modifies logging level of com.vmware.vim.sms package.
   324  	PbmLoggingConfigurationComponentSms = PbmLoggingConfigurationComponent("sms")
   325  	// Modifies logging level of com.vmware.spbm package.
   326  	PbmLoggingConfigurationComponentSpbm = PbmLoggingConfigurationComponent("spbm")
   327  	// Modifies logging level of com.vmware.sps package.
   328  	PbmLoggingConfigurationComponentSps = PbmLoggingConfigurationComponent("sps")
   329  	// Modifies logging level of httpclient wire header.
   330  	PbmLoggingConfigurationComponentHttpclient_header = PbmLoggingConfigurationComponent("httpclient_header")
   331  	// Modifies logging level of httpclient wire content.
   332  	PbmLoggingConfigurationComponentHttpclient_content = PbmLoggingConfigurationComponent("httpclient_content")
   333  	// Modifies logging level of com.vmware.vim.vmomi package.
   334  	PbmLoggingConfigurationComponentVmomi = PbmLoggingConfigurationComponent("vmomi")
   335  )
   336  
   337  func init() {
   338  	types.Add("pbm:PbmLoggingConfigurationComponent", reflect.TypeOf((*PbmLoggingConfigurationComponent)(nil)).Elem())
   339  }
   340  
   341  // This enum corresponds to the different log levels supported
   342  // by sps service.
   343  type PbmLoggingConfigurationLogLevel string
   344  
   345  const (
   346  	// Refers to INFO level logging
   347  	PbmLoggingConfigurationLogLevelINFO = PbmLoggingConfigurationLogLevel("INFO")
   348  	// Refers to DEBUG level logging.
   349  	PbmLoggingConfigurationLogLevelDEBUG = PbmLoggingConfigurationLogLevel("DEBUG")
   350  	// Refers to TRACE level logging.
   351  	PbmLoggingConfigurationLogLevelTRACE = PbmLoggingConfigurationLogLevel("TRACE")
   352  )
   353  
   354  func init() {
   355  	types.Add("pbm:PbmLoggingConfigurationLogLevel", reflect.TypeOf((*PbmLoggingConfigurationLogLevel)(nil)).Elem())
   356  }
   357  
   358  // The `PbmObjectType_enum` enumerated type
   359  // defines vSphere Server object types that are known
   360  // to the Storage Policy Server.
   361  //
   362  // See `PbmServerObjectRef*.*PbmServerObjectRef.objectType`.
   363  type PbmObjectType string
   364  
   365  const (
   366  	// Indicates a virtual machine, not including the disks, identified by the virtual machine
   367  	// identifier _virtual-machine-mor_.
   368  	PbmObjectTypeVirtualMachine = PbmObjectType("virtualMachine")
   369  	// Indicates the virtual machine and all its disks, identified by the virtual machine
   370  	// identifier _virtual-machine-mor_.
   371  	PbmObjectTypeVirtualMachineAndDisks = PbmObjectType("virtualMachineAndDisks")
   372  	// Indicates a virtual disk, identified by disk key
   373  	// (_virtual-machine-mor_:_disk-key_).
   374  	PbmObjectTypeVirtualDiskId = PbmObjectType("virtualDiskId")
   375  	// Indicates a virtual disk, identified by UUID - for First Class Storage Object support.
   376  	PbmObjectTypeVirtualDiskUUID = PbmObjectType("virtualDiskUUID")
   377  	// Indicates a datastore.
   378  	PbmObjectTypeDatastore = PbmObjectType("datastore")
   379  	// Indicates a VSAN object
   380  	PbmObjectTypeVsanObjectId = PbmObjectType("vsanObjectId")
   381  	// Indicates a file service
   382  	PbmObjectTypeFileShareId = PbmObjectType("fileShareId")
   383  	// Unknown object type.
   384  	PbmObjectTypeUnknown = PbmObjectType("unknown")
   385  )
   386  
   387  func init() {
   388  	types.Add("pbm:PbmObjectType", reflect.TypeOf((*PbmObjectType)(nil)).Elem())
   389  }
   390  
   391  // The `PbmOperation_enum` enumerated type
   392  // defines the provisioning operation being performed on the entity like FCD, virtual machine.
   393  type PbmOperation string
   394  
   395  const (
   396  	// Indicates create operation of an entity.
   397  	PbmOperationCREATE = PbmOperation("CREATE")
   398  	// Indicates register operation of an entity.
   399  	PbmOperationREGISTER = PbmOperation("REGISTER")
   400  	// Indicates reconfigure operation of an entity.
   401  	PbmOperationRECONFIGURE = PbmOperation("RECONFIGURE")
   402  	// Indicates migrate operation of an entity.
   403  	PbmOperationMIGRATE = PbmOperation("MIGRATE")
   404  	// Indicates clone operation of an entity.
   405  	PbmOperationCLONE = PbmOperation("CLONE")
   406  )
   407  
   408  func init() {
   409  	types.Add("pbm:PbmOperation", reflect.TypeOf((*PbmOperation)(nil)).Elem())
   410  }
   411  
   412  // Volume allocation type constants.
   413  type PbmPolicyAssociationVolumeAllocationType string
   414  
   415  const (
   416  	// Space required is fully allocated and initialized.
   417  	//
   418  	// It is wiped clean of any previous content on the
   419  	// physical media. Gives faster runtime IO performance.
   420  	PbmPolicyAssociationVolumeAllocationTypeFullyInitialized = PbmPolicyAssociationVolumeAllocationType("FullyInitialized")
   421  	// Space required is fully allocated.
   422  	//
   423  	// It may contain
   424  	// stale data on the physical media.
   425  	PbmPolicyAssociationVolumeAllocationTypeReserveSpace = PbmPolicyAssociationVolumeAllocationType("ReserveSpace")
   426  	// Space required is allocated and zeroed on demand
   427  	// as the space is used.
   428  	PbmPolicyAssociationVolumeAllocationTypeConserveSpaceWhenPossible = PbmPolicyAssociationVolumeAllocationType("ConserveSpaceWhenPossible")
   429  )
   430  
   431  func init() {
   432  	types.Add("pbm:PbmPolicyAssociationVolumeAllocationType", reflect.TypeOf((*PbmPolicyAssociationVolumeAllocationType)(nil)).Elem())
   433  }
   434  
   435  // The `PbmProfileCategoryEnum_enum`
   436  // enumerated type defines the profile categories for a capability-based
   437  // storage profile.
   438  //
   439  // See
   440  // `PbmCapabilityProfile`.
   441  type PbmProfileCategoryEnum string
   442  
   443  const (
   444  	// Indicates a storage requirement.
   445  	//
   446  	// Requirements are based on
   447  	// storage capabilities.
   448  	PbmProfileCategoryEnumREQUIREMENT = PbmProfileCategoryEnum("REQUIREMENT")
   449  	// Indicates a storage capability.
   450  	//
   451  	// Storage capabilities
   452  	// are defined by storage providers.
   453  	PbmProfileCategoryEnumRESOURCE = PbmProfileCategoryEnum("RESOURCE")
   454  	// Indicates a data service policy that can be embedded into
   455  	// another storage policy.
   456  	//
   457  	// Policies of this type can't be assigned to
   458  	// Virtual Machines or Virtual Disks.
   459  	PbmProfileCategoryEnumDATA_SERVICE_POLICY = PbmProfileCategoryEnum("DATA_SERVICE_POLICY")
   460  )
   461  
   462  func init() {
   463  	types.Add("pbm:PbmProfileCategoryEnum", reflect.TypeOf((*PbmProfileCategoryEnum)(nil)).Elem())
   464  }
   465  
   466  // The `PbmProfileResourceTypeEnum_enum` enumerated type defines the set of resource
   467  // types that are supported for profile management.
   468  //
   469  // See `PbmProfileResourceType`.
   470  type PbmProfileResourceTypeEnum string
   471  
   472  const (
   473  	// Indicates resources that support storage profiles.
   474  	PbmProfileResourceTypeEnumSTORAGE = PbmProfileResourceTypeEnum("STORAGE")
   475  )
   476  
   477  func init() {
   478  	types.Add("pbm:PbmProfileResourceTypeEnum", reflect.TypeOf((*PbmProfileResourceTypeEnum)(nil)).Elem())
   479  }
   480  
   481  // System pre-created profile types.
   482  type PbmSystemCreatedProfileType string
   483  
   484  const (
   485  	// Indicates the system pre-created editable VSAN default profile.
   486  	PbmSystemCreatedProfileTypeVsanDefaultProfile = PbmSystemCreatedProfileType("VsanDefaultProfile")
   487  	// Indicates the system pre-created non-editable default profile
   488  	// for VVOL datastores.
   489  	PbmSystemCreatedProfileTypeVVolDefaultProfile = PbmSystemCreatedProfileType("VVolDefaultProfile")
   490  	// Indicates the system pre-created non-editable default profile
   491  	// for PMem datastores
   492  	PbmSystemCreatedProfileTypePmemDefaultProfile = PbmSystemCreatedProfileType("PmemDefaultProfile")
   493  	// Indicates the system pre-created non-editable VMC default profile.
   494  	PbmSystemCreatedProfileTypeVmcManagementProfile = PbmSystemCreatedProfileType("VmcManagementProfile")
   495  	// Indicates the system pre-created non-editable VSANMAX default profile.
   496  	PbmSystemCreatedProfileTypeVsanMaxDefaultProfile = PbmSystemCreatedProfileType("VsanMaxDefaultProfile")
   497  )
   498  
   499  func init() {
   500  	types.Add("pbm:PbmSystemCreatedProfileType", reflect.TypeOf((*PbmSystemCreatedProfileType)(nil)).Elem())
   501  }
   502  
   503  // The `PbmVmOperation_enum` enumerated type
   504  // defines the provisioning operation being performed on the virtual machine.
   505  type PbmVmOperation string
   506  
   507  const (
   508  	// Indicates create operation of a virtual machine.
   509  	PbmVmOperationCREATE = PbmVmOperation("CREATE")
   510  	// Indicates reconfigure operation of a virtual machine.
   511  	PbmVmOperationRECONFIGURE = PbmVmOperation("RECONFIGURE")
   512  	// Indicates migrate operation of a virtual machine.
   513  	PbmVmOperationMIGRATE = PbmVmOperation("MIGRATE")
   514  	// Indicates clone operation of a virtual machine.
   515  	PbmVmOperationCLONE = PbmVmOperation("CLONE")
   516  )
   517  
   518  func init() {
   519  	types.Add("pbm:PbmVmOperation", reflect.TypeOf((*PbmVmOperation)(nil)).Elem())
   520  }
   521  
   522  // The `PbmVvolType_enum` enumeration type
   523  // defines VVOL types.
   524  //
   525  // VvolType's are referenced to specify which objectType
   526  // to fetch for default capability.
   527  type PbmVvolType string
   528  
   529  const (
   530  	// meta-data volume
   531  	PbmVvolTypeConfig = PbmVvolType("Config")
   532  	// vmdk volume
   533  	PbmVvolTypeData = PbmVvolType("Data")
   534  	// swap volume
   535  	PbmVvolTypeSwap = PbmVvolType("Swap")
   536  )
   537  
   538  func init() {
   539  	types.Add("pbm:PbmVvolType", reflect.TypeOf((*PbmVvolType)(nil)).Elem())
   540  }