-
Notifications
You must be signed in to change notification settings - Fork 306
Open
Description
Oftentimes you want your model object to be immutable so you don't want to make your fields public or provide setters. Would it be possible to support constructor injection for this usecase? Something like:
@JsonObject
public class Image {
@JsonField(name = "_id")
private int imageId;
@JsonField
private String format;
@JsonField
private String url;
@JsonField
private String description;
@JsonField(name = "similar_images")
private List<Image> similarImages;
// Not sure if the arguments need to be annotated instead/as well.
@JsonConstructor
public Image(int imageId, String format, String url, String description, List<Image> similarImages) {
this.imageId = imageId;
this.format = foramt;
this.url = url;
this.description = description;
this.similarImages = similarImages;
}
public int getImageId() {
return getImageId;
}
public String getFormat() {
return format;
}
public String getUrl() {
return url;
}
public List<Image> getSimilarImages() {
return Collections.unmodifiableList(similarImages);
}
}AmandaRiu, kunjan-a, renannprado and Alexander--
Metadata
Metadata
Assignees
Labels
No labels