Нет описания

MovieController.java 2.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package fr.natan.akkastreamfileprocessingapi.controller;
  2. import fr.natan.akkastreamfileprocessingapi.models.Models;
  3. import fr.natan.akkastreamfileprocessingapi.service.AkkaStreamFileProcessing;
  4. import org.springframework.http.HttpStatus;
  5. import org.springframework.http.ResponseEntity;
  6. import org.springframework.web.bind.annotation.PathVariable;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.bind.annotation.RequestMethod;
  9. import org.springframework.web.bind.annotation.RestController;
  10. import scala.collection.IndexedSeq;
  11. import scala.concurrent.Future;
  12. @SuppressWarnings("SpellCheckingInspection")
  13. @RestController
  14. public class MovieController {
  15. private final AkkaStreamFileProcessing akkaStreamFilesProcessing;
  16. public MovieController(AkkaStreamFileProcessing akkaStreamFilesProcessing) {
  17. this.akkaStreamFilesProcessing = akkaStreamFilesProcessing;
  18. }
  19. @RequestMapping(value = "/persons/id/{personID}", method = RequestMethod.GET)
  20. private Future<Models.Person> getPersonByID(@PathVariable(name = "personID") String nconst){
  21. return akkaStreamFilesProcessing.getPersonById(nconst);
  22. }
  23. @RequestMapping(value = "/persons/name/{primaryName}", method = RequestMethod.GET)
  24. private Future<IndexedSeq<Models.Person>> getPersonByName(@PathVariable(name = "primaryName") String primaryName){
  25. return akkaStreamFilesProcessing.getPersonByName(primaryName);
  26. }
  27. @RequestMapping(value = "/tvseries/{tvseriePrimaryTitle}", method = RequestMethod.GET)
  28. private Future<IndexedSeq<Models.TvSeries>> getTvserieByPrimaryTitle(@PathVariable(name ="tvseriePrimaryTitle" ) String tvseriePrimaryTitle){
  29. return akkaStreamFilesProcessing.getTvSerieByPrimaryTitle(tvseriePrimaryTitle);
  30. }
  31. @RequestMapping(value = "/tvseries/title/{tvSerieTitle}", method = RequestMethod.GET)
  32. private Future<IndexedSeq<Models.Person>> getPersonsForTvSerie(@PathVariable(name = "tvSerieTitle") String tvSerieTitle){
  33. return akkaStreamFilesProcessing.getTeamOfPersonsForTvSerie(tvSerieTitle);
  34. }
  35. @RequestMapping(value = "/persons", method = RequestMethod.GET)
  36. private ResponseEntity<String> getAllPersons(){
  37. akkaStreamFilesProcessing.getAllPersons();
  38. return new ResponseEntity<>("is running", HttpStatus.OK);
  39. }
  40. @RequestMapping(value = "/tvseries", method = RequestMethod.GET)
  41. private ResponseEntity<String> getAllvSeries() {
  42. akkaStreamFilesProcessing.getAllTvSeries();
  43. return new ResponseEntity<>("is running", HttpStatus.OK);
  44. }
  45. }

Powered by TurnKey Linux.