Skip to content

feat : 작품 검색 연결 및 Paging 데이터 계층 구현 - #947

Open
devfeijoa wants to merge 9 commits into
feat/937from
feat/938
Open

feat : 작품 검색 연결 및 Paging 데이터 계층 구현#947
devfeijoa wants to merge 9 commits into
feat/937from
feat/938

Conversation

@devfeijoa

@devfeijoa devfeijoa commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

📌𝘐𝘴𝘴𝘶𝘦𝘴

📎𝘞𝘰𝘳𝘬 𝘋𝘦𝘴𝘤𝘳𝘪𝘱𝘵𝘪𝘰𝘯

  • 작품 검색 데이터 계층을 담당하는 data:novel 모듈을 추가했습니다.
  • GET /novels 작품 검색 API를 정의하고 query, page, size 파라미터를 전달하도록 구현했습니다.
  • Retrofit을 통해 작품 검색 API를 제공하는 Hilt 모듈을 추가했습니다.
  • 작품 검색 응답 DTO와 컬렉션에서 사용할 검색 엔티티를 구현했습니다.
  • 검색 결과의 작품 ID, 제목, 작가 및 이미지 URL을 엔티티로 변환하도록 연결했습니다.
  • 작품 검색 요청을 수행하는 NovelSearchPagingSource를 구현했습니다.
  • 최초 페이지를 0으로 설정하고 이전·다음 페이지 키를 계산하도록 구현했습니다.
  • 서버의 isLoadable 값을 기준으로 다음 페이지 요청 여부를 결정합니다.
  • API 요청 중 발생한 오류를 Paging의 LoadResult.Error로 전달하도록 구현했습니다.
  • 프로젝트 설정에 data:novel 모듈을 등록하고 Network, Paging, Retrofit 및 Serialization 의존성을 연결했습니다.

검증

  • ./gradlew :data:novel:compileDebugKotlin ktlintCheck --console=plain
  • data:novel 모듈 Debug 컴파일 성공
  • ktlint 성공
  • push 전 전체 단위 테스트 및 앱 Debug 빌드 성공

📷𝘚𝘤𝘳𝘦𝘦𝘯𝘴𝘩𝘰𝘵

💬𝘛𝘰 𝘙𝘦𝘷𝘪𝘦𝘸𝘦𝘳𝘴

  • GET /novels의 요청 파라미터와 응답 모델 매핑을 확인 부탁드립니다.
  • isLoadable을 기준으로 다음 페이지 키를 결정하는 Paging 로직을 확인 부탁드립니다.
  • PagingSourceparams.loadSize를 API의 size로 전달하며, 구체적인 Pager 설정과 화면 연결은 다음 PR에 포함됩니다.
  • 실제 검색 화면과 검색 결과 UI는 포함하지 않습니다.
  • Base: feat/937
  • Head: feat/938

- `data/novel/build.gradle.kts`: Retrofit, Paging, Serialization 등 의존성 설정 및 Android 라이브러리 모듈 환경 구성
- `settings.gradle.kts`: 전체 프로젝트 구성 내 `:data:novel` 모듈 추가
- `data/novel/src/main/AndroidManifest.xml`: 라이브러리 구성을 위한 기본 매니페스트 파일 추가
- `NovelSearchEntity.kt`: 작품 ID, 제목, 작가, 이미지 URL 정보를 포함하는 `NovelSearchEntity` 데이터 클래스 정의
@coderabbitai

coderabbitai Bot commented Aug 18, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: e1e45c4d-af49-4878-be14-99e9fed3cced

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@devfeijoa
devfeijoa requested a review from Sadturtleman August 18, 2026 15:36
@devfeijoa
devfeijoa marked this pull request as ready for review August 18, 2026 15:36
@github-actions
github-actions Bot requested review from m6z1 and s9hn August 18, 2026 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat : 작품 검색 연결 및 Paging 데이터 계층 구현

1 participant