@RequestMapping(value = "/torznab/api", produces = MediaType.TEXT_XML_VALUE)
public ResponseEntity<? extends Object> torznabapi(NewznabParameters params) throws Exception {
if (params.getT() == ActionAttribute.CAPS) {
return new ResponseEntity<Object>(NewznabMockBuilder.getCaps(), HttpStatus.OK);
}
NewznabXmlRoot rssRoot = NewznabMockBuilder.generateResponse(0, 10, params.getApikey(), false, Collections.emptyList());
Random random = new Random();
for (NewznabXmlItem item : rssRoot.getRssChannel().getItems()) {
item.setNewznabAttributes(new ArrayList<>());
item.getTorznabAttributes().add(new NewznabAttribute("seeders", String.valueOf(random.nextInt(30000))));
item.getTorznabAttributes().add(new NewznabAttribute("peers", String.valueOf(random.nextInt(30000))));
if (random.nextInt(5) > 3) {
item.getTorznabAttributes().add(new NewznabAttribute("grabs", String.valueOf(random.nextInt(30000))));
}
item.setCategory("5000");
item.setGrabs(null);
}
return new ResponseEntity<Object>(rssRoot, HttpStatus.OK);
}