Class Volume.Jsii$Proxy

  • All Implemented Interfaces:
    Volume, software.amazon.jsii.JsiiSerializable
    Enclosing interface:
    Volume

    @Stability(Stable)
    @Internal
    public static final class Volume.Jsii$Proxy
    extends software.amazon.jsii.JsiiObject
    implements Volume
    An implementation for Volume
    • Constructor Detail

      • Jsii$Proxy

        protected Jsii$Proxy​(software.amazon.jsii.JsiiObjectRef objRef)
        Constructor that initializes the object based on values retrieved from the JsiiObject.
        Parameters:
        objRef - Reference to the JSII managed object.
      • Jsii$Proxy

        protected Jsii$Proxy​(Volume.Builder builder)
        Constructor that initializes the object based on literal property values passed by the Volume.Builder.
    • Method Detail

      • getName

        public final String getName()
        Description copied from interface: Volume
        name of the volume.

        Must be a DNS_LABEL and unique within the pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

        Specified by:
        getName in interface Volume
      • getAwsElasticBlockStore

        public final AwsElasticBlockStoreVolumeSource getAwsElasticBlockStore()
        Description copied from interface: Volume
        awsElasticBlockStore represents an AWS Disk resource that is attached to a kubelet's host machine and then exposed to the pod.

        More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

        Specified by:
        getAwsElasticBlockStore in interface Volume
      • getAzureDisk

        public final AzureDiskVolumeSource getAzureDisk()
        Description copied from interface: Volume
        azureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.
        Specified by:
        getAzureDisk in interface Volume
      • getAzureFile

        public final AzureFileVolumeSource getAzureFile()
        Description copied from interface: Volume
        azureFile represents an Azure File Service mount on the host and bind mount to the pod.
        Specified by:
        getAzureFile in interface Volume
      • getCephfs

        public final CephFsVolumeSource getCephfs()
        Description copied from interface: Volume
        cephFS represents a Ceph FS mount on the host that shares a pod's lifetime.
        Specified by:
        getCephfs in interface Volume
      • getCinder

        public final CinderVolumeSource getCinder()
        Description copied from interface: Volume
        cinder represents a cinder volume attached and mounted on kubelets host machine.

        More info: https://examples.k8s.io/mysql-cinder-pd/README.md

        Specified by:
        getCinder in interface Volume
      • getConfigMap

        public final ConfigMapVolumeSource getConfigMap()
        Description copied from interface: Volume
        configMap represents a configMap that should populate this volume.
        Specified by:
        getConfigMap in interface Volume
      • getCsi

        public final CsiVolumeSource getCsi()
        Description copied from interface: Volume
        csi (Container Storage Interface) represents ephemeral storage that is handled by certain external CSI drivers (Beta feature).
        Specified by:
        getCsi in interface Volume
      • getDownwardApi

        public final DownwardApiVolumeSource getDownwardApi()
        Description copied from interface: Volume
        downwardAPI represents downward API about the pod that should populate this volume.
        Specified by:
        getDownwardApi in interface Volume
      • getEmptyDir

        public final EmptyDirVolumeSource getEmptyDir()
        Description copied from interface: Volume
        emptyDir represents a temporary directory that shares a pod's lifetime.

        More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

        Specified by:
        getEmptyDir in interface Volume
      • getEphemeral

        public final EphemeralVolumeSource getEphemeral()
        Description copied from interface: Volume
        ephemeral represents a volume that is handled by a cluster storage driver.

        The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts, and deleted when the pod is removed.

        Use this if: a) the volume is only needed while the pod runs, b) features of normal volumes like restoring from snapshot or capacity tracking are needed, c) the storage driver is specified through a storage class, and d) the storage driver supports dynamic volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource for more information on the connection between this volume type and PersistentVolumeClaim).

        Use PersistentVolumeClaim or one of the vendor-specific APIs for volumes that persist for longer than the lifecycle of an individual pod.

        Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to be used that way - see the documentation of the driver for more information.

        A pod can use both types of ephemeral volumes and persistent volumes at the same time.

        Specified by:
        getEphemeral in interface Volume
      • getFc

        public final FcVolumeSource getFc()
        Description copied from interface: Volume
        fc represents a Fibre Channel resource that is attached to a kubelet's host machine and then exposed to the pod.
        Specified by:
        getFc in interface Volume
      • getFlexVolume

        public final FlexVolumeSource getFlexVolume()
        Description copied from interface: Volume
        flexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.
        Specified by:
        getFlexVolume in interface Volume
      • getFlocker

        public final FlockerVolumeSource getFlocker()
        Description copied from interface: Volume
        flocker represents a Flocker volume attached to a kubelet's host machine.

        This depends on the Flocker control service being running

        Specified by:
        getFlocker in interface Volume
      • getGcePersistentDisk

        public final GcePersistentDiskVolumeSource getGcePersistentDisk()
        Description copied from interface: Volume
        gcePersistentDisk represents a GCE Disk resource that is attached to a kubelet's host machine and then exposed to the pod.

        More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

        Specified by:
        getGcePersistentDisk in interface Volume
      • getGitRepo

        public final GitRepoVolumeSource getGitRepo()
        Description copied from interface: Volume
        gitRepo represents a git repository at a particular revision.

        DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir into the Pod's container.

        Specified by:
        getGitRepo in interface Volume
      • getGlusterfs

        public final GlusterfsVolumeSource getGlusterfs()
        Description copied from interface: Volume
        glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime.

        More info: https://examples.k8s.io/volumes/glusterfs/README.md

        Specified by:
        getGlusterfs in interface Volume
      • getHostPath

        public final HostPathVolumeSource getHostPath()
        Description copied from interface: Volume
        hostPath represents a pre-existing file or directory on the host machine that is directly exposed to the container.

        This is generally used for system agents or other privileged things that are allowed to see the host machine. Most containers will NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

        Specified by:
        getHostPath in interface Volume
      • getIscsi

        public final IscsiVolumeSource getIscsi()
        Description copied from interface: Volume
        iscsi represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod.

        More info: https://examples.k8s.io/volumes/iscsi/README.md

        Specified by:
        getIscsi in interface Volume
      • getNfs

        public final NfsVolumeSource getNfs()
        Description copied from interface: Volume
        nfs represents an NFS mount on the host that shares a pod's lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs.
        Specified by:
        getNfs in interface Volume
      • getPersistentVolumeClaim

        public final PersistentVolumeClaimVolumeSource getPersistentVolumeClaim()
        Description copied from interface: Volume
        persistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace.

        More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims

        Specified by:
        getPersistentVolumeClaim in interface Volume
      • getPortworxVolume

        public final PortworxVolumeSource getPortworxVolume()
        Description copied from interface: Volume
        portworxVolume represents a portworx volume attached and mounted on kubelets host machine.
        Specified by:
        getPortworxVolume in interface Volume
      • getProjected

        public final ProjectedVolumeSource getProjected()
        Description copied from interface: Volume
        projected items for all in one resources secrets, configmaps, and downward API.
        Specified by:
        getProjected in interface Volume
      • getQuobyte

        public final QuobyteVolumeSource getQuobyte()
        Description copied from interface: Volume
        quobyte represents a Quobyte mount on the host that shares a pod's lifetime.
        Specified by:
        getQuobyte in interface Volume
      • getRbd

        public final RbdVolumeSource getRbd()
        Description copied from interface: Volume
        rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.

        More info: https://examples.k8s.io/volumes/rbd/README.md

        Specified by:
        getRbd in interface Volume
      • getScaleIo

        public final ScaleIoVolumeSource getScaleIo()
        Description copied from interface: Volume
        scaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.
        Specified by:
        getScaleIo in interface Volume
      • getSecret

        public final SecretVolumeSource getSecret()
        Description copied from interface: Volume
        secret represents a secret that should populate this volume.

        More info: https://kubernetes.io/docs/concepts/storage/volumes#secret

        Specified by:
        getSecret in interface Volume
      • getStorageos

        public final StorageOsVolumeSource getStorageos()
        Description copied from interface: Volume
        storageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.
        Specified by:
        getStorageos in interface Volume
      • $jsii$toJson

        @Internal
        public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
        Specified by:
        $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object