Swagger / OpenAPI
RouterFunction과 handler source를 분석해 OpenAPI JSON을 변경 시에만 다시 씁니다.
Functional endpoint mode
ApiAccountRouter.java
javanested path와 HTTP method, handler method reference를 합쳐 endpoint를 구성합니다. handler parser가 request body와 response publisher type을 추론합니다.
SwaggerJsonFileWatcher.Config
watchDirectory
기본 src/main/java
swaggerOutputFile
기본 src/main/resources/static/swagger.json
projectMode
기본 FUNCTIONAL_ENDPOINT, 선택 MVC
addDecompileJar / addDecompileJarClass
외부 jar type의 source 분석
addSourceClasspath
symbol resolution용 source/classpath
customTypeMapper
Class와 schema Map을 받아 custom schema를 적용
추론을 보정하는 annotation
변경된 경우에만 write
generation 결과가 기존 JSON과 같으면 파일 timestamp를 불필요하게 바꾸지 않습니다. 프론트 watcher가 swagger 파일 변경을 감지하는 구조에서 재생성 loop를 줄이는 데 유리합니다.