001package org.anarres.qemu.qapi.api;
002
003import com.fasterxml.jackson.annotation.JsonIgnore;
004import com.fasterxml.jackson.annotation.JsonInclude;
005import com.fasterxml.jackson.annotation.JsonProperty;
006import com.fasterxml.jackson.annotation.JsonUnwrapped;
007import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
008import javax.annotation.CheckForNull;
009import javax.annotation.Nonnull;
010import org.anarres.qemu.qapi.common.*;
011
012/**
013 * Autogenerated class.
014 *
015 * <pre>QApiTypeDescriptor{name=BlockDeviceTimedStats, data={interval_length=int, min_rd_latency_ns=int, max_rd_latency_ns=int, avg_rd_latency_ns=int, min_wr_latency_ns=int, max_wr_latency_ns=int, avg_wr_latency_ns=int, min_flush_latency_ns=int, max_flush_latency_ns=int, avg_flush_latency_ns=int, avg_rd_queue_depth=number, avg_wr_queue_depth=number}, innerTypes=null}</pre>
016 */
017// QApiTypeDescriptor{name=BlockDeviceTimedStats, data={interval_length=int, min_rd_latency_ns=int, max_rd_latency_ns=int, avg_rd_latency_ns=int, min_wr_latency_ns=int, max_wr_latency_ns=int, avg_wr_latency_ns=int, min_flush_latency_ns=int, max_flush_latency_ns=int, avg_flush_latency_ns=int, avg_rd_queue_depth=number, avg_wr_queue_depth=number}, innerTypes=null}
018@JsonInclude(JsonInclude.Include.NON_EMPTY)
019public class BlockDeviceTimedStats extends QApiType {
020
021        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022        @JsonProperty("interval_length")
023        @Nonnull
024        public long intervalLength;
025        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026        @JsonProperty("min_rd_latency_ns")
027        @Nonnull
028        public long minRdLatencyNs;
029        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
030        @JsonProperty("max_rd_latency_ns")
031        @Nonnull
032        public long maxRdLatencyNs;
033        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
034        @JsonProperty("avg_rd_latency_ns")
035        @Nonnull
036        public long avgRdLatencyNs;
037        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
038        @JsonProperty("min_wr_latency_ns")
039        @Nonnull
040        public long minWrLatencyNs;
041        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
042        @JsonProperty("max_wr_latency_ns")
043        @Nonnull
044        public long maxWrLatencyNs;
045        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
046        @JsonProperty("avg_wr_latency_ns")
047        @Nonnull
048        public long avgWrLatencyNs;
049        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
050        @JsonProperty("min_flush_latency_ns")
051        @Nonnull
052        public long minFlushLatencyNs;
053        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
054        @JsonProperty("max_flush_latency_ns")
055        @Nonnull
056        public long maxFlushLatencyNs;
057        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
058        @JsonProperty("avg_flush_latency_ns")
059        @Nonnull
060        public long avgFlushLatencyNs;
061        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
062        @JsonProperty("avg_rd_queue_depth")
063        @Nonnull
064        public double avgRdQueueDepth;
065        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
066        @JsonProperty("avg_wr_queue_depth")
067        @Nonnull
068        public double avgWrQueueDepth;
069
070        @Nonnull
071        public BlockDeviceTimedStats withIntervalLength(long value) {
072                this.intervalLength = value;
073                return this;
074        }
075
076        @Nonnull
077        public BlockDeviceTimedStats withMinRdLatencyNs(long value) {
078                this.minRdLatencyNs = value;
079                return this;
080        }
081
082        @Nonnull
083        public BlockDeviceTimedStats withMaxRdLatencyNs(long value) {
084                this.maxRdLatencyNs = value;
085                return this;
086        }
087
088        @Nonnull
089        public BlockDeviceTimedStats withAvgRdLatencyNs(long value) {
090                this.avgRdLatencyNs = value;
091                return this;
092        }
093
094        @Nonnull
095        public BlockDeviceTimedStats withMinWrLatencyNs(long value) {
096                this.minWrLatencyNs = value;
097                return this;
098        }
099
100        @Nonnull
101        public BlockDeviceTimedStats withMaxWrLatencyNs(long value) {
102                this.maxWrLatencyNs = value;
103                return this;
104        }
105
106        @Nonnull
107        public BlockDeviceTimedStats withAvgWrLatencyNs(long value) {
108                this.avgWrLatencyNs = value;
109                return this;
110        }
111
112        @Nonnull
113        public BlockDeviceTimedStats withMinFlushLatencyNs(long value) {
114                this.minFlushLatencyNs = value;
115                return this;
116        }
117
118        @Nonnull
119        public BlockDeviceTimedStats withMaxFlushLatencyNs(long value) {
120                this.maxFlushLatencyNs = value;
121                return this;
122        }
123
124        @Nonnull
125        public BlockDeviceTimedStats withAvgFlushLatencyNs(long value) {
126                this.avgFlushLatencyNs = value;
127                return this;
128        }
129
130        @Nonnull
131        public BlockDeviceTimedStats withAvgRdQueueDepth(double value) {
132                this.avgRdQueueDepth = value;
133                return this;
134        }
135
136        @Nonnull
137        public BlockDeviceTimedStats withAvgWrQueueDepth(double value) {
138                this.avgWrQueueDepth = value;
139                return this;
140        }
141
142        public BlockDeviceTimedStats() {
143        }
144
145        public BlockDeviceTimedStats(long intervalLength, long minRdLatencyNs, long maxRdLatencyNs, long avgRdLatencyNs, long minWrLatencyNs, long maxWrLatencyNs, long avgWrLatencyNs, long minFlushLatencyNs, long maxFlushLatencyNs, long avgFlushLatencyNs, double avgRdQueueDepth, double avgWrQueueDepth) {
146                this.intervalLength = intervalLength;
147                this.minRdLatencyNs = minRdLatencyNs;
148                this.maxRdLatencyNs = maxRdLatencyNs;
149                this.avgRdLatencyNs = avgRdLatencyNs;
150                this.minWrLatencyNs = minWrLatencyNs;
151                this.maxWrLatencyNs = maxWrLatencyNs;
152                this.avgWrLatencyNs = avgWrLatencyNs;
153                this.minFlushLatencyNs = minFlushLatencyNs;
154                this.maxFlushLatencyNs = maxFlushLatencyNs;
155                this.avgFlushLatencyNs = avgFlushLatencyNs;
156                this.avgRdQueueDepth = avgRdQueueDepth;
157                this.avgWrQueueDepth = avgWrQueueDepth;
158        }
159
160        @JsonIgnore
161        @Override
162        public java.util.List<java.lang.String> getFieldNames() {
163                java.util.List<java.lang.String> names = super.getFieldNames();
164                names.add("interval_length");
165                names.add("min_rd_latency_ns");
166                names.add("max_rd_latency_ns");
167                names.add("avg_rd_latency_ns");
168                names.add("min_wr_latency_ns");
169                names.add("max_wr_latency_ns");
170                names.add("avg_wr_latency_ns");
171                names.add("min_flush_latency_ns");
172                names.add("max_flush_latency_ns");
173                names.add("avg_flush_latency_ns");
174                names.add("avg_rd_queue_depth");
175                names.add("avg_wr_queue_depth");
176                return names;
177        }
178
179        @Override
180        public Object getFieldByName(@Nonnull java.lang.String name) throws NoSuchFieldException {
181                if ("interval_length".equals(name))
182                        return intervalLength;
183                if ("min_rd_latency_ns".equals(name))
184                        return minRdLatencyNs;
185                if ("max_rd_latency_ns".equals(name))
186                        return maxRdLatencyNs;
187                if ("avg_rd_latency_ns".equals(name))
188                        return avgRdLatencyNs;
189                if ("min_wr_latency_ns".equals(name))
190                        return minWrLatencyNs;
191                if ("max_wr_latency_ns".equals(name))
192                        return maxWrLatencyNs;
193                if ("avg_wr_latency_ns".equals(name))
194                        return avgWrLatencyNs;
195                if ("min_flush_latency_ns".equals(name))
196                        return minFlushLatencyNs;
197                if ("max_flush_latency_ns".equals(name))
198                        return maxFlushLatencyNs;
199                if ("avg_flush_latency_ns".equals(name))
200                        return avgFlushLatencyNs;
201                if ("avg_rd_queue_depth".equals(name))
202                        return avgRdQueueDepth;
203                if ("avg_wr_queue_depth".equals(name))
204                        return avgWrQueueDepth;
205                return super.getFieldByName(name);
206        }
207}