composite-build-usage-example
45 строк · 1.7 Кб
1package by.andd3dfx.templateapp.dto;
2
3import com.fasterxml.jackson.annotation.JsonInclude;
4import com.fasterxml.jackson.annotation.JsonInclude.Include;
5import io.swagger.annotations.ApiModelProperty;
6import java.time.LocalDateTime;
7import javax.validation.constraints.NotNull;
8import javax.validation.constraints.Null;
9import javax.validation.constraints.Size;
10import lombok.Data;
11
12@Data
13@JsonInclude(Include.NON_NULL)
14public class ArticleDto {
15
16@Null(message = "Article id shouldn't be present")
17@ApiModelProperty(notes = "The database generated article ID")
18private Long id;
19
20@NotNull(message = "Title should be populated")
21@Size(min = 1, max = 100, message = "Title length must be between 1 and 100")
22@ApiModelProperty(notes = "Article's title", required = true)
23private String title;
24
25@Size(max = 255, message = "Summary length shouldn't be greater than 255")
26@ApiModelProperty(notes = "Article's summary")
27private String summary;
28
29@NotNull(message = "Text should be populated")
30@Size(min = 1, message = "Text length should be 1 at least")
31@ApiModelProperty(notes = "Article's text", required = true)
32private String text;
33
34@NotNull(message = "Author should be populated")
35@ApiModelProperty(notes = "Article's author", required = true)
36private String author;
37
38@Null(message = "DateCreated shouldn't be populated")
39@ApiModelProperty(notes = "Date & time of article creation")
40private LocalDateTime dateCreated;
41
42@Null(message = "DateUpdated shouldn't be populated")
43@ApiModelProperty(notes = "Date & time of article update")
44private LocalDateTime dateUpdated;
45}
46