ably-cocoa/Source/ARTNSMutableRequest+ARTRest.m

18 lines
739 B
Objective-C

#import "ARTNSMutableRequest+ARTRest.h"
#import "ARTEncoder.h"
@implementation NSMutableURLRequest (ARTRest)
- (void)setAcceptHeader:(id<ARTEncoder>)defaultEncoder encoders:(NSDictionary<NSString *, id<ARTEncoder>> *)encoders {
NSMutableArray *allEncoders = [NSMutableArray arrayWithArray:[encoders.allValues valueForKeyPath:@"mimeType"]];
NSString *defaultMimetype = [defaultEncoder mimeType];
// Make the mime type of the default encoder the first element of the Accept header field
[allEncoders removeObject:defaultMimetype];
[allEncoders insertObject:defaultMimetype atIndex:0];
NSString *accept = [allEncoders componentsJoinedByString:@","];
[self setValue:accept forHTTPHeaderField:@"Accept"];
}
@end