Skip to content

FEATURE: Add CompletableFuture Map APIs#1072

Open
f1v3-dev wants to merge 1 commit intonaver:developfrom
f1v3-dev:feat/v2-map
Open

FEATURE: Add CompletableFuture Map APIs#1072
f1v3-dev wants to merge 1 commit intonaver:developfrom
f1v3-dev:feat/v2-map

Conversation

@f1v3-dev
Copy link
Copy Markdown
Collaborator

@f1v3-dev f1v3-dev commented Apr 1, 2026

🔗 Related Issue

⌨️ What I did

  • v2 API에 Map 컬렉션 지원합니다.
    • mopCreate, mopInsert, mopUpsert, mopUpdate, mopGet, mopDelete 메서드를 구현합니다.
    • Get을 제외한 API는 기존 collectionXXX 형태의 메서드를 재사용합니다.

@f1v3-dev f1v3-dev requested a review from oliviarla April 1, 2026 05:11
@f1v3-dev f1v3-dev self-assigned this Apr 1, 2026
@f1v3-dev f1v3-dev force-pushed the feat/v2-map branch 3 times, most recently from 37a26e4 to 68254f7 Compare April 1, 2026 10:22
oliviarla
oliviarla previously approved these changes Apr 1, 2026
Copy link
Copy Markdown
Collaborator

@jhpark816 jhpark816 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

리뷰 완료

public ArcusFuture<Boolean> mopDelete(String key, List<String> mKeys, boolean dropIfEmpty) {
MapDelete delete = new MapDelete(mKeys, dropIfEmpty, false);
return collectionDelete(key, delete);
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mopDelete 연산처럼
mopGet 연산도 다른 mopGet 메소드를 호출하면 되지 않는 지 ?

mkeys 인자가 없는 메소드에서
new ArrayList<>()를 mkeys 인자로 하여 mopGet 호출하면 되지 않는 지?

1개의 mkey 인자인 경우는 리턴 값이 다른 경우인 데,
이 경우에는 어떻게 하면 되는 지?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1. 모든 Map 조회 (mkeys 인자가 없는 메서드)

mopDelete와 동일한 패턴으로 구현할 수 있어서 아래와 같이 변경하도록 하겠습니다.

public ArcusFuture<Map<String, T>> mopGet(String key, GetArgs args) {
      return mopGet(key, new ArrayList<>(), args);
}

2. 단건 조회 (1개의 mKey)

리턴 값이 다를 뿐만 아니라 응답(ERR_NOT_FOUND_ELEMENT)에 대한 처리가 다건 조회(List<String> mKeys)와 다르기 때문에 별도로 구현을 해야합니다.

응답 상태 단건 (ArcusFuture<T>) 다건 (ArcusFuture<Map<String, T>>)
SUCCESS T Map<String, T>
ERR_NOT_FOUND_ELEMENT null {} (빈 맵)
ERR_NOT_FOUND null null

@jhpark816 jhpark816 requested a review from oliviarla April 2, 2026 10:50
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.

3 participants