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=BlockdevSnapshotSync, data={*device=str, *node-name=str, snapshot-file=str, *snapshot-node-name=str, *format=str, *mode=NewImageMode}, innerTypes=null}</pre>
016 */
017// QApiTypeDescriptor{name=BlockdevSnapshotSync, data={*device=str, *node-name=str, snapshot-file=str, *snapshot-node-name=str, *format=str, *mode=NewImageMode}, innerTypes=null}
018@JsonInclude(JsonInclude.Include.NON_EMPTY)
019public class BlockdevSnapshotSync extends QApiType {
020
021        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022        @JsonProperty("device")
023        @CheckForNull
024        public java.lang.String device;
025        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026        @JsonProperty("node-name")
027        @CheckForNull
028        public java.lang.String nodeName;
029        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
030        @JsonProperty("snapshot-file")
031        @Nonnull
032        public java.lang.String snapshotFile;
033        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
034        @JsonProperty("snapshot-node-name")
035        @CheckForNull
036        public java.lang.String snapshotNodeName;
037        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
038        @JsonProperty("format")
039        @CheckForNull
040        public java.lang.String format;
041        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
042        @JsonProperty("mode")
043        @CheckForNull
044        public NewImageMode mode;
045
046        @Nonnull
047        public BlockdevSnapshotSync withDevice(java.lang.String value) {
048                this.device = value;
049                return this;
050        }
051
052        @Nonnull
053        public BlockdevSnapshotSync withNodeName(java.lang.String value) {
054                this.nodeName = value;
055                return this;
056        }
057
058        @Nonnull
059        public BlockdevSnapshotSync withSnapshotFile(java.lang.String value) {
060                this.snapshotFile = value;
061                return this;
062        }
063
064        @Nonnull
065        public BlockdevSnapshotSync withSnapshotNodeName(java.lang.String value) {
066                this.snapshotNodeName = value;
067                return this;
068        }
069
070        @Nonnull
071        public BlockdevSnapshotSync withFormat(java.lang.String value) {
072                this.format = value;
073                return this;
074        }
075
076        @Nonnull
077        public BlockdevSnapshotSync withMode(NewImageMode value) {
078                this.mode = value;
079                return this;
080        }
081
082        public BlockdevSnapshotSync() {
083        }
084
085        public BlockdevSnapshotSync(java.lang.String device, java.lang.String nodeName, java.lang.String snapshotFile, java.lang.String snapshotNodeName, java.lang.String format, NewImageMode mode) {
086                this.device = device;
087                this.nodeName = nodeName;
088                this.snapshotFile = snapshotFile;
089                this.snapshotNodeName = snapshotNodeName;
090                this.format = format;
091                this.mode = mode;
092        }
093
094        @JsonIgnore
095        @Override
096        public java.util.List<java.lang.String> getFieldNames() {
097                java.util.List<java.lang.String> names = super.getFieldNames();
098                names.add("device");
099                names.add("node-name");
100                names.add("snapshot-file");
101                names.add("snapshot-node-name");
102                names.add("format");
103                names.add("mode");
104                return names;
105        }
106
107        @Override
108        public Object getFieldByName(@Nonnull java.lang.String name) throws NoSuchFieldException {
109                if ("device".equals(name))
110                        return device;
111                if ("node-name".equals(name))
112                        return nodeName;
113                if ("snapshot-file".equals(name))
114                        return snapshotFile;
115                if ("snapshot-node-name".equals(name))
116                        return snapshotNodeName;
117                if ("format".equals(name))
118                        return format;
119                if ("mode".equals(name))
120                        return mode;
121                return super.getFieldByName(name);
122        }
123}