001package com.box.sdkgen.managers.skills; 002 003import com.box.sdkgen.internal.NullableFieldTracker; 004import com.box.sdkgen.internal.SerializableObject; 005import com.box.sdkgen.serialization.json.EnumWrapper; 006import com.fasterxml.jackson.annotation.JsonFilter; 007import com.fasterxml.jackson.annotation.JsonProperty; 008import com.fasterxml.jackson.databind.annotation.JsonDeserialize; 009import com.fasterxml.jackson.databind.annotation.JsonSerialize; 010import java.util.Objects; 011 012@JsonFilter("nullablePropertyFilter") 013public class UpdateAllSkillCardsOnFileRequestBody extends SerializableObject { 014 015 /** Defines the status of this invocation. Set this to `success` when setting Skill cards. */ 016 @JsonDeserialize( 017 using = 018 UpdateAllSkillCardsOnFileRequestBodyStatusField 019 .UpdateAllSkillCardsOnFileRequestBodyStatusFieldDeserializer.class) 020 @JsonSerialize( 021 using = 022 UpdateAllSkillCardsOnFileRequestBodyStatusField 023 .UpdateAllSkillCardsOnFileRequestBodyStatusFieldSerializer.class) 024 protected final EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField> status; 025 026 /** 027 * The metadata to set for this skill. This is a list of Box Skills cards. These cards will 028 * overwrite any existing Box skill cards on the file. 029 */ 030 protected final UpdateAllSkillCardsOnFileRequestBodyMetadataField metadata; 031 032 /** The file to assign the cards to. */ 033 protected final UpdateAllSkillCardsOnFileRequestBodyFileField file; 034 035 /** The optional file version to assign the cards to. */ 036 @JsonProperty("file_version") 037 protected UpdateAllSkillCardsOnFileRequestBodyFileVersionField fileVersion; 038 039 /** 040 * A descriptor that defines what items are affected by this call. 041 * 042 * <p>Set this to the default values when setting a card to a `success` state, and leave it out in 043 * most other situations. 044 */ 045 protected UpdateAllSkillCardsOnFileRequestBodyUsageField usage; 046 047 public UpdateAllSkillCardsOnFileRequestBody( 048 UpdateAllSkillCardsOnFileRequestBodyStatusField status, 049 UpdateAllSkillCardsOnFileRequestBodyMetadataField metadata, 050 UpdateAllSkillCardsOnFileRequestBodyFileField file) { 051 super(); 052 this.status = new EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField>(status); 053 this.metadata = metadata; 054 this.file = file; 055 } 056 057 public UpdateAllSkillCardsOnFileRequestBody( 058 @JsonProperty("status") EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField> status, 059 @JsonProperty("metadata") UpdateAllSkillCardsOnFileRequestBodyMetadataField metadata, 060 @JsonProperty("file") UpdateAllSkillCardsOnFileRequestBodyFileField file) { 061 super(); 062 this.status = status; 063 this.metadata = metadata; 064 this.file = file; 065 } 066 067 protected UpdateAllSkillCardsOnFileRequestBody(Builder builder) { 068 super(); 069 this.status = builder.status; 070 this.metadata = builder.metadata; 071 this.file = builder.file; 072 this.fileVersion = builder.fileVersion; 073 this.usage = builder.usage; 074 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 075 } 076 077 public EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField> getStatus() { 078 return status; 079 } 080 081 public UpdateAllSkillCardsOnFileRequestBodyMetadataField getMetadata() { 082 return metadata; 083 } 084 085 public UpdateAllSkillCardsOnFileRequestBodyFileField getFile() { 086 return file; 087 } 088 089 public UpdateAllSkillCardsOnFileRequestBodyFileVersionField getFileVersion() { 090 return fileVersion; 091 } 092 093 public UpdateAllSkillCardsOnFileRequestBodyUsageField getUsage() { 094 return usage; 095 } 096 097 @Override 098 public boolean equals(Object o) { 099 if (this == o) { 100 return true; 101 } 102 if (o == null || getClass() != o.getClass()) { 103 return false; 104 } 105 UpdateAllSkillCardsOnFileRequestBody casted = (UpdateAllSkillCardsOnFileRequestBody) o; 106 return Objects.equals(status, casted.status) 107 && Objects.equals(metadata, casted.metadata) 108 && Objects.equals(file, casted.file) 109 && Objects.equals(fileVersion, casted.fileVersion) 110 && Objects.equals(usage, casted.usage); 111 } 112 113 @Override 114 public int hashCode() { 115 return Objects.hash(status, metadata, file, fileVersion, usage); 116 } 117 118 @Override 119 public String toString() { 120 return "UpdateAllSkillCardsOnFileRequestBody{" 121 + "status='" 122 + status 123 + '\'' 124 + ", " 125 + "metadata='" 126 + metadata 127 + '\'' 128 + ", " 129 + "file='" 130 + file 131 + '\'' 132 + ", " 133 + "fileVersion='" 134 + fileVersion 135 + '\'' 136 + ", " 137 + "usage='" 138 + usage 139 + '\'' 140 + "}"; 141 } 142 143 public static class Builder extends NullableFieldTracker { 144 145 protected final EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField> status; 146 147 protected final UpdateAllSkillCardsOnFileRequestBodyMetadataField metadata; 148 149 protected final UpdateAllSkillCardsOnFileRequestBodyFileField file; 150 151 protected UpdateAllSkillCardsOnFileRequestBodyFileVersionField fileVersion; 152 153 protected UpdateAllSkillCardsOnFileRequestBodyUsageField usage; 154 155 public Builder( 156 UpdateAllSkillCardsOnFileRequestBodyStatusField status, 157 UpdateAllSkillCardsOnFileRequestBodyMetadataField metadata, 158 UpdateAllSkillCardsOnFileRequestBodyFileField file) { 159 super(); 160 this.status = new EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField>(status); 161 this.metadata = metadata; 162 this.file = file; 163 } 164 165 public Builder( 166 EnumWrapper<UpdateAllSkillCardsOnFileRequestBodyStatusField> status, 167 UpdateAllSkillCardsOnFileRequestBodyMetadataField metadata, 168 UpdateAllSkillCardsOnFileRequestBodyFileField file) { 169 super(); 170 this.status = status; 171 this.metadata = metadata; 172 this.file = file; 173 } 174 175 public Builder fileVersion(UpdateAllSkillCardsOnFileRequestBodyFileVersionField fileVersion) { 176 this.fileVersion = fileVersion; 177 return this; 178 } 179 180 public Builder usage(UpdateAllSkillCardsOnFileRequestBodyUsageField usage) { 181 this.usage = usage; 182 return this; 183 } 184 185 public UpdateAllSkillCardsOnFileRequestBody build() { 186 return new UpdateAllSkillCardsOnFileRequestBody(this); 187 } 188 } 189}