java docs added

This commit is contained in:
Kamil Pietruszka
2017-03-10 20:59:24 +01:00
parent 8871f788d2
commit e8b634c33e
4 changed files with 58 additions and 70 deletions

View File

@@ -22,10 +22,6 @@
*/ */
package com.iluwatar.converter; package com.iluwatar.converter;
/**
*
*
*/
public class App { public class App {
/** /**
* Program entry point * Program entry point
@@ -34,10 +30,10 @@ public class App {
*/ */
public static void main(String[] args) { public static void main(String[] args) {
Converter<UserDto, User> userConverter = new Converter<>( Converter<UserDto, User> userConverter = new Converter<>(
userDto -> new User(userDto.getName(), userDto.getSurname(), userDto.isActive()), userDto -> new User(userDto.getFirstName(), userDto.getLastName(), userDto.isActive()),
user -> new UserDto(user.getName(), user.getSurname(), user.isActive())); user -> new UserDto(user.getFirstName(), user.getLastName(), user.isActive()));
UserDto dtoUser = new UserDto("John", "Doe", true); UserDto dtoUser = new UserDto("John", "Doe", true);
User user = userConverter.convertFromDTO(dtoUser); User user = userConverter.convertFromDto(dtoUser);
UserDto dtoUserCopy = userConverter.convertFromEntity(user); UserDto dtoUserCopy = userConverter.convertFromEntity(user);
} }

View File

@@ -29,55 +29,52 @@ import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
* @param <T> * @param <T> DTO representation's type
* @param <U> * @param <U> Domain representation's type
*/ */
public class Converter<T, U> { public class Converter<T, U> {
/**
* private final Function<T, U> fromDto;
*/
private final Function<T, U> fromDTO;
/**
*
*/
private final Function<U, T> fromEntity; private final Function<U, T> fromEntity;
/** /**
* @param fromDTO * @param fromDto Function that converts given dto entity into the domain entity.
* @param fromEntity * @param fromEntity Function that converts given domain entity into the dto entity.
*/ */
public Converter(final Function<T, U> fromDTO, final Function<U, T> fromEntity) { public Converter(final Function<T, U> fromDto, final Function<U, T> fromEntity) {
this.fromDTO = fromDTO; this.fromDto = fromDto;
this.fromEntity = fromEntity; this.fromEntity = fromEntity;
} }
/** /**
* @param arg * @param arg DTO entity
* @return * @return The domain representation - the result of the converting function application on dto entity.
*/ */
public U convertFromDTO(final T arg) { public U convertFromDto(final T arg) {
return fromDTO.apply(arg); return fromDto.apply(arg);
} }
/** /**
* @param arg * @param arg domain entity
* @return * @return The DTO representation - the result of the converting function application on domain entity.
*/ */
public T convertFromEntity(final U arg) { public T convertFromEntity(final U arg) {
return fromEntity.apply(arg); return fromEntity.apply(arg);
} }
/** /**
* @param arg * @param arg collection of DTO entities
* @return * @return List of domain representation of provided entities retrieved by
* mapping each of them with the convertion function
*/ */
public List<U> createFromDTOs(final Collection<T> arg) { public List<U> createFromDtos(final Collection<T> arg) {
return arg.stream().map(this::convertFromDTO).collect(Collectors.toList()); return arg.stream().map(this::convertFromDto).collect(Collectors.toList());
} }
/** /**
* @param arg * @param arg collection of domain entities
* @return * @return List of domain representation of provided entities retrieved by
* mapping each of them with the convertion function
*/ */
public List<T> createFromEntities(final Collection<U> arg) { public List<T> createFromEntities(final Collection<U> arg) {
return arg.stream().map(this::convertFromEntity).collect(Collectors.toList()); return arg.stream().map(this::convertFromEntity).collect(Collectors.toList());

View File

@@ -23,40 +23,37 @@
package com.iluwatar.converter; package com.iluwatar.converter;
/**
* Created by crossy on 2017-03-10.
*/
public class User { public class User {
private String name; private String firstName;
private String surname; private String lastName;
private boolean isActive; private boolean isActive;
/** /**
* *
* @param name * @param firstName user's first name
* @param surname * @param lastName user's last name
* @param isActive * @param isActive flag indicating whether the user is active
*/ */
public User(String name, String surname, boolean isActive) { public User(String firstName, String lastName, boolean isActive) {
this.name = name; this.firstName = firstName;
this.surname = surname; this.lastName = lastName;
this.isActive = isActive; this.isActive = isActive;
} }
public String getName() { public String getFirstName() {
return name; return firstName;
} }
public void setName(String name) { public void setFirstName(String firstName) {
this.name = name; this.firstName = firstName;
} }
public String getSurname() { public String getLastName() {
return surname; return lastName;
} }
public void setSurname(String surname) { public void setLastName(String lastName) {
this.surname = surname; this.lastName = lastName;
} }
public boolean isActive() { public boolean isActive() {

View File

@@ -23,40 +23,38 @@
package com.iluwatar.converter; package com.iluwatar.converter;
/**
*
*/
public class UserDto { public class UserDto {
private String name; private String firstName;
private String surname; private String lastName;
private boolean isActive; private boolean isActive;
/** /**
* *
* @param name * @param firstName user's first name
* @param surname * @param lastName user's last name
* @param isActive * @param isActive flag indicating whether the user is active
*/ */
public UserDto(String name, String surname, boolean isActive) { public UserDto(String firstName, String lastName, boolean isActive) {
this.name = name; this.firstName = firstName;
this.surname = surname; this.lastName = lastName;
this.isActive = isActive; this.isActive = isActive;
} }
public String getName() { public String getFirstName() {
return name; return firstName;
} }
public void setName(String name) { public void setFirstName(String firstName) {
this.name = name; this.firstName = firstName;
} }
public String getSurname() { public String getLastName() {
return surname; return lastName;
} }
public void setSurname(String surname) { public void setLastName(String lastName) {
this.surname = surname; this.lastName = lastName;
} }
public boolean isActive() { public boolean isActive() {