001package com.box.sdkgen.schemas.user; 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 UserNotificationEmailField extends SerializableObject { 011 012 /** The email address to send the notifications to. */ 013 protected String email; 014 015 /** Specifies if this email address has been confirmed. */ 016 @JsonProperty("is_confirmed") 017 protected Boolean isConfirmed; 018 019 public UserNotificationEmailField() { 020 super(); 021 } 022 023 protected UserNotificationEmailField(Builder builder) { 024 super(); 025 this.email = builder.email; 026 this.isConfirmed = builder.isConfirmed; 027 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 028 } 029 030 public String getEmail() { 031 return email; 032 } 033 034 public Boolean getIsConfirmed() { 035 return isConfirmed; 036 } 037 038 @Override 039 public boolean equals(Object o) { 040 if (this == o) { 041 return true; 042 } 043 if (o == null || getClass() != o.getClass()) { 044 return false; 045 } 046 UserNotificationEmailField casted = (UserNotificationEmailField) o; 047 return Objects.equals(email, casted.email) && Objects.equals(isConfirmed, casted.isConfirmed); 048 } 049 050 @Override 051 public int hashCode() { 052 return Objects.hash(email, isConfirmed); 053 } 054 055 @Override 056 public String toString() { 057 return "UserNotificationEmailField{" 058 + "email='" 059 + email 060 + '\'' 061 + ", " 062 + "isConfirmed='" 063 + isConfirmed 064 + '\'' 065 + "}"; 066 } 067 068 public static class Builder extends NullableFieldTracker { 069 070 protected String email; 071 072 protected Boolean isConfirmed; 073 074 public Builder email(String email) { 075 this.email = email; 076 return this; 077 } 078 079 public Builder isConfirmed(Boolean isConfirmed) { 080 this.isConfirmed = isConfirmed; 081 return this; 082 } 083 084 public UserNotificationEmailField build() { 085 return new UserNotificationEmailField(this); 086 } 087 } 088}