위 PR의 후속 PR 입니다.
KeyGenerator 구현체 뿐만 아니라, @Deprecated가 붙지 않은 모든 클래스에 null 사용 가능 여부를 어노테이션으로 명시했습니다.
ArcusCache 클래스의 put 관련 메소드 중, putIfAbsent() 메소드에 한해 value에 @NonNull이 붙어 있는 것은 해당 메소드에서만 value가 null일 경우 Exception을 던지기 때문입니다.
다른 put 관련 메소드에서는 value에 대해 null 체크를 한 후 null이면 로그를 찍고 캐싱 로직을 수행하지 않습니다.
https://github.com/naver/arcus-spring/pull/61
위 PR의 후속 PR 입니다. KeyGenerator 구현체 뿐만 아니라,
@Deprecated
가 붙지 않은 모든 클래스에 null 사용 가능 여부를 어노테이션으로 명시했습니다.ArcusCache 클래스의 put 관련 메소드 중, putIfAbsent() 메소드에 한해 value에
@NonNull
이 붙어 있는 것은 해당 메소드에서만 value가 null일 경우 Exception을 던지기 때문입니다. 다른 put 관련 메소드에서는 value에 대해 null 체크를 한 후 null이면 로그를 찍고 캐싱 로직을 수행하지 않습니다.