Commit 35f4e01e authored by Ján Dovjak's avatar Ján Dovjak
Browse files

feat: games for team, and List changed to Collection

parent e4e91125
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -2,9 +2,6 @@ package cz.muni.fi.pa165.icehockeymanager.facades;

import cz.muni.fi.pa165.icehockeymanager.dto.GameCreateDTO;
import cz.muni.fi.pa165.icehockeymanager.dto.TeamCreateDTO;
import cz.muni.fi.pa165.icehockeymanager.dto.TeamDTO;

import java.util.Collection;

/**
 * Facade with functionality for the league manager,
+35 −6
Original line number Diff line number Diff line
package cz.muni.fi.pa165.icehockeymanager.rest.controller;

import cz.muni.fi.pa165.icehockeymanager.dto.PlayerCreateDTO;
import cz.muni.fi.pa165.icehockeymanager.dto.PlayerDTO;
import cz.muni.fi.pa165.icehockeymanager.dto.TeamCreateDTO;
import cz.muni.fi.pa165.icehockeymanager.dto.TeamDTO;
@@ -10,8 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.validation.Valid;
import java.util.ArrayList;
import java.util.List;
import java.util.Collection;


@RestController
@@ -31,17 +31,46 @@ public class IceHockeyManagerApi {
    }

    @GetMapping("/player/free")
    public final List<PlayerDTO> getFreePlayers() {
        return new ArrayList<>(teamManagerFacade.getFreePlayers());
    public final Collection<PlayerDTO> getFreePlayers() {
        return teamManagerFacade.getFreePlayers();
    }



    @GetMapping("/player/{id}")
    public final PlayerDTO findPlayer(@PathVariable Long id) {
        return userFacade.findPlayer(id).get();
    }

    @GetMapping("/player/team/{id}")
    public final Collection<PlayerDTO> getTeamsInLeague(@PathVariable Long id) {
        return userFacade.getPlayersInTeam(id);
    }

    @PostMapping("/player/recruitNew")
    public final void recruitNewPlayer(@Valid @RequestBody PlayerCreateDTO player) {
        teamManagerFacade.recruitNewPlayer(player, 1L);
    }

    @PostMapping("/player/recruitFree")
    public final void recruitFreePlayer(@Valid @RequestBody long playerId) {
        teamManagerFacade.recruitVeteranPlayer(playerId, 2L);
    }

    @GetMapping("/team/all")
    public final List<TeamDTO> getTeamsInLeague() {
        return new ArrayList<>(userFacade.getTeamsInLeague());
    public final Collection<TeamDTO> getTeamsInLeague() {
        return userFacade.getTeamsInLeague();
    }

    @PostMapping("/team/create")
    public final void createTeam(@Valid @RequestBody TeamCreateDTO team) {
        leagueManagerFacade.createNewTeam(team);
    }

    @GetMapping("/game/team/{id}")
    public final Collection<TeamDTO> getGamesForTeam(@PathVariable Long id) {
        return userFacade.getTeamsInLeague();
    }


}