change exposed method to construct json dictionary instead of data

This commit is contained in:
Kyle Matthew Hedden 2020-09-03 12:41:01 -04:00
parent 6879126929
commit aa6a5aaf0b
2 changed files with 11 additions and 5 deletions

View File

@ -37,12 +37,12 @@
- (void)setHeadersForRequest:(nonnull NSMutableURLRequest *)request requestParameters:(nonnull MVMCoreRequestParameters *)requestParameters;
// Converts the core request parameters into a JSON object dictionary.
- (nonnull NSDictionary *)convertToJsonDictionary:(nonnull MVMCoreRequestParameters *)requestParameters;
// Creates a request object with the given parameters.
- (nullable NSURLRequest *)requestWithParameters:(nonnull MVMCoreRequestParameters *)requestParameters error:(MVMCoreErrorObject *_Nonnull *_Nonnull)error;
// Converts the core request parameters into the JSON body.
- (nullable NSData *)convertToJSON:(nonnull MVMCoreRequestParameters *)requestParameters forUrl:(nonnull NSURL *)url error:(MVMCoreErrorObject *_Nullable *_Nullable)error;
// Sends a given request to the server. When it is finished, it calls request finished, passing along the json object or nil if there is an error.
- (nullable NSURLSessionTask *)sendRequest:(nonnull MVMCoreRequestParameters *)requestParameters locationForError:(nonnull NSString *)locationForError requestFinished:(nullable void (^)(id _Nullable jsonObject, MVMCoreErrorObject * _Nullable error))requestFinished;

View File

@ -155,7 +155,7 @@
[self setHeadersForRequest:request requestParameters:requestParameters];
MVMCoreErrorObject *jsonError;
NSData *jsonData = [self convertToJSON:requestParameters forUrl:url error:&jsonError];
NSData *jsonData = [self convertToJsonData:requestParameters forUrl:url error:&jsonError];
if (!jsonData) {
*error = jsonError;
return nil;
@ -223,7 +223,7 @@
}
}
- (nullable NSData *)convertToJSON:(nonnull MVMCoreRequestParameters *)requestParameters forUrl:(nonnull NSURL *)url error:(MVMCoreErrorObject *_Nullable *_Nullable)error {
- (nonnull NSDictionary *)convertToJsonDictionary:(nonnull MVMCoreRequestParameters *)requestParameters {
NSMutableDictionary *parameters = [NSMutableDictionary dictionary];
// Sets up the Initial parameters.
@ -239,6 +239,12 @@
[parameters setObject:requestParameters.parameters forKey:@"RequestParams"];
}
return parameters;
}
- (nullable NSData *)convertToJsonData:(nonnull MVMCoreRequestParameters *)requestParameters forUrl:(nonnull NSURL *)url error:(MVMCoreErrorObject *_Nullable *_Nullable)error {
NSDictionary *parameters = [self convertToJsonDictionary:requestParameters];
// Ensure the parameters are valid json.
if (![NSJSONSerialization isValidJSONObject:parameters]) {
if (error) {