Skip to content
This repository was archived by the owner on Sep 15, 2025. It is now read-only.

Commit 93b0a9e

Browse files
committed
Use WordPressComRESTAPIInterfacing to run ObjC multipart POST
1 parent 35850de commit 93b0a9e

File tree

4 files changed

+11
-5
lines changed

4 files changed

+11
-5
lines changed

WordPressKit/MediaServiceRemoteREST.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ - (void)uploadMedia:(NSArray *)mediaItems
143143
[fileParts addObject:filePart];
144144
}
145145

146-
[self.wordPressComRestApi multipartPOST:requestUrl
146+
[self.wordPressComRESTAPI multipartPOST:requestUrl
147147
parameters:parameters
148148
fileParts:fileParts
149149
requestEnqueued:^(NSNumber *taskID) {
@@ -204,7 +204,7 @@ - (void)uploadMedia:(RemoteMedia *)media
204204
return;
205205
}
206206
FilePart *filePart = [[FilePart alloc] initWithParameterName:@"media[]" url:media.localURL fileName:filename mimeType:type];
207-
__block NSProgress *localProgress = [self.wordPressComRestApi multipartPOST:requestUrl
207+
__block NSProgress *localProgress = [self.wordPressComRESTAPI multipartPOST:requestUrl
208208
parameters:parameters
209209
fileParts:@[filePart]
210210
requestEnqueued:nil

WordPressKit/PostServiceRemoteREST.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ - (void)createPost:(RemotePost *)post
165165
parameters[@"title"] = post.title;
166166
parameters[@"status"] = post.status;
167167
FilePart *filePart = [[FilePart alloc] initWithParameterName:@"media[]" url:media.localURL fileName:filename mimeType:type];
168-
[self.wordPressComRestApi multipartPOST:requestUrl
168+
[self.wordPressComRESTAPI multipartPOST:requestUrl
169169
parameters:parameters
170170
fileParts:@[filePart]
171171
requestEnqueued:^(NSNumber *taskID) {

WordPressKit/WordPressComRESTAPIInterfacing.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
- (NSProgress * _Nullable)multipartPOST:(NSString * _Nonnull)URLString
2020
parameters:(NSDictionary<NSString *, NSObject *> * _Nullable)parameters
2121
fileParts:(NSArray<FilePart *> * _Nonnull)fileParts
22-
requestEnqueued:(void (^ _Nonnull)(NSNumber * _Nonnull))requestEnqueue
22+
requestEnqueued:(void (^ _Nullable)(NSNumber * _Nonnull))requestEnqueue
2323
success:(void (^ _Nonnull)(id _Nonnull, NSHTTPURLResponse * _Nullable))success
2424
failure:(void (^ _Nonnull)(NSError * _Nonnull, NSHTTPURLResponse * _Nullable))failure;
2525

WordPressKit/WordPressComRestApi.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -633,7 +633,13 @@ extension WordPressComRestApi: WordPressComRESTAPIInterfacing {
633633
_ URLString: String,
634634
parameters: [String: NSObject]?,
635635
fileParts: [FilePart],
636-
requestEnqueued: @escaping (NSNumber) -> Void,
636+
// Notice this does not require @escaping because it is Optional.
637+
//
638+
// Annotate with @escaping, and the compiler will fail with:
639+
// > Closure is already escaping in optional type argument
640+
//
641+
// It is necessary to explicitly set this as Optional because of the _Nullable parameter requirement in the Objective-C protocol.
642+
requestEnqueued: ((NSNumber) -> Void)?,
637643
success: @escaping (Any, HTTPURLResponse?) -> Void,
638644
failure: @escaping (any Error, HTTPURLResponse?) -> Void
639645
) -> Progress? {

0 commit comments

Comments
 (0)