001package com.box.sdkgen.schemas.v2025r0.hubcollaborationupdaterequestv2025r0; 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 updating an existing Box Hub collaboration. */ 009@JsonFilter("nullablePropertyFilter") 010public class HubCollaborationUpdateRequestV2025R0 extends SerializableObject { 011 012 /** 013 * The level of access granted to a Box Hub. Possible values are `editor`, `viewer`, and 014 * `co-owner`. 015 */ 016 protected String role; 017 018 public HubCollaborationUpdateRequestV2025R0() { 019 super(); 020 } 021 022 protected HubCollaborationUpdateRequestV2025R0(Builder builder) { 023 super(); 024 this.role = builder.role; 025 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 026 } 027 028 public String getRole() { 029 return role; 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 HubCollaborationUpdateRequestV2025R0 casted = (HubCollaborationUpdateRequestV2025R0) o; 041 return Objects.equals(role, casted.role); 042 } 043 044 @Override 045 public int hashCode() { 046 return Objects.hash(role); 047 } 048 049 @Override 050 public String toString() { 051 return "HubCollaborationUpdateRequestV2025R0{" + "role='" + role + '\'' + "}"; 052 } 053 054 public static class Builder extends NullableFieldTracker { 055 056 protected String role; 057 058 public Builder role(String role) { 059 this.role = role; 060 return this; 061 } 062 063 public HubCollaborationUpdateRequestV2025R0 build() { 064 return new HubCollaborationUpdateRequestV2025R0(this); 065 } 066 } 067}