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=ImageInfo, data={filename=str, format=str, *dirty-flag=bool, *actual-size=int, virtual-size=int, *cluster-size=int, *encrypted=bool, *compressed=bool, *backing-filename=str, *full-backing-filename=str, *backing-filename-format=str, *snapshots=[SnapshotInfo], *backing-image=ImageInfo, *format-specific=ImageInfoSpecific}, innerTypes=null}</pre>
016 */
017// QApiTypeDescriptor{name=ImageInfo, data={filename=str, format=str, *dirty-flag=bool, *actual-size=int, virtual-size=int, *cluster-size=int, *encrypted=bool, *compressed=bool, *backing-filename=str, *full-backing-filename=str, *backing-filename-format=str, *snapshots=[SnapshotInfo], *backing-image=ImageInfo, *format-specific=ImageInfoSpecific}, innerTypes=null}
018@JsonInclude(JsonInclude.Include.NON_EMPTY)
019public class ImageInfo extends QApiType {
020
021        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022        @JsonProperty("filename")
023        @Nonnull
024        public java.lang.String filename;
025        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026        @JsonProperty("format")
027        @Nonnull
028        public java.lang.String format;
029        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
030        @JsonProperty("dirty-flag")
031        @CheckForNull
032        public java.lang.Boolean dirtyFlag;
033        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
034        @JsonProperty("actual-size")
035        @CheckForNull
036        public java.lang.Long actualSize;
037        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
038        @JsonProperty("virtual-size")
039        @Nonnull
040        public long virtualSize;
041        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
042        @JsonProperty("cluster-size")
043        @CheckForNull
044        public java.lang.Long clusterSize;
045        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
046        @JsonProperty("encrypted")
047        @CheckForNull
048        public java.lang.Boolean encrypted;
049        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
050        @JsonProperty("compressed")
051        @CheckForNull
052        public java.lang.Boolean compressed;
053        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
054        @JsonProperty("backing-filename")
055        @CheckForNull
056        public java.lang.String backingFilename;
057        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
058        @JsonProperty("full-backing-filename")
059        @CheckForNull
060        public java.lang.String fullBackingFilename;
061        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
062        @JsonProperty("backing-filename-format")
063        @CheckForNull
064        public java.lang.String backingFilenameFormat;
065        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
066        @JsonProperty("snapshots")
067        @CheckForNull
068        public java.util.List<SnapshotInfo> snapshots;
069        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
070        @JsonProperty("backing-image")
071        @CheckForNull
072        public ImageInfo backingImage;
073        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
074        @JsonProperty("format-specific")
075        @CheckForNull
076        public ImageInfoSpecific formatSpecific;
077
078        @Nonnull
079        public ImageInfo withFilename(java.lang.String value) {
080                this.filename = value;
081                return this;
082        }
083
084        @Nonnull
085        public ImageInfo withFormat(java.lang.String value) {
086                this.format = value;
087                return this;
088        }
089
090        @Nonnull
091        public ImageInfo withDirtyFlag(java.lang.Boolean value) {
092                this.dirtyFlag = value;
093                return this;
094        }
095
096        @Nonnull
097        public ImageInfo withActualSize(java.lang.Long value) {
098                this.actualSize = value;
099                return this;
100        }
101
102        @Nonnull
103        public ImageInfo withVirtualSize(long value) {
104                this.virtualSize = value;
105                return this;
106        }
107
108        @Nonnull
109        public ImageInfo withClusterSize(java.lang.Long value) {
110                this.clusterSize = value;
111                return this;
112        }
113
114        @Nonnull
115        public ImageInfo withEncrypted(java.lang.Boolean value) {
116                this.encrypted = value;
117                return this;
118        }
119
120        @Nonnull
121        public ImageInfo withCompressed(java.lang.Boolean value) {
122                this.compressed = value;
123                return this;
124        }
125
126        @Nonnull
127        public ImageInfo withBackingFilename(java.lang.String value) {
128                this.backingFilename = value;
129                return this;
130        }
131
132        @Nonnull
133        public ImageInfo withFullBackingFilename(java.lang.String value) {
134                this.fullBackingFilename = value;
135                return this;
136        }
137
138        @Nonnull
139        public ImageInfo withBackingFilenameFormat(java.lang.String value) {
140                this.backingFilenameFormat = value;
141                return this;
142        }
143
144        @Nonnull
145        public ImageInfo withSnapshots(java.util.List<SnapshotInfo> value) {
146                this.snapshots = value;
147                return this;
148        }
149
150        @Nonnull
151        public ImageInfo withBackingImage(ImageInfo value) {
152                this.backingImage = value;
153                return this;
154        }
155
156        @Nonnull
157        public ImageInfo withFormatSpecific(ImageInfoSpecific value) {
158                this.formatSpecific = value;
159                return this;
160        }
161
162        public ImageInfo() {
163        }
164
165        public ImageInfo(java.lang.String filename, java.lang.String format, java.lang.Boolean dirtyFlag, java.lang.Long actualSize, long virtualSize, java.lang.Long clusterSize, java.lang.Boolean encrypted, java.lang.Boolean compressed, java.lang.String backingFilename, java.lang.String fullBackingFilename, java.lang.String backingFilenameFormat, java.util.List<SnapshotInfo> snapshots, ImageInfo backingImage, ImageInfoSpecific formatSpecific) {
166                this.filename = filename;
167                this.format = format;
168                this.dirtyFlag = dirtyFlag;
169                this.actualSize = actualSize;
170                this.virtualSize = virtualSize;
171                this.clusterSize = clusterSize;
172                this.encrypted = encrypted;
173                this.compressed = compressed;
174                this.backingFilename = backingFilename;
175                this.fullBackingFilename = fullBackingFilename;
176                this.backingFilenameFormat = backingFilenameFormat;
177                this.snapshots = snapshots;
178                this.backingImage = backingImage;
179                this.formatSpecific = formatSpecific;
180        }
181
182        @JsonIgnore
183        @Override
184        public java.util.List<java.lang.String> getFieldNames() {
185                java.util.List<java.lang.String> names = super.getFieldNames();
186                names.add("filename");
187                names.add("format");
188                names.add("dirty-flag");
189                names.add("actual-size");
190                names.add("virtual-size");
191                names.add("cluster-size");
192                names.add("encrypted");
193                names.add("compressed");
194                names.add("backing-filename");
195                names.add("full-backing-filename");
196                names.add("backing-filename-format");
197                names.add("snapshots");
198                names.add("backing-image");
199                names.add("format-specific");
200                return names;
201        }
202
203        @Override
204        public Object getFieldByName(@Nonnull java.lang.String name) throws NoSuchFieldException {
205                if ("filename".equals(name))
206                        return filename;
207                if ("format".equals(name))
208                        return format;
209                if ("dirty-flag".equals(name))
210                        return dirtyFlag;
211                if ("actual-size".equals(name))
212                        return actualSize;
213                if ("virtual-size".equals(name))
214                        return virtualSize;
215                if ("cluster-size".equals(name))
216                        return clusterSize;
217                if ("encrypted".equals(name))
218                        return encrypted;
219                if ("compressed".equals(name))
220                        return compressed;
221                if ("backing-filename".equals(name))
222                        return backingFilename;
223                if ("full-backing-filename".equals(name))
224                        return fullBackingFilename;
225                if ("backing-filename-format".equals(name))
226                        return backingFilenameFormat;
227                if ("snapshots".equals(name))
228                        return snapshots;
229                if ("backing-image".equals(name))
230                        return backingImage;
231                if ("format-specific".equals(name))
232                        return formatSpecific;
233                return super.getFieldByName(name);
234        }
235}