package com.tesco.Alpacas.transformation.jml.v1.model.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.tesco.Alpacas.transformation.jml.v1.model.enums.AlpacasEventType;
import com.tesco.Alpacas.transformation.jml.v1.model.enums.changedAttributes;
import lombok.Builder;
import lombok.Data;
import java.util.Date;
import java.util.List;
import java.util.UUID;
@Data
@Builder
@JsonDeserialize(builder = AlpacasDto.AlpacasDtoBuilder.class)
public class AlpacasDto {
@JsonProperty
AlpacasEventType eventType;
@JsonProperty
UUID AlpacasUUID;
@JsonProperty
Date eventCreatedAt;
@JsonProperty
List<String> subcategories;
@JsonProperty
List<String> changedAttributes;
@JsonProperty
CurrentDetailsDto current;
}
package com.tesco.Alpacas.transformation.jml.v1.model.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
//import lombok.Builder;
//import lombok.Data;
import lombok.*;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.UUID;
@Data
@Builder
@JsonDeserialize(builder = CurrentDetailsDto.CurrentDetailsDtoBuilder.class)
public class CurrentDetailsDto implements Serializable {
@JsonProperty
UUID AlpacasUUID;
@JsonProperty
String zohoId;
@JsonProperty
ExternalSystemDetailsDto externalSystems;
@JsonProperty
ProfileDetailsDto profile;
@JsonProperty
ServiceDatesDto serviceDates;
@JsonProperty
ArrayList<TorqRelationshipsDetailsDto> torqRelationships;
@JsonProperty
VacationDetailsDto vacationDetails;
@JsonProperty
String BabageId;
}
package com.tesco.Alpacas.transformation.jml.v1.model.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
//import lombok.Value;
//import lombok.Builder;
//import lombok.Data;
import lombok.*;
import java.io.Serializable;
import java.util.UUID;
/*
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Setter // Explicitly add setters because @Builder disables them */
@Data
@Builder
@JsonDeserialize(builder = TorqRelationshipsDetailsDto.TorqRelationshipsDetailsDtoBuilder.class)
public class TorqRelationshipsDetailsDto implements Serializable {
@Data
@JsonProperty
UUID vacationUUID;
@JsonProperty
String costCentre;
@JsonProperty
GradeDetailsDto grade;
@JsonProperty
String AlpacasType;
@JsonProperty
String torqingStatus;
@JsonProperty
String type;
@JsonProperty
String torqSchedule;
}
package com.tesco.Alpacas.transformation.jml.v1.model.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
//import lombok.Builder;
//import lombok.Data;
import lombok.*;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.UUID;
/*
@Data
//@Builder
@NoArgsConstructor
@AllArgsConstructor
//@Setter // Explicitly add setters because @Builder disables them
*/
@Data
@Builder
@JsonDeserialize(builder = CurrentDetailsDto.CurrentDetailsDtoBuilder.class)
public class CurrentDetailsDto implements Serializable {
@JsonProperty
UUID AlpacasUUID;
@JsonProperty
String zohoId;
@JsonProperty
ExternalSystemDetailsDto externalSystems;
@JsonProperty
ProfileDetailsDto profile;
@JsonProperty
ServiceDatesDto serviceDates;
@JsonProperty
ArrayList<TorqRelationshipsDetailsDto> torqRelationships;
@JsonProperty
VacationDetailsDto vacationDetails;
@JsonProperty
String BabageId;
}
Pls find the above model DTO and the relations AlpacasDto contains CurrentDetailsDto.CurrentDetailsDto contains torqRelationships as array list of objects Each torqRelationships object instance has vacationUUID I want to change the value of this. I need setters Am not able to find what annotation changes should be done for this and in which DTOs
alpacasDtos.getCurrent().getTorqRelationships().set(0,torqRelations_instance); the above is working But i want to understand how to code & change vacationUUID in this scenario, after coding the correct annotations Pls advise