Eu tenho um predicado que eu uso para filtrar uma lista do mesmo objeto de entidade:
Predicate<DWHDeal> companyFilter = i -> i.getCompany().equals(company);
Também preciso aplicar o mesmo filtro, com a mesma condição exata no mesmo campo, em uma lista de DTOs em que o DTOS é criado com base na entidade anterior:
Predicate<DWHDealDTO> companyFilterDTO = i -> i.getCompany().equals(company);
É possível conseguir isso sem instanciar dois predicados diferentes? Se possível, eu gostaria de conseguir isso fazendo apenas um Predicate
.
getCompany()
o mesmo tipo nos dois casos?
Predicate
com uma classe comum ou tentar escrever um método que aceite ambos DWHDeal
e DWHDealDTO
, como parâmetro. Se essas classes não tiverem interface ou superclasse comum declarando um método comum, elas não terão um método comum, apenas dois métodos não relacionados que tenham o mesmo nome.
DWHDealDTO
eDWHDeal
relacionados? (como estender a mesma classe)