RestController para users

This commit is contained in:
Eneko Nieto
2021-01-04 15:24:27 +01:00
parent 51f2ee21cd
commit a5b91c89f1
4 changed files with 41 additions and 4 deletions

View File

@@ -1,8 +1,10 @@
package eu.fosil.okupamicoche.entities
import java.util.*
interface Repository<DATA, ID> {
fun save(data: DATA)
fun delete(data: DATA)
fun findAll(): List<DATA>
fun findById(id: ID): DATA
fun findById(id: ID): Optional<DATA>
}

View File

@@ -0,0 +1,35 @@
package eu.fosil.okupamicoche.spring.controller
import eu.fosil.okupamicoche.entities.User
import eu.fosil.okupamicoche.spring.jpa.UserRepository
import eu.fosil.okupamicoche.usecases.user.CreateUser
import eu.fosil.okupamicoche.usecases.user.DeleteUser
import eu.fosil.okupamicoche.usecases.user.EditUser
import eu.fosil.okupamicoche.usecases.user.ListUsers
import org.springframework.web.bind.annotation.RequestMapping
import org.springframework.web.bind.annotation.RestController
@RestController
@RequestMapping("/api")
class RestController(private val userRepository: UserRepository) {
@RequestMapping("/user/create")
fun createUser(user: User) {
CreateUser(userRepository).createUser(user)
}
@RequestMapping("/user/delete")
fun deleteUser(user: User) {
DeleteUser(userRepository).deleteUser(user)
}
@RequestMapping("/user/edit")
fun editUser(user: User) {
EditUser(userRepository).editUser(user)
}
@RequestMapping("/user/list")
fun listUsers() {
ListUsers(userRepository).listUsers()
}
}

View File

@@ -1,7 +1,7 @@
package eu.fosil.okupamicoche.spring.jpa
import eu.fosil.okupamicoche.entities.Repository
import eu.fosil.okupamicoche.entities.User
import org.springframework.data.repository.CrudRepository
import org.springframework.data.repository.Repository
interface UserRepository : Repository<User, Long>, CrudRepository<User, Long>

View File

@@ -4,7 +4,7 @@ import eu.fosil.okupamicoche.entities.Repository
import eu.fosil.okupamicoche.entities.User
class ListUsers(private val userRepository: Repository<User, Long>) {
fun listUsers() {
userRepository.findAll()
fun listUsers(): List<User> {
return userRepository.findAll()
}
}