본문 바로가기
JAVA

java 8 stream throw exception bubble up (예외사항 전파)

by 아이티.파머 2019. 5. 7.
반응형

 

 

 

 

 

 

스트림 사용시에 상위 메소드로 익셉션을 전파하고 싶을때 사용

 

try {
      customIds.forEach(customId ->{
        List<Ad> ads = null;
        try {
          ads = fbAdAPIService.findByAllAds(customId);
          adTemps.addAll(ads);
          fbAdDao.fbAdMetaDataSave(ads);
        } catch (Exception e) {
          log.error("페이스북 광고(소재) 데이터 수집 실패 = customerId = {}", customId );
          throw new RuntimeException(e);
        }
      });
    } catch (RuntimeException e) {
      // FIXME : Ad - throw bubble up
      if (e.getCause() != null) {
        throw e;
      }
    }

 

 

 

Returns the cause of this throwable or null if the cause is nonexistent or unknown. (The cause is the throwable that caused this throwable to get thrown.)
This implementation returns the cause that was supplied via one of the constructors requiring a Throwable, or that was set after creation with the initCause(Throwable) method. While it is typically unnecessary to override this method, a subclass can override it to return a cause set by some other means. This is appropriate for a "legacy chained throwable" that predates the addition of chained exceptions to Throwable. Note that it is not necessary to override any of the PrintStackTrace methods, all of which invoke the getCause method to determine the cause of a throwable.

 

 

 

반응형

'JAVA' 카테고리의 다른 글

API call back off time(재요청 타시간)  (0) 2019.05.07
java throws bubble up 예제  (0) 2019.05.07
linux java 설치 (cent os) update-alternatives  (0) 2019.03.31
keytool SSL 사설 인증서 / Spring boot ssl  (0) 2019.03.31
java Blocking Queue  (0) 2019.02.26