001package com.box.sdkgen.schemas.signrequestcancelrequest; 002 003import com.box.sdkgen.internal.NullableFieldTracker; 004import com.box.sdkgen.internal.SerializableObject; 005import com.fasterxml.jackson.annotation.JsonFilter; 006import java.util.Objects; 007 008/** Request body for cancelling a sign request. */ 009@JsonFilter("nullablePropertyFilter") 010public class SignRequestCancelRequest extends SerializableObject { 011 012 /** An optional reason for cancelling the sign request. */ 013 protected String reason; 014 015 public SignRequestCancelRequest() { 016 super(); 017 } 018 019 protected SignRequestCancelRequest(Builder builder) { 020 super(); 021 this.reason = builder.reason; 022 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 023 } 024 025 public String getReason() { 026 return reason; 027 } 028 029 @Override 030 public boolean equals(Object o) { 031 if (this == o) { 032 return true; 033 } 034 if (o == null || getClass() != o.getClass()) { 035 return false; 036 } 037 SignRequestCancelRequest casted = (SignRequestCancelRequest) o; 038 return Objects.equals(reason, casted.reason); 039 } 040 041 @Override 042 public int hashCode() { 043 return Objects.hash(reason); 044 } 045 046 @Override 047 public String toString() { 048 return "SignRequestCancelRequest{" + "reason='" + reason + '\'' + "}"; 049 } 050 051 public static class Builder extends NullableFieldTracker { 052 053 protected String reason; 054 055 public Builder reason(String reason) { 056 this.reason = reason; 057 return this; 058 } 059 060 public SignRequestCancelRequest build() { 061 return new SignRequestCancelRequest(this); 062 } 063 } 064}