mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-14 22:58:36 +00:00
249efd1e71
Co-authored-by: Ilkka Seppälä <iluwatar@users.noreply.github.com>
60 lines
1.6 KiB
Java
60 lines
1.6 KiB
Java
package com.iluwatar;
|
|
|
|
import java.time.LocalDate;
|
|
import lombok.Getter;
|
|
import lombok.Setter;
|
|
|
|
/**
|
|
* Data transfer object which stores information about the worker. This is carried between
|
|
* objects and layers to reduce the number of method calls made.
|
|
*/
|
|
@Getter
|
|
@Setter
|
|
public class RegisterWorkerDto extends DataTransferObject {
|
|
private String name;
|
|
private String occupation;
|
|
private LocalDate dateOfBirth;
|
|
|
|
/**
|
|
* Error for when name field is blank or missing.
|
|
*/
|
|
public static final NotificationError MISSING_NAME =
|
|
new NotificationError(1, "Name is missing");
|
|
|
|
/**
|
|
* Error for when occupation field is blank or missing.
|
|
*/
|
|
public static final NotificationError MISSING_OCCUPATION =
|
|
new NotificationError(2, "Occupation is missing");
|
|
|
|
/**
|
|
* Error for when date of birth field is blank or missing.
|
|
*/
|
|
public static final NotificationError MISSING_DOB =
|
|
new NotificationError(3, "Date of birth is missing");
|
|
|
|
/**
|
|
* Error for when date of birth is less than 18 years ago.
|
|
*/
|
|
public static final NotificationError DOB_TOO_SOON =
|
|
new NotificationError(4, "Worker registered must be over 18");
|
|
|
|
|
|
protected RegisterWorkerDto() {
|
|
super();
|
|
}
|
|
|
|
/**
|
|
* Simple set up function for capturing our worker information.
|
|
*
|
|
* @param name Name of the worker
|
|
* @param occupation occupation of the worker
|
|
* @param dateOfBirth Date of Birth of the worker
|
|
*/
|
|
public void setupWorkerDto(String name, String occupation, LocalDate dateOfBirth) {
|
|
this.name = name;
|
|
this.occupation = occupation;
|
|
this.dateOfBirth = dateOfBirth;
|
|
}
|
|
}
|