Nantes Université

Skip to content
Extraits de code Groupes Projets
Non vérifiée Valider b303b22f rédigé par Thibault Duperron's avatar Thibault Duperron Validation de GitHub
Parcourir les fichiers

Delete exo10/src/main/kotlin/iut/nantes/MovieController.kt

parent daed1038
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
package iut.nantes
import org.springframework.http.HttpHeaders
import org.springframework.http.HttpStatus
import org.springframework.http.HttpStatusCode
import org.springframework.http.ResponseEntity
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.PathVariable
import org.springframework.web.bind.annotation.PostMapping
import org.springframework.web.bind.annotation.RequestBody
import org.springframework.web.bind.annotation.RequestHeader
import org.springframework.web.bind.annotation.RestController
import org.springframework.web.servlet.function.ServerRequest.Headers
@RestController
class MovieController(val db: Database) {
@PostMapping("/api/movies")
fun createMovie(@RequestBody movie: Movie): ResponseEntity<Movie> {
try {
db.addMovie(movie)
return ResponseEntity.status(HttpStatus.CREATED).body(movie)
} catch (e: IllegalArgumentException) {
return ResponseEntity.status(HttpStatus.CONFLICT).build()
}
}
@GetMapping("/api/movies")
fun listMovies(@RequestHeader(name = HttpHeaders.ACCEPT_LANGUAGE, required = false) language: String?): List<Movie> {
return db.listMovies()
}
@GetMapping("/api/movies/{name}")
fun getMovie(@PathVariable name: String): ResponseEntity<Movie> {
val movie = db.getMovie(name)
return if (movie != null) {
ResponseEntity.ok(movie)
} else {
ResponseEntity.notFound().build()
}
}
}
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter