001package com.box.sdkgen.managers.sharedlinksfiles; 002 003import com.box.sdkgen.internal.Nullable; 004import com.box.sdkgen.internal.NullableFieldTracker; 005import com.box.sdkgen.internal.SerializableObject; 006import com.fasterxml.jackson.annotation.JsonFilter; 007import com.fasterxml.jackson.annotation.JsonProperty; 008import java.util.Objects; 009 010@JsonFilter("nullablePropertyFilter") 011public class RemoveSharedLinkFromFileRequestBody extends SerializableObject { 012 013 /** By setting this value to `null`, the shared link is removed from the file. */ 014 @JsonProperty("shared_link") 015 @Nullable 016 protected RemoveSharedLinkFromFileRequestBodySharedLinkField sharedLink; 017 018 public RemoveSharedLinkFromFileRequestBody() { 019 super(); 020 } 021 022 protected RemoveSharedLinkFromFileRequestBody(Builder builder) { 023 super(); 024 this.sharedLink = builder.sharedLink; 025 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 026 } 027 028 public RemoveSharedLinkFromFileRequestBodySharedLinkField getSharedLink() { 029 return sharedLink; 030 } 031 032 @Override 033 public boolean equals(Object o) { 034 if (this == o) { 035 return true; 036 } 037 if (o == null || getClass() != o.getClass()) { 038 return false; 039 } 040 RemoveSharedLinkFromFileRequestBody casted = (RemoveSharedLinkFromFileRequestBody) o; 041 return Objects.equals(sharedLink, casted.sharedLink); 042 } 043 044 @Override 045 public int hashCode() { 046 return Objects.hash(sharedLink); 047 } 048 049 @Override 050 public String toString() { 051 return "RemoveSharedLinkFromFileRequestBody{" + "sharedLink='" + sharedLink + '\'' + "}"; 052 } 053 054 public static class Builder extends NullableFieldTracker { 055 056 protected RemoveSharedLinkFromFileRequestBodySharedLinkField sharedLink; 057 058 public Builder sharedLink(RemoveSharedLinkFromFileRequestBodySharedLinkField sharedLink) { 059 this.sharedLink = sharedLink; 060 this.markNullableFieldAsSet("shared_link"); 061 return this; 062 } 063 064 public RemoveSharedLinkFromFileRequestBody build() { 065 return new RemoveSharedLinkFromFileRequestBody(this); 066 } 067 } 068}