diff --git a/src/main/java/guru/springframework/msscbeerservice/services/BeerServiceImpl.java b/src/main/java/guru/springframework/msscbeerservice/services/BeerServiceImpl.java index 52182556..ea3a89c4 100644 --- a/src/main/java/guru/springframework/msscbeerservice/services/BeerServiceImpl.java +++ b/src/main/java/guru/springframework/msscbeerservice/services/BeerServiceImpl.java @@ -15,6 +15,7 @@ import org.springframework.util.StringUtils; import java.util.UUID; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -46,28 +47,24 @@ public BeerPagedList listBeers(String beerName, BeerStyleEnum beerStyle, PageReq beerPage = beerRepository.findAll(pageRequest); } - if (showInventoryOnHand){ - beerPagedList = new BeerPagedList(beerPage - .getContent() - .stream() - .map(beerMapper::beerToBeerDtoWithInventory) - .collect(Collectors.toList()), - PageRequest - .of(beerPage.getPageable().getPageNumber(), - beerPage.getPageable().getPageSize()), - beerPage.getTotalElements()); + Function mappingFunction; + + if (showInventoryOnHand) { + mappingFunction = beerMapper::beerToBeerDtoWithInventory; } else { - beerPagedList = new BeerPagedList(beerPage - .getContent() - .stream() - .map(beerMapper::beerToBeerDto) - .collect(Collectors.toList()), - PageRequest - .of(beerPage.getPageable().getPageNumber(), - beerPage.getPageable().getPageSize()), - beerPage.getTotalElements()); + mappingFunction = beerMapper::beerToBeerDto; } + beerPagedList = new BeerPagedList(beerPage + .getContent() + .stream() + .map(mappingFunction) + .collect(Collectors.toList()), + PageRequest + .of(beerPage.getPageable().getPageNumber(), + beerPage.getPageable().getPageSize()), + beerPage.getTotalElements()); + return beerPagedList; }