Skip to content

Commit

Permalink
fix: MembersAPIWorker AccessToken Parameter 제거
Browse files Browse the repository at this point in the history
  • Loading branch information
Do-hyun-Kim committed Oct 1, 2024
1 parent b0d6f0d commit 4f94b09
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ typealias MembersAPIWorker = MembersAPIs.Worker

extension MembersAPIs {
final class Worker: APIWorker {

static let queue = {
ConcurrentDispatchQueueScheduler(queue: DispatchQueue(label: "ProfileAPIQueue", qos: .utility))
}()
Expand All @@ -33,50 +32,53 @@ extension MembersAPIs {

extension MembersAPIWorker {

public func fetchProfileMember(accessToken: String, memberId: String) -> Single<MembersProfileResponseDTO?> {
public func fetchProfileMember(memberId: String) -> Single<MembersProfileResponseDTO?> {
let spec = MembersAPIs.profileMember(memberId).spec

return request(spec: spec, headers: [BibbiAPI.Header.xAppVersion, BibbiAPI.Header.xUserPlatform, BibbiAPI.Header.xAppKey, BibbiAPI.Header.acceptJson, BibbiAPI.Header.xAuthToken(accessToken)])
let accessToken: String = App.Repository.token.accessToken.value?.accessToken ?? ""
let headers = BibbiHeader.commonHeaders(accessToken: accessToken)
return request(spec: spec, headers: headers)
.subscribe(on: Self.queue)
.map(MembersProfileResponseDTO.self)
.catchAndReturn(nil)
.asSingle()

}

public func createProfileImagePresingedURL(accessToken: String, parameters: Encodable) -> Single<CameraDisplayImageResponseDTO?> {
public func createProfileImagePresingedURL(parameters: Encodable) -> Single<CameraDisplayImageResponseDTO?> {
let spec = MembersAPIs.profileAlbumUploadImageURL.spec

return request(spec: spec, headers: [BibbiAPI.Header.xAppVersion, BibbiAPI.Header.xUserPlatform, BibbiAPI.Header.xAppKey, BibbiAPI.Header.acceptJson, BibbiAPI.Header.xAuthToken(accessToken)], jsonEncodable: parameters)
let accessToken: String = App.Repository.token.accessToken.value?.accessToken ?? ""
let headers = BibbiHeader.commonHeaders(accessToken: accessToken)
return request(spec: spec, headers: headers, jsonEncodable: parameters)
.subscribe(on: Self.queue)
.map(CameraDisplayImageResponseDTO.self)
.catchAndReturn(nil)
.asSingle()
}

public func uploadToProfilePresingedURL(accessToken: String, toURL url: String, with imageData: Data) -> Single<Bool> {
public func uploadToProfilePresingedURL(toURL url: String, with imageData: Data) -> Single<Bool> {
let spec = MembersAPIs.profileUploadToPreSignedURL(url).spec

return upload(spec: spec, headers: [BibbiAPI.Header.xAppVersion, BibbiAPI.Header.xUserPlatform, BibbiAPI.Header.xAppKey, BibbiAPI.Header.xAuthToken(accessToken)], image: imageData)
let accessToken: String = App.Repository.token.accessToken.value?.accessToken ?? ""
let headers = BibbiHeader.commonHeaders(accessToken: accessToken)
return upload(spec: spec, headers: headers, image: imageData)
.subscribe(on: Self.queue)
.catchAndReturn(false)
.map { _ in true }
}

public func updateProfileAlbumImageToS3(accessToken: String, memberId: String, parameter: Encodable) -> Single<MembersProfileResponseDTO?> {
public func updateProfileAlbumImageToS3(memberId: String, parameter: Encodable) -> Single<MembersProfileResponseDTO?> {
let spec = MembersAPIs.profileEditImage(memberId).spec

return request(spec: spec, headers: [BibbiAPI.Header.xAppVersion, BibbiAPI.Header.xUserPlatform, BibbiAPI.Header.xAppKey, BibbiAPI.Header.acceptJson, BibbiAPI.Header.xAuthToken(accessToken)], jsonEncodable: parameter)
let accessToken: String = App.Repository.token.accessToken.value?.accessToken ?? ""
let headers = BibbiHeader.commonHeaders(accessToken: accessToken)
return request(spec: spec, headers: headers, jsonEncodable: parameter)
.subscribe(on: Self.queue)
.map(MembersProfileResponseDTO.self)
.catchAndReturn(nil)
.asSingle()
}

public func deleteProfileImageToS3(accessToken: String, memberId: String) -> Single<MembersProfileResponseDTO?> {
public func deleteProfileImageToS3(memberId: String) -> Single<MembersProfileResponseDTO?> {
let spec = MembersAPIs.profileDeleteImage(memberId).spec

return request(spec: spec,headers: [BibbiAPI.Header.xAppVersion, BibbiAPI.Header.xUserPlatform, BibbiAPI.Header.xAppKey, BibbiAPI.Header.acceptJson])
return request(spec: spec)
.subscribe(on: Self.queue)
.map(MembersProfileResponseDTO.self)
.catchAndReturn(nil)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ public final class MembersRepository {

private let familyUserDefaults: FamilyInfoUserDefaults = FamilyInfoUserDefaults()
private let membersAPIWorker: MembersAPIWorker = MembersAPIWorker()
private let accessToken: String = App.Repository.token.accessToken.value?.accessToken ?? ""
public init() { }

}
Expand All @@ -28,13 +27,13 @@ public final class MembersRepository {
extension MembersRepository: MembersRepositoryProtocol {

public func fetchProfileMemberItems(memberId: String) -> Single<MembersProfileEntity?> {
return membersAPIWorker.fetchProfileMember(accessToken: accessToken, memberId: memberId)
return membersAPIWorker.fetchProfileMember(memberId: memberId)
.map { $0?.toDomain() }
.catchAndReturn(nil)
}

public func updataProfileImageToS3(memberId: String, parameter: ProfileImageEditParameter) -> Single<MembersProfileEntity?> {
return membersAPIWorker.updateProfileAlbumImageToS3(accessToken: accessToken, memberId: memberId, parameter: parameter)
return membersAPIWorker.updateProfileAlbumImageToS3(memberId: memberId, parameter: parameter)
.do {
guard let userEntity = $0?.toProfileEntity() else { return }
self.familyUserDefaults.updateFamilyMember(userEntity)
Expand All @@ -44,7 +43,7 @@ extension MembersRepository: MembersRepositoryProtocol {
}

public func deleteProfileImageToS3(memberId: String) -> Single<MembersProfileEntity?> {
return membersAPIWorker.deleteProfileImageToS3(accessToken: accessToken, memberId: memberId)
return membersAPIWorker.deleteProfileImageToS3(memberId: memberId)
.do {
guard let userEntity = $0?.toProfileEntity() else { return }
self.familyUserDefaults.updateFamilyMember(userEntity)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,13 +125,13 @@ public final class AccountRepository: AccountImpl {
}

public func executePresignedImageURLCreate(parameter: CameraDisplayImageParameters) -> Observable<CameraPreSignedEntity?> {
return profileWorker.createProfileImagePresingedURL(accessToken: accessToken, parameters: parameter)
return profileWorker.createProfileImagePresingedURL(parameters: parameter)
.compactMap { $0?.toDomain() }
.asObservable()
}

public func executeProfileImageUpload(to url: String, data: Data) -> Observable<Bool> {
return profileWorker.uploadToProfilePresingedURL(accessToken: accessToken, toURL: url, with: data)
return profileWorker.uploadToProfilePresingedURL(toURL: url, with: data)
.asObservable()
}

Expand Down

0 comments on commit 4f94b09

Please sign in to comment.