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=CommandLineParameterInfo, data={name=str, type=CommandLineParameterType, *help=str, *default=str}, innerTypes=null}</pre>
016 */
017// QApiTypeDescriptor{name=CommandLineParameterInfo, data={name=str, type=CommandLineParameterType, *help=str, *default=str}, innerTypes=null}
018@JsonInclude(JsonInclude.Include.NON_EMPTY)
019public class CommandLineParameterInfo extends QApiType {
020
021        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022        @JsonProperty("name")
023        @Nonnull
024        public java.lang.String name;
025        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026        @JsonProperty("type")
027        @Nonnull
028        public CommandLineParameterType type;
029        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
030        @JsonProperty("help")
031        @CheckForNull
032        public java.lang.String help;
033        @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
034        @JsonProperty("default")
035        @CheckForNull
036        public java.lang.String _default;
037
038        @Nonnull
039        public CommandLineParameterInfo withName(java.lang.String value) {
040                this.name = value;
041                return this;
042        }
043
044        @Nonnull
045        public CommandLineParameterInfo withType(CommandLineParameterType value) {
046                this.type = value;
047                return this;
048        }
049
050        @Nonnull
051        public CommandLineParameterInfo withHelp(java.lang.String value) {
052                this.help = value;
053                return this;
054        }
055
056        @Nonnull
057        public CommandLineParameterInfo with_default(java.lang.String value) {
058                this._default = value;
059                return this;
060        }
061
062        public CommandLineParameterInfo() {
063        }
064
065        public CommandLineParameterInfo(java.lang.String name, CommandLineParameterType type, java.lang.String help, java.lang.String _default) {
066                this.name = name;
067                this.type = type;
068                this.help = help;
069                this._default = _default;
070        }
071
072        @JsonIgnore
073        @Override
074        public java.util.List<java.lang.String> getFieldNames() {
075                java.util.List<java.lang.String> names = super.getFieldNames();
076                names.add("name");
077                names.add("type");
078                names.add("help");
079                names.add("default");
080                return names;
081        }
082
083        @Override
084        public Object getFieldByName(@Nonnull java.lang.String name) throws NoSuchFieldException {
085                if ("name".equals(name))
086                        return name;
087                if ("type".equals(name))
088                        return type;
089                if ("help".equals(name))
090                        return help;
091                if ("default".equals(name))
092                        return _default;
093                return super.getFieldByName(name);
094        }
095}