| | |
| | | @Override |
| | | public List<TicketModel> getTickets(RepositoryModel repository, TicketFilter filter) { |
| | | List<TicketModel> list = new ArrayList<TicketModel>(); |
| | | List<Repository> databases = new ArrayList<Repository>(); |
| | | List<RepositoryModel> models = new ArrayList<RepositoryModel>(); |
| | | |
| | | Repository db = repositoryManager.getRepository(repository.name); |
| | | if(repository == null) |
| | | { |
| | | List<String> allRepo = repositoryManager.getRepositoryList(); |
| | | for(int i = 0; i < allRepo.size(); i++) |
| | | { |
| | | databases.add(repositoryManager.getRepository(allRepo.get(i))); |
| | | models.add(repositoryManager.getRepositoryModel(allRepo.get(i))); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | databases.add(repositoryManager.getRepository(repository.name)); |
| | | models.add(repository); |
| | | } |
| | | |
| | | for(int i = 0; i < databases.size(); i++) |
| | | { |
| | | Repository db = databases.get(i); |
| | | try { |
| | | RefModel ticketsBranch = getTicketsBranch(db); |
| | | if (ticketsBranch == null) { |
| | |
| | | long ticketId = Long.parseLong(tid); |
| | | List<Change> changes = TicketSerializer.deserializeJournal(json); |
| | | if (ArrayUtils.isEmpty(changes)) { |
| | | log.warn("Empty journal for {}:{}", repository, path.path); |
| | | log.warn("Empty journal for {}:{}", models.get(i), path.path); |
| | | continue; |
| | | } |
| | | TicketModel ticket = TicketModel.buildTicket(changes); |
| | | ticket.project = repository.projectPath; |
| | | ticket.repository = repository.name; |
| | | ticket.project = models.get(i).projectPath; |
| | | ticket.repository = models.get(i).name; |
| | | ticket.number = ticketId; |
| | | |
| | | // add the ticket, conditionally, to the list |
| | |
| | | log.error(null, e); |
| | | } |
| | | } |
| | | } finally { |
| | | db.close(); |
| | | } |
| | | } |
| | | |
| | | // sort the tickets by creation |
| | | Collections.sort(list); |
| | | return list; |
| | | } finally { |
| | | db.close(); |
| | | } |
| | | } |
| | | |
| | | /** |