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=DevicePropertyInfo, data={name=str, type=str, *description=str}, innerTypes=null}</pre> 016 */ 017// QApiTypeDescriptor{name=DevicePropertyInfo, data={name=str, type=str, *description=str}, innerTypes=null} 018@JsonInclude(JsonInclude.Include.NON_EMPTY) 019public class DevicePropertyInfo 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 java.lang.String type; 029 @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR") 030 @JsonProperty("description") 031 @CheckForNull 032 public java.lang.String description; 033 034 @Nonnull 035 public DevicePropertyInfo withName(java.lang.String value) { 036 this.name = value; 037 return this; 038 } 039 040 @Nonnull 041 public DevicePropertyInfo withType(java.lang.String value) { 042 this.type = value; 043 return this; 044 } 045 046 @Nonnull 047 public DevicePropertyInfo withDescription(java.lang.String value) { 048 this.description = value; 049 return this; 050 } 051 052 public DevicePropertyInfo() { 053 } 054 055 public DevicePropertyInfo(java.lang.String name, java.lang.String type, java.lang.String description) { 056 this.name = name; 057 this.type = type; 058 this.description = description; 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("name"); 066 names.add("type"); 067 names.add("description"); 068 return names; 069 } 070 071 @Override 072 public Object getFieldByName(@Nonnull java.lang.String name) throws NoSuchFieldException { 073 if ("name".equals(name)) 074 return name; 075 if ("type".equals(name)) 076 return type; 077 if ("description".equals(name)) 078 return description; 079 return super.getFieldByName(name); 080 } 081}