001package com.box.sdkgen.schemas.integrationmappingpartneritemteamscreaterequest; 002 003import com.box.sdkgen.internal.SerializableObject; 004import com.box.sdkgen.serialization.json.EnumWrapper; 005import com.fasterxml.jackson.annotation.JsonFilter; 006import com.fasterxml.jackson.annotation.JsonProperty; 007import com.fasterxml.jackson.databind.annotation.JsonDeserialize; 008import com.fasterxml.jackson.databind.annotation.JsonSerialize; 009import java.util.Objects; 010 011/** The schema for an integration mapping mapped item object for type Teams. */ 012@JsonFilter("nullablePropertyFilter") 013public class IntegrationMappingPartnerItemTeamsCreateRequest extends SerializableObject { 014 015 /** Type of the mapped item referenced in `id`. */ 016 @JsonDeserialize( 017 using = 018 IntegrationMappingPartnerItemTeamsCreateRequestTypeField 019 .IntegrationMappingPartnerItemTeamsCreateRequestTypeFieldDeserializer.class) 020 @JsonSerialize( 021 using = 022 IntegrationMappingPartnerItemTeamsCreateRequestTypeField 023 .IntegrationMappingPartnerItemTeamsCreateRequestTypeFieldSerializer.class) 024 protected final EnumWrapper<IntegrationMappingPartnerItemTeamsCreateRequestTypeField> type; 025 026 /** ID of the mapped item (of type referenced in `type`). */ 027 protected final String id; 028 029 /** ID of the tenant that is registered with Microsoft Teams. */ 030 @JsonProperty("tenant_id") 031 protected final String tenantId; 032 033 /** ID of the team that is registered with Microsoft Teams. */ 034 @JsonProperty("team_id") 035 protected final String teamId; 036 037 public IntegrationMappingPartnerItemTeamsCreateRequest( 038 IntegrationMappingPartnerItemTeamsCreateRequestTypeField type, 039 String id, 040 String tenantId, 041 String teamId) { 042 super(); 043 this.type = new EnumWrapper<IntegrationMappingPartnerItemTeamsCreateRequestTypeField>(type); 044 this.id = id; 045 this.tenantId = tenantId; 046 this.teamId = teamId; 047 } 048 049 public IntegrationMappingPartnerItemTeamsCreateRequest( 050 @JsonProperty("type") 051 EnumWrapper<IntegrationMappingPartnerItemTeamsCreateRequestTypeField> type, 052 @JsonProperty("id") String id, 053 @JsonProperty("tenant_id") String tenantId, 054 @JsonProperty("team_id") String teamId) { 055 super(); 056 this.type = type; 057 this.id = id; 058 this.tenantId = tenantId; 059 this.teamId = teamId; 060 } 061 062 public EnumWrapper<IntegrationMappingPartnerItemTeamsCreateRequestTypeField> getType() { 063 return type; 064 } 065 066 public String getId() { 067 return id; 068 } 069 070 public String getTenantId() { 071 return tenantId; 072 } 073 074 public String getTeamId() { 075 return teamId; 076 } 077 078 @Override 079 public boolean equals(Object o) { 080 if (this == o) { 081 return true; 082 } 083 if (o == null || getClass() != o.getClass()) { 084 return false; 085 } 086 IntegrationMappingPartnerItemTeamsCreateRequest casted = 087 (IntegrationMappingPartnerItemTeamsCreateRequest) o; 088 return Objects.equals(type, casted.type) 089 && Objects.equals(id, casted.id) 090 && Objects.equals(tenantId, casted.tenantId) 091 && Objects.equals(teamId, casted.teamId); 092 } 093 094 @Override 095 public int hashCode() { 096 return Objects.hash(type, id, tenantId, teamId); 097 } 098 099 @Override 100 public String toString() { 101 return "IntegrationMappingPartnerItemTeamsCreateRequest{" 102 + "type='" 103 + type 104 + '\'' 105 + ", " 106 + "id='" 107 + id 108 + '\'' 109 + ", " 110 + "tenantId='" 111 + tenantId 112 + '\'' 113 + ", " 114 + "teamId='" 115 + teamId 116 + '\'' 117 + "}"; 118 } 119}