001package com.box.sdkgen.schemas.v2025r0.hubcollaborationv2025r0; 002 003import com.box.sdkgen.internal.NullableFieldTracker; 004import com.box.sdkgen.internal.SerializableObject; 005import com.fasterxml.jackson.annotation.JsonFilter; 006import com.fasterxml.jackson.annotation.JsonProperty; 007import java.util.Objects; 008 009@JsonFilter("nullablePropertyFilter") 010public class HubCollaborationV2025R0AcceptanceRequirementsStatusField extends SerializableObject { 011 012 @JsonProperty("terms_of_service_requirement") 013 protected HubCollaborationV2025R0AcceptanceRequirementsStatusTermsOfServiceRequirementField 014 termsOfServiceRequirement; 015 016 @JsonProperty("strong_password_requirement") 017 protected HubCollaborationV2025R0AcceptanceRequirementsStatusStrongPasswordRequirementField 018 strongPasswordRequirement; 019 020 @JsonProperty("two_factor_authentication_requirement") 021 protected 022 HubCollaborationV2025R0AcceptanceRequirementsStatusTwoFactorAuthenticationRequirementField 023 twoFactorAuthenticationRequirement; 024 025 public HubCollaborationV2025R0AcceptanceRequirementsStatusField() { 026 super(); 027 } 028 029 protected HubCollaborationV2025R0AcceptanceRequirementsStatusField(Builder builder) { 030 super(); 031 this.termsOfServiceRequirement = builder.termsOfServiceRequirement; 032 this.strongPasswordRequirement = builder.strongPasswordRequirement; 033 this.twoFactorAuthenticationRequirement = builder.twoFactorAuthenticationRequirement; 034 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 035 } 036 037 public HubCollaborationV2025R0AcceptanceRequirementsStatusTermsOfServiceRequirementField 038 getTermsOfServiceRequirement() { 039 return termsOfServiceRequirement; 040 } 041 042 public HubCollaborationV2025R0AcceptanceRequirementsStatusStrongPasswordRequirementField 043 getStrongPasswordRequirement() { 044 return strongPasswordRequirement; 045 } 046 047 public HubCollaborationV2025R0AcceptanceRequirementsStatusTwoFactorAuthenticationRequirementField 048 getTwoFactorAuthenticationRequirement() { 049 return twoFactorAuthenticationRequirement; 050 } 051 052 @Override 053 public boolean equals(Object o) { 054 if (this == o) { 055 return true; 056 } 057 if (o == null || getClass() != o.getClass()) { 058 return false; 059 } 060 HubCollaborationV2025R0AcceptanceRequirementsStatusField casted = 061 (HubCollaborationV2025R0AcceptanceRequirementsStatusField) o; 062 return Objects.equals(termsOfServiceRequirement, casted.termsOfServiceRequirement) 063 && Objects.equals(strongPasswordRequirement, casted.strongPasswordRequirement) 064 && Objects.equals( 065 twoFactorAuthenticationRequirement, casted.twoFactorAuthenticationRequirement); 066 } 067 068 @Override 069 public int hashCode() { 070 return Objects.hash( 071 termsOfServiceRequirement, strongPasswordRequirement, twoFactorAuthenticationRequirement); 072 } 073 074 @Override 075 public String toString() { 076 return "HubCollaborationV2025R0AcceptanceRequirementsStatusField{" 077 + "termsOfServiceRequirement='" 078 + termsOfServiceRequirement 079 + '\'' 080 + ", " 081 + "strongPasswordRequirement='" 082 + strongPasswordRequirement 083 + '\'' 084 + ", " 085 + "twoFactorAuthenticationRequirement='" 086 + twoFactorAuthenticationRequirement 087 + '\'' 088 + "}"; 089 } 090 091 public static class Builder extends NullableFieldTracker { 092 093 protected HubCollaborationV2025R0AcceptanceRequirementsStatusTermsOfServiceRequirementField 094 termsOfServiceRequirement; 095 096 protected HubCollaborationV2025R0AcceptanceRequirementsStatusStrongPasswordRequirementField 097 strongPasswordRequirement; 098 099 protected 100 HubCollaborationV2025R0AcceptanceRequirementsStatusTwoFactorAuthenticationRequirementField 101 twoFactorAuthenticationRequirement; 102 103 public Builder termsOfServiceRequirement( 104 HubCollaborationV2025R0AcceptanceRequirementsStatusTermsOfServiceRequirementField 105 termsOfServiceRequirement) { 106 this.termsOfServiceRequirement = termsOfServiceRequirement; 107 return this; 108 } 109 110 public Builder strongPasswordRequirement( 111 HubCollaborationV2025R0AcceptanceRequirementsStatusStrongPasswordRequirementField 112 strongPasswordRequirement) { 113 this.strongPasswordRequirement = strongPasswordRequirement; 114 return this; 115 } 116 117 public Builder twoFactorAuthenticationRequirement( 118 HubCollaborationV2025R0AcceptanceRequirementsStatusTwoFactorAuthenticationRequirementField 119 twoFactorAuthenticationRequirement) { 120 this.twoFactorAuthenticationRequirement = twoFactorAuthenticationRequirement; 121 return this; 122 } 123 124 public HubCollaborationV2025R0AcceptanceRequirementsStatusField build() { 125 return new HubCollaborationV2025R0AcceptanceRequirementsStatusField(this); 126 } 127 } 128}