Skip to content

Commit 62b6572

Browse files
authored
Merge pull request #136 from boostcampwm-2024/fix/ObjectSelect
[Fix] WhiteboardObjectUseCase 프로필 load 시점 변경
2 parents fb164fa + 2a10ecb commit 62b6572

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

Domain/Domain/Sources/UseCase/ManageWhiteboardObjectUseCase.swift

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
1919
private let removedWhiteboardSubject: PassthroughSubject<WhiteboardObject, Never>
2020
private let selectedObjectIDSubject: CurrentValueSubject<UUID?, Never>
2121
private let whiteboardRepository: WhiteboardRepositoryInterface
22-
private let myProfile: Profile
22+
private let profileRepository: ProfileRepositoryInterface
2323
private var whiteboardObjectRepository: WhiteboardObjectRepositoryInterface
2424
private var whiteboardObjectSet: WhiteboardObjectSetInterface
2525
private var cancellables: Set<AnyCancellable>
@@ -43,7 +43,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
4343
self.whiteboardObjectSet = whiteboardObjectSet
4444
self.whiteboardObjectRepository = whiteboardObjectRepository
4545
self.whiteboardRepository = whiteboardRepository
46-
myProfile = profileRepository.loadProfile()
46+
self.profileRepository = profileRepository
4747
cancellables = []
4848
self.whiteboardObjectRepository.delegate = self
4949

@@ -88,6 +88,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
8888
removedWhiteboardSubject.send(object)
8989

9090
if !isReceivedObject {
91+
let myProfile = profileRepository.loadProfile()
9192
guard object.selectedBy == myProfile else { return false }
9293
await whiteboardObjectRepository.send(whiteboardObject: object, isDeleted: true)
9394
}
@@ -104,6 +105,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
104105
object.selectedBy == nil
105106
else { return false }
106107

108+
let myProfile = profileRepository.loadProfile()
107109
object.select(by: myProfile)
108110
await updateObject(whiteboardObject: object, isReceivedObject: false)
109111
selectedObjectIDSubject.send(whiteboardObjectID)
@@ -112,6 +114,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
112114

113115
@discardableResult
114116
public func deselect() async -> Bool {
117+
let myProfile = profileRepository.loadProfile()
115118
guard let selectedObjectID = selectedObjectIDSubject.value else { return false }
116119

117120
guard
@@ -130,6 +133,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
130133
scale: CGFloat,
131134
angle: CGFloat
132135
) async -> Bool {
136+
let myProfile = profileRepository.loadProfile()
133137
guard
134138
let object = await whiteboardObjectSet.fetchObjectByID(id: whiteboardObjectID),
135139
object.selectedBy == myProfile
@@ -143,6 +147,7 @@ public final class ManageWhiteboardObjectUseCase: ManageWhiteboardObjectUseCaseI
143147

144148
@discardableResult
145149
public func changePosition(whiteboardObjectID: UUID, to position: CGPoint) async -> Bool {
150+
let myProfile = profileRepository.loadProfile()
146151
guard
147152
let object = await whiteboardObjectSet.fetchObjectByID(id: whiteboardObjectID),
148153
object.selectedBy == myProfile

0 commit comments

Comments
 (0)