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=StatusInfo, data={running=bool, singlestep=bool, status=RunState}, innerTypes=null}</pre>
016 */
017// QApiTypeDescriptor{name=StatusInfo, data={running=bool, singlestep=bool, status=RunState}, innerTypes=null}
018@JsonInclude(JsonInclude.Include.NON_EMPTY)
019public class StatusInfo extends QApiType {
020
021        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022        @JsonProperty("running")
023        @Nonnull
024        public boolean running;
025        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026        @JsonProperty("singlestep")
027        @Nonnull
028        public boolean singlestep;
029        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
030        @JsonProperty("status")
031        @Nonnull
032        public RunState status;
033
034        @Nonnull
035        public StatusInfo withRunning(boolean value) {
036                this.running = value;
037                return this;
038        }
039
040        @Nonnull
041        public StatusInfo withSinglestep(boolean value) {
042                this.singlestep = value;
043                return this;
044        }
045
046        @Nonnull
047        public StatusInfo withStatus(RunState value) {
048                this.status = value;
049                return this;
050        }
051
052        public StatusInfo() {
053        }
054
055        public StatusInfo(boolean running, boolean singlestep, RunState status) {
056                this.running = running;
057                this.singlestep = singlestep;
058                this.status = status;
059        }
060
061        @JsonIgnore
062        @Override
063        public java.util.List<java.lang.String> getFieldNames() {
064                java.util.List<java.lang.String> names = super.getFieldNames();
065                names.add("running");
066                names.add("singlestep");
067                names.add("status");
068                return names;
069        }
070
071        @Override
072        public Object getFieldByName(@Nonnull java.lang.String name) throws NoSuchFieldException {
073                if ("running".equals(name))
074                        return running;
075                if ("singlestep".equals(name))
076                        return singlestep;
077                if ("status".equals(name))
078                        return status;
079                return super.getFieldByName(name);
080        }
081}