@Transactional @Test public void shouldReturnATeam() throws Exception { String teamName = "The A Team"; Team team = TeamBuilder.newBuilder().withName(teamName).create(); teamDao.save(team); Team teamFromDB = teamDao.getByName(teamName); assertEquals("Team Name", teamName, teamFromDB.getTeamName()); }
@Transactional @Test public void shouldReturnAllTeam() throws Exception { String ateamName = "The A Team"; Team ateam = TeamBuilder.newBuilder().withName(ateamName).create(); teamDao.save(ateam); String bteamName = "The B Team"; Team bteam = TeamBuilder.newBuilder().withName(bteamName).create(); teamDao.save(bteam); List<Team> allTeams = teamDao.getAll(); assertNotNull("allTeams must not be null", allTeams); assertEquals("allTeams size", 2, allTeams.size()); }
public List<Team> getAll() { List<Team> teams = teamDao.getAll(); for (Team t : teams) { getTeamMembers(t, teamPersonDao, personDaoJdbi); } return teams; }
@Override public Team findByName(String name) { List<Team> teamList = teamDao.findByName(name); if (teamList.size() > 0) { return get(teamList.get(0).getId()); } else { return null; } }
@Override public void delete(Long id) { // delete associated entries from TEAM and TEAM_PERSON tables, but not from the PERSON table Team team = get(id); if (team == null) return; for (Person p : team.getMembers()) { teamPersonDao.delete(new TeamPerson(team.getId(), p.getId())); } teamDao.delete(team.getId()); }
public Team insertWithTxHandle(final Team team) { // in this case we use an explicit handle, and attach the dao's to the same handle (connection) try (Handle handle = jdbiHelper.getTxHandle()) { handle.begin(); TeamDao teamDao = handle.attach(TeamDao.class); TeamPersonDao teamPersonDao = handle.attach(TeamPersonDao.class); // team->person mapping table long teamId; if (team.getPointOfContact() != null) { teamId = teamDao.insertWithPoC(team); } else { teamId = teamDao.insertWithoutPoC(team); } for (Person p : team.getMembers()) { // update the team->person mapping table teamPersonDao.insert(new TeamPerson(teamId, p.getId())); } // add test code for checking that TX is handled correctly checkIfTxShouldBeRolledBack(team); handle.commit(); return get(teamId); } }
@Override public int count() { return teamDao.count(); }
@Override public Team get(Long pk) { Team team = teamDao.get(pk); getTeamMembers(team, teamPersonDao, personDaoJdbi); return team; }