Class V1.PersistentVolumeClaimSpec.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
io.kubernetes.client.proto.V1.PersistentVolumeClaimSpec.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, V1.PersistentVolumeClaimSpecOrBuilder, Cloneable
Enclosing class:
V1.PersistentVolumeClaimSpec

public static final class V1.PersistentVolumeClaimSpec.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder> implements V1.PersistentVolumeClaimSpecOrBuilder
 PersistentVolumeClaimSpec describes the common attributes of storage devices
 and allows a Source for provider-specific attributes
 
Protobuf type k8s.io.api.core.v1.PersistentVolumeClaimSpec
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • getDefaultInstanceForType

      public V1.PersistentVolumeClaimSpec getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public V1.PersistentVolumeClaimSpec buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • setField

      public V1.PersistentVolumeClaimSpec.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • clearField

      public V1.PersistentVolumeClaimSpec.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • clearOneof

      public V1.PersistentVolumeClaimSpec.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • setRepeatedField

      public V1.PersistentVolumeClaimSpec.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • addRepeatedField

      public V1.PersistentVolumeClaimSpec.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • mergeFrom

      public V1.PersistentVolumeClaimSpec.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • mergeFrom

      public V1.PersistentVolumeClaimSpec.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<V1.PersistentVolumeClaimSpec.Builder>
      Throws:
      IOException
    • getAccessModesList

      public com.google.protobuf.ProtocolStringList getAccessModesList()
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
      Specified by:
      getAccessModesList in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getAccessModesCount

      public int getAccessModesCount()
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
      Specified by:
      getAccessModesCount in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getAccessModes

      public String getAccessModes(int index)
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
      Specified by:
      getAccessModes in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getAccessModesBytes

      public com.google.protobuf.ByteString getAccessModesBytes(int index)
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
      Specified by:
      getAccessModesBytes in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setAccessModes

      public V1.PersistentVolumeClaimSpec.Builder setAccessModes(int index, String value)
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
    • addAccessModes

      public V1.PersistentVolumeClaimSpec.Builder addAccessModes(String value)
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
    • addAllAccessModes

      public V1.PersistentVolumeClaimSpec.Builder addAllAccessModes(Iterable<String> values)
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
    • clearAccessModes

      public V1.PersistentVolumeClaimSpec.Builder clearAccessModes()
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
    • addAccessModesBytes

      public V1.PersistentVolumeClaimSpec.Builder addAccessModesBytes(com.google.protobuf.ByteString value)
       AccessModes contains the desired access modes the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
       +optional
       
      repeated string accessModes = 1;
    • hasSelector

      public boolean hasSelector()
       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
      Specified by:
      hasSelector in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getSelector

      public Meta.LabelSelector getSelector()
       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
      Specified by:
      getSelector in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setSelector

       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
    • setSelector

       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
    • mergeSelector

       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
    • clearSelector

      public V1.PersistentVolumeClaimSpec.Builder clearSelector()
       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
    • getSelectorBuilder

      public Meta.LabelSelector.Builder getSelectorBuilder()
       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
    • getSelectorOrBuilder

      public Meta.LabelSelectorOrBuilder getSelectorOrBuilder()
       A label query over volumes to consider for binding.
       +optional
       
      optional .k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
      Specified by:
      getSelectorOrBuilder in interface V1.PersistentVolumeClaimSpecOrBuilder
    • hasResources

      public boolean hasResources()
       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
      Specified by:
      hasResources in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getResources

      public V1.ResourceRequirements getResources()
       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
      Specified by:
      getResources in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setResources

       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
    • setResources

       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
    • mergeResources

       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
    • clearResources

      public V1.PersistentVolumeClaimSpec.Builder clearResources()
       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
    • getResourcesBuilder

      public V1.ResourceRequirements.Builder getResourcesBuilder()
       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
    • getResourcesOrBuilder

      public V1.ResourceRequirementsOrBuilder getResourcesOrBuilder()
       Resources represents the minimum resources the volume should have.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
       +optional
       
      optional .k8s.io.api.core.v1.ResourceRequirements resources = 2;
      Specified by:
      getResourcesOrBuilder in interface V1.PersistentVolumeClaimSpecOrBuilder
    • hasVolumeName

      public boolean hasVolumeName()
       VolumeName is the binding reference to the PersistentVolume backing this claim.
       +optional
       
      optional string volumeName = 3;
      Specified by:
      hasVolumeName in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getVolumeName

      public String getVolumeName()
       VolumeName is the binding reference to the PersistentVolume backing this claim.
       +optional
       
      optional string volumeName = 3;
      Specified by:
      getVolumeName in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getVolumeNameBytes

      public com.google.protobuf.ByteString getVolumeNameBytes()
       VolumeName is the binding reference to the PersistentVolume backing this claim.
       +optional
       
      optional string volumeName = 3;
      Specified by:
      getVolumeNameBytes in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setVolumeName

      public V1.PersistentVolumeClaimSpec.Builder setVolumeName(String value)
       VolumeName is the binding reference to the PersistentVolume backing this claim.
       +optional
       
      optional string volumeName = 3;
    • clearVolumeName

      public V1.PersistentVolumeClaimSpec.Builder clearVolumeName()
       VolumeName is the binding reference to the PersistentVolume backing this claim.
       +optional
       
      optional string volumeName = 3;
    • setVolumeNameBytes

      public V1.PersistentVolumeClaimSpec.Builder setVolumeNameBytes(com.google.protobuf.ByteString value)
       VolumeName is the binding reference to the PersistentVolume backing this claim.
       +optional
       
      optional string volumeName = 3;
    • hasStorageClassName

      public boolean hasStorageClassName()
       Name of the StorageClass required by the claim.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
       +optional
       
      optional string storageClassName = 5;
      Specified by:
      hasStorageClassName in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getStorageClassName

      public String getStorageClassName()
       Name of the StorageClass required by the claim.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
       +optional
       
      optional string storageClassName = 5;
      Specified by:
      getStorageClassName in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getStorageClassNameBytes

      public com.google.protobuf.ByteString getStorageClassNameBytes()
       Name of the StorageClass required by the claim.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
       +optional
       
      optional string storageClassName = 5;
      Specified by:
      getStorageClassNameBytes in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setStorageClassName

      public V1.PersistentVolumeClaimSpec.Builder setStorageClassName(String value)
       Name of the StorageClass required by the claim.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
       +optional
       
      optional string storageClassName = 5;
    • clearStorageClassName

      public V1.PersistentVolumeClaimSpec.Builder clearStorageClassName()
       Name of the StorageClass required by the claim.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
       +optional
       
      optional string storageClassName = 5;
    • setStorageClassNameBytes

      public V1.PersistentVolumeClaimSpec.Builder setStorageClassNameBytes(com.google.protobuf.ByteString value)
       Name of the StorageClass required by the claim.
       More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
       +optional
       
      optional string storageClassName = 5;
    • hasVolumeMode

      public boolean hasVolumeMode()
       volumeMode defines what type of volume is required by the claim.
       Value of Filesystem is implied when not included in claim spec.
       +optional
       
      optional string volumeMode = 6;
      Specified by:
      hasVolumeMode in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getVolumeMode

      public String getVolumeMode()
       volumeMode defines what type of volume is required by the claim.
       Value of Filesystem is implied when not included in claim spec.
       +optional
       
      optional string volumeMode = 6;
      Specified by:
      getVolumeMode in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getVolumeModeBytes

      public com.google.protobuf.ByteString getVolumeModeBytes()
       volumeMode defines what type of volume is required by the claim.
       Value of Filesystem is implied when not included in claim spec.
       +optional
       
      optional string volumeMode = 6;
      Specified by:
      getVolumeModeBytes in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setVolumeMode

      public V1.PersistentVolumeClaimSpec.Builder setVolumeMode(String value)
       volumeMode defines what type of volume is required by the claim.
       Value of Filesystem is implied when not included in claim spec.
       +optional
       
      optional string volumeMode = 6;
    • clearVolumeMode

      public V1.PersistentVolumeClaimSpec.Builder clearVolumeMode()
       volumeMode defines what type of volume is required by the claim.
       Value of Filesystem is implied when not included in claim spec.
       +optional
       
      optional string volumeMode = 6;
    • setVolumeModeBytes

      public V1.PersistentVolumeClaimSpec.Builder setVolumeModeBytes(com.google.protobuf.ByteString value)
       volumeMode defines what type of volume is required by the claim.
       Value of Filesystem is implied when not included in claim spec.
       +optional
       
      optional string volumeMode = 6;
    • hasDataSource

      public boolean hasDataSource()
       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
      Specified by:
      hasDataSource in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getDataSource

      public V1.TypedLocalObjectReference getDataSource()
       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
      Specified by:
      getDataSource in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setDataSource

       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
    • setDataSource

       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
    • mergeDataSource

       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
    • clearDataSource

      public V1.PersistentVolumeClaimSpec.Builder clearDataSource()
       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
    • getDataSourceBuilder

      public V1.TypedLocalObjectReference.Builder getDataSourceBuilder()
       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
    • getDataSourceOrBuilder

      public V1.TypedLocalObjectReferenceOrBuilder getDataSourceOrBuilder()
       This field can be used to specify either:
       * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot)
       * An existing PVC (PersistentVolumeClaim)
       If the provisioner or an external controller can support the specified data source,
       it will create a new volume based on the contents of the specified data source.
       If the AnyVolumeDataSource feature gate is enabled, this field will always have
       the same contents as the DataSourceRef field.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSource = 7;
      Specified by:
      getDataSourceOrBuilder in interface V1.PersistentVolumeClaimSpecOrBuilder
    • hasDataSourceRef

      public boolean hasDataSourceRef()
       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
      Specified by:
      hasDataSourceRef in interface V1.PersistentVolumeClaimSpecOrBuilder
    • getDataSourceRef

      public V1.TypedLocalObjectReference getDataSourceRef()
       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
      Specified by:
      getDataSourceRef in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setDataSourceRef

       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
    • setDataSourceRef

       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
    • mergeDataSourceRef

       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
    • clearDataSourceRef

      public V1.PersistentVolumeClaimSpec.Builder clearDataSourceRef()
       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
    • getDataSourceRefBuilder

      public V1.TypedLocalObjectReference.Builder getDataSourceRefBuilder()
       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
    • getDataSourceRefOrBuilder

      public V1.TypedLocalObjectReferenceOrBuilder getDataSourceRefOrBuilder()
       Specifies the object from which to populate the volume with data, if a non-empty
       volume is desired. This may be any local object from a non-empty API group (non
       core object) or a PersistentVolumeClaim object.
       When this field is specified, volume binding will only succeed if the type of
       the specified object matches some installed volume populator or dynamic
       provisioner.
       This field will replace the functionality of the DataSource field and as such
       if both fields are non-empty, they must have the same value. For backwards
       compatibility, both fields (DataSource and DataSourceRef) will be set to the same
       value automatically if one of them is empty and the other is non-empty.
       There are two important differences between DataSource and DataSourceRef:
       * While DataSource only allows two specific types of objects, DataSourceRef
         allows any non-core object, as well as PersistentVolumeClaim objects.
       * While DataSource ignores disallowed values (dropping them), DataSourceRef
         preserves all values, and generates an error if a disallowed value is
         specified.
       (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
       +optional
       
      optional .k8s.io.api.core.v1.TypedLocalObjectReference dataSourceRef = 8;
      Specified by:
      getDataSourceRefOrBuilder in interface V1.PersistentVolumeClaimSpecOrBuilder
    • setUnknownFields

      public final V1.PersistentVolumeClaimSpec.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>
    • mergeUnknownFields

      public final V1.PersistentVolumeClaimSpec.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<V1.PersistentVolumeClaimSpec.Builder>