scala retry 참조 코드
import util._
object RetryUtils {
@annotation.tailrec
def retry[T](n: Int)(fn: => T): T = {
Try { fn } match {
case Success(x) => x
case _ if n > 1 => retry(n - 1)(fn)
case Failure(e) => throw e
}
}
}
예제 코드
val retryResult = retry(3) {
if (validateObject(esClient)) {
esClient
} else {
null
}
}
'scala' 카테고리의 다른 글
| trait의 내부 필드 접근하기 - 컴패년 오브젝트 (0) | 2018.02.02 |
|---|---|
| [scala] sksamuel 라이브러리에서 동기 코드로 개발 (await.result) 예제 (0) | 2018.01.30 |
| scala retry 참조 코드 (0) | 2018.01.23 |
| Spark와 Kafka 연동 (0) | 2018.01.20 |
| [scala] 배열에서 앞 또는 뒤 엘리먼트 제거하기 - slice (0) | 2018.01.17 |
| 스칼라 빈 값 정의 (0) | 2018.01.11 |



댓글을 달아 주세요