Advertisement
Guest User

Untitled

a guest
Dec 9th, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 1.02 KB | None | 0 0
  1. import org.springframework.data.jpa.repository.JpaRepository
  2. import org.springframework.stereotype.Repository
  3. import java.util.concurrent.TimeUnit
  4. import javax.inject.Inject
  5. import javax.persistence.Entity
  6. import javax.persistence.Id
  7.  
  8. class Horacek @Inject constructor(private val developerRepository: DeveloperRepository,
  9.                                   private val mailService: MailService) : AbstractAeviManager {
  10.  
  11.     override fun behaviour(): EgoIncrease {
  12.         developerRepository.findAll().forEach {
  13.             TimeUnit.DAYS.sleep(7)
  14.             mailService.send(it.email, "Mel by ses nad sebou zamyslet!")
  15.         }
  16.         return EgoIncrease.BIG
  17.     }
  18.  
  19. }
  20.  
  21. enum class EgoIncrease {
  22.     SMALL, BIG
  23. }
  24.  
  25. interface AbstractAeviManager {
  26.     fun behaviour(): EgoIncrease
  27. }
  28.  
  29. @Entity
  30. class Developer(
  31.     @Id var id: Long? = null,
  32.     val email: String)
  33.  
  34. @Repository
  35. interface DeveloperRepository : JpaRepository<Developer, Long>
  36.  
  37. interface MailService {
  38.     fun send(email: String, message: String)
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement