001package org.anarres.qemu.qapi.api;
002
003import com.fasterxml.jackson.annotation.JsonInclude;
004import com.fasterxml.jackson.annotation.JsonProperty;
005import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
006import javax.annotation.CheckForNull;
007import javax.annotation.Nonnull;
008import org.anarres.qemu.qapi.common.*;
009
010/**
011 * Autogenerated class.
012 *
013 * <pre>QApiCommandDescriptor{name=block_set_io_throttle, returns=null, data={device=str, bps=int, bps_rd=int, bps_wr=int, iops=int, iops_rd=int, iops_wr=int, *bps_max=int, *bps_rd_max=int, *bps_wr_max=int, *iops_max=int, *iops_rd_max=int, *iops_wr_max=int, *iops_size=int, *group=str}}</pre>
014 */
015// QApiCommandDescriptor{name=block_set_io_throttle, returns=null, data={device=str, bps=int, bps_rd=int, bps_wr=int, iops=int, iops_rd=int, iops_wr=int, *bps_max=int, *bps_rd_max=int, *bps_wr_max=int, *iops_max=int, *iops_rd_max=int, *iops_wr_max=int, *iops_size=int, *group=str}}
016public class BlockSetIoThrottleCommand extends QApiCommand<BlockSetIoThrottleCommand.Arguments, BlockSetIoThrottleCommand.Response> {
017        /** Compound arguments to a BlockSetIoThrottleCommand. */
018        @JsonInclude(JsonInclude.Include.NON_EMPTY)
019        public static class Arguments {
020
021                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022                @JsonProperty("device")
023                @Nonnull
024                public java.lang.String device;
025                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026                @JsonProperty("bps")
027                @Nonnull
028                public long bps;
029                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
030                @JsonProperty("bps_rd")
031                @Nonnull
032                public long bpsRd;
033                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
034                @JsonProperty("bps_wr")
035                @Nonnull
036                public long bpsWr;
037                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
038                @JsonProperty("iops")
039                @Nonnull
040                public long iops;
041                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
042                @JsonProperty("iops_rd")
043                @Nonnull
044                public long iopsRd;
045                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
046                @JsonProperty("iops_wr")
047                @Nonnull
048                public long iopsWr;
049                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
050                @JsonProperty("bps_max")
051                @CheckForNull
052                public java.lang.Long bpsMax;
053                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
054                @JsonProperty("bps_rd_max")
055                @CheckForNull
056                public java.lang.Long bpsRdMax;
057                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
058                @JsonProperty("bps_wr_max")
059                @CheckForNull
060                public java.lang.Long bpsWrMax;
061                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
062                @JsonProperty("iops_max")
063                @CheckForNull
064                public java.lang.Long iopsMax;
065                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
066                @JsonProperty("iops_rd_max")
067                @CheckForNull
068                public java.lang.Long iopsRdMax;
069                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
070                @JsonProperty("iops_wr_max")
071                @CheckForNull
072                public java.lang.Long iopsWrMax;
073                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
074                @JsonProperty("iops_size")
075                @CheckForNull
076                public java.lang.Long iopsSize;
077                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
078                @JsonProperty("group")
079                @CheckForNull
080                public java.lang.String group;
081
082                public Arguments() {
083                }
084
085                public Arguments(java.lang.String device, long bps, long bpsRd, long bpsWr, long iops, long iopsRd, long iopsWr, java.lang.Long bpsMax, java.lang.Long bpsRdMax, java.lang.Long bpsWrMax, java.lang.Long iopsMax, java.lang.Long iopsRdMax, java.lang.Long iopsWrMax, java.lang.Long iopsSize, java.lang.String group) {
086                        this.device = device;
087                        this.bps = bps;
088                        this.bpsRd = bpsRd;
089                        this.bpsWr = bpsWr;
090                        this.iops = iops;
091                        this.iopsRd = iopsRd;
092                        this.iopsWr = iopsWr;
093                        this.bpsMax = bpsMax;
094                        this.bpsRdMax = bpsRdMax;
095                        this.bpsWrMax = bpsWrMax;
096                        this.iopsMax = iopsMax;
097                        this.iopsRdMax = iopsRdMax;
098                        this.iopsWrMax = iopsWrMax;
099                        this.iopsSize = iopsSize;
100                        this.group = group;
101                }
102        }
103
104        /** Response to a BlockSetIoThrottleCommand. */
105        public static class Response extends QApiResponse<java.lang.Void> {
106        }
107
108        /** Constructs a new BlockSetIoThrottleCommand. */
109        public BlockSetIoThrottleCommand(@Nonnull BlockSetIoThrottleCommand.Arguments argument) {
110                super("block_set_io_throttle", Response.class, argument);
111        }
112
113        /** Constructs a new BlockSetIoThrottleCommand. */
114        public BlockSetIoThrottleCommand(java.lang.String device, long bps, long bpsRd, long bpsWr, long iops, long iopsRd, long iopsWr, java.lang.Long bpsMax, java.lang.Long bpsRdMax, java.lang.Long bpsWrMax, java.lang.Long iopsMax, java.lang.Long iopsRdMax, java.lang.Long iopsWrMax, java.lang.Long iopsSize, java.lang.String group) {
115                this(new Arguments(device, bps, bpsRd, bpsWr, iops, iopsRd, iopsWr, bpsMax, bpsRdMax, bpsWrMax, iopsMax, iopsRdMax, iopsWrMax, iopsSize, group));
116        }
117}