From 27def096cd9a4d4657f7ef7a7a9ddbdf0ee763bf Mon Sep 17 00:00:00 2001 From: Dimitris Mandalidis Date: Sun, 15 Dec 2019 10:31:24 +0200 Subject: [PATCH] Support device requests (fixes #75) --- .../docker/client/messages/HostConfig.java | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/src/main/java/org/mandas/docker/client/messages/HostConfig.java b/src/main/java/org/mandas/docker/client/messages/HostConfig.java index 0fad3cc4c..1e86d6727 100644 --- a/src/main/java/org/mandas/docker/client/messages/HostConfig.java +++ b/src/main/java/org/mandas/docker/client/messages/HostConfig.java @@ -268,6 +268,9 @@ public interface HostConfig { @JsonProperty("Capabilities") List capabilities(); + @JsonProperty("DeviceRequests") + List deviceRequests(); + @JsonDeserialize(builder = ImmutableHostConfig.LxcConfParameter.Builder.class) @Immutable public interface LxcConfParameter { @@ -500,6 +503,8 @@ default Builder hostPidMode() { Builder capabilities(Iterable capabilities); + Builder deviceRequests(Iterable deviceRequests); + HostConfig build(); } @@ -658,4 +663,42 @@ interface Builder { BlkioDeviceRate build(); } } + + @JsonDeserialize(builder = ImmutableHostConfig.DeviceRequest.Builder.class) + @Immutable + public interface DeviceRequest { + + @JsonProperty("Driver") + String driver(); + + @JsonProperty("Count") + Integer count(); + + @JsonProperty("DeviceIDs") + List deviceIds(); + + @JsonProperty("Capabilities") + List capabilities(); + + @JsonProperty("Options") + Map options(); + + public static Builder builder() { + return ImmutableHostConfig.DeviceRequest.builder(); + } + + interface Builder { + Builder driver(final String driver); + + Builder count(final Integer count); + + Builder deviceIds(final Iterable deviceIds); + + Builder capabilities(final Iterable capabilities); + + Builder options(final Map options); + + DeviceRequest build(); + } + } }