Explicação Alteração
Atualizado
Atualizado
Criamos uma Lista do tipo ProductModel e passamos o findAll dentro dela;
Fazemos um if para saber se ela está vazia, se não tiver:
Faremos um loop, criaremos uma variável ID e usaremos o product.add;
O .add é uma extensão do proprio RepresentationModel!
Dentro do add, usaremos linkTo, methodOn e withSelfRel.
linkTo - Fala pra qual endpoint/método vamos redirecionar o cliente quando ele clicar neste link.
methodOn - Qual controller está esse método? E qual é este método em sí que vai receber esse redirecionamento?
Bom, se o cliente está numa lista de produtos, vamos redirecionar ele para um produto específico, neste caso é o getOneProduct.
Primeiro definimos qual Controller está esse método (ProductController.class);
E depois qual o nome desse método. Usaremos o método de baixo getOneProduct; 3. Como esse método recebe um id, passamos o id que criamos em cima. (Id de cada um dos produtos iterado pelo for).
withSelfRel - Redireciona para cada um de seus produtos em sí.
Única diferença é que não referenciamos por getOne, faremos o método .getAllProducts().