All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.gesellix.docker.remote.api.MountBindOptions.kt Maven / Gradle / Ivy

There is a newer version: 2024-09-15T19-05-00
Show newest version
/**
 *
 * Please note:
 * This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * Do not edit this file manually.
 *
 */

@file:Suppress(
    "ArrayInDataClass",
    "EnumEntryName",
    "RemoveRedundantQualifierName",
    "UnusedImport",
)

package de.gesellix.docker.remote.api

import com.squareup.moshi.Json
import com.squareup.moshi.JsonClass

/**
 * Optional configuration for the `bind` type.
 *
 * @param propagation A propagation mode with the value `[r]private`, `[r]shared`, or `[r]slave`.
 * @param nonRecursive Disable recursive bind mount.
 * @param createMountpoint Create mount point on host if missing
 * @param readOnlyNonRecursive Make the mount non-recursively read-only, but still leave the mount recursive (unless NonRecursive is set to `true` in conjunction).  Addded in v1.44, before that version all read-only mounts were non-recursive by default. To match the previous behaviour this will default to `true` for clients on versions prior to v1.44.
 * @param readOnlyForceRecursive Raise an error if the mount cannot be made recursively read-only.
 */
@JsonClass(generateAdapter = true)
data class MountBindOptions(
    // A propagation mode with the value `[r]private`, `[r]shared`, or `[r]slave`.
    @Json(name = "Propagation")
    var propagation: MountBindOptions.Propagation? = null,
    // Disable recursive bind mount.
    @Json(name = "NonRecursive")
    var nonRecursive: kotlin.Boolean? = false,
    // Create mount point on host if missing
    @Json(name = "CreateMountpoint")
    var createMountpoint: kotlin.Boolean? = false,
    // Make the mount non-recursively read-only, but still leave the mount recursive (unless NonRecursive is set to `true` in conjunction).  Addded in v1.44, before that version all read-only mounts were non-recursive by default. To match the previous behaviour this will default to `true` for clients on versions prior to v1.44.
    @Json(name = "ReadOnlyNonRecursive")
    var readOnlyNonRecursive: kotlin.Boolean? = false,
    // Raise an error if the mount cannot be made recursively read-only.
    @Json(name = "ReadOnlyForceRecursive")
    var readOnlyForceRecursive: kotlin.Boolean? = false,
) {
    /**
     * A propagation mode with the value `[r]private`, `[r]shared`, or `[r]slave`.
     *
     * Values: Private,Rprivate,Shared,Rshared,Slave,Rslave
     */
    @JsonClass(generateAdapter = false)
    enum class Propagation(val value: kotlin.String) {
        @Json(name = "private")
        Private("private"),

        @Json(name = "rprivate")
        Rprivate("rprivate"),

        @Json(name = "shared")
        Shared("shared"),

        @Json(name = "rshared")
        Rshared("rshared"),

        @Json(name = "slave")
        Slave("slave"),

        @Json(name = "rslave")
        Rslave("rslave"),
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy