CLEANUP: Replace assert statements with proper exception handling#1077
CLEANUP: Replace assert statements with proper exception handling#1077jhpark816 merged 1 commit intonaver:developfrom
Conversation
1357feb to
4904d46
Compare
4904d46 to
cbfd531
Compare
transcoders 패키지서버에서 온 외부 데이터 검증이며 I/O Thread에서 실행되지 않으므로
protocol/ascii 패키지I/O Thread에서 실행되므로 케이스별로 판단했습니다.
위와 같이 변경하였습니다. 리뷰 부탁드립니다. |
cbfd531 to
d839ec7
Compare
| commandBuilder.append(RN_STRING); | ||
| commandBuilder.append(keysString); | ||
| commandBuilder.append(RN_STRING); | ||
| break; |
There was a problem hiding this comment.
default 문에서 exception throw가 맞지 않나 생각합니다.
아래에 있는 코드를 수행한다면, 오히려 맞지 않기 때문입니다.
There was a problem hiding this comment.
inittialize() 를 호출하는 하위 클래스에서 현재 switch-case 이외의 cmd 값을 넘기지 않습니다.
따라서 도달할 수 없는 코드라고 판단하여 default를 제거한 상태입니다.
There was a problem hiding this comment.
default 문으로 기존대로 assert 추가해 두는 것이 좋겠습니다.
assert는 현재 코드 기준으로 false여야 합니다.
향후 코드 수정하더라도 false를 만족시켜야 함을 알 수 있으며,
위의 예시에서 그 외의 cmd가 없음을 명시하는 효과가 있습니다.
There was a problem hiding this comment.
default:
assert false : "Unknown command: " + cmd;위와 같이 반영하도록 하겠습니다.
| commandBuilder.append(RN_STRING); | ||
| commandBuilder.append(keysString); | ||
| commandBuilder.append(RN_STRING); | ||
| break; |
There was a problem hiding this comment.
default 문으로 기존대로 assert 추가해 두는 것이 좋겠습니다.
assert는 현재 코드 기준으로 false여야 합니다.
향후 코드 수정하더라도 false를 만족시켜야 함을 알 수 있으며,
위의 예시에서 그 외의 cmd가 없음을 명시하는 효과가 있습니다.
d839ec7 to
2bfae52
Compare
2bfae52 to
e12e318
Compare
|
@oliviarla |
🔗 Related Issue
⌨️ What I did
assert문을 중요도에 따라 분류하고, 중요도 높음 항목을 우선 처리합니다.처리 기준
IllegalStateException으로 대체assert제거 → RuntimeException(NPE, IndexOutOfBoundsException 등) 발생하므로 불필요assert제거