aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firebase/Storage/FIRStorageUpdateMetadataTask.m
diff options
context:
space:
mode:
Diffstat (limited to 'Firebase/Storage/FIRStorageUpdateMetadataTask.m')
-rw-r--r--Firebase/Storage/FIRStorageUpdateMetadataTask.m36
1 files changed, 11 insertions, 25 deletions
diff --git a/Firebase/Storage/FIRStorageUpdateMetadataTask.m b/Firebase/Storage/FIRStorageUpdateMetadataTask.m
index fa5955a..cea4e7d 100644
--- a/Firebase/Storage/FIRStorageUpdateMetadataTask.m
+++ b/Firebase/Storage/FIRStorageUpdateMetadataTask.m
@@ -48,7 +48,7 @@
NSDictionary *updateDictionary = [_updateMetadata updatedMetadata];
NSData *updateData = [NSData frs_dataFromJSONDictionary:updateDictionary];
request.HTTPMethod = @"PATCH";
- request.timeoutInterval = self.reference.storage.maxUploadRetryTime;
+ request.timeoutInterval = self.reference.storage.maxOperationRetryTime;
request.HTTPBody = updateData;
NSString *typeString = @"application/json; charset=UTF-8";
[request setValue:typeString forHTTPHeaderField:@"Content-Type"];
@@ -64,37 +64,23 @@
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-retain-cycles"
_fetcherCompletion = ^(NSData *data, NSError *error) {
+ FIRStorageMetadata *metadata;
if (error) {
if (!self.error) {
self.error = [FIRStorageErrors errorWithServerError:error reference:self.reference];
}
- if (callback) {
- callback(nil, self.error);
+ } else {
+ NSDictionary *responseDictionary = [NSDictionary frs_dictionaryFromJSONData:data];
+ if (responseDictionary) {
+ metadata = [[FIRStorageMetadata alloc] initWithDictionary:responseDictionary];
+ [metadata setType:FIRStorageMetadataTypeFile];
+ } else {
+ self.error = [FIRStorageErrors errorWithInvalidRequest:data];
}
- self->_fetcherCompletion = nil;
- return;
}
- NSDictionary *responseDictionary = [NSDictionary frs_dictionaryFromJSONData:data];
- if (responseDictionary) {
- FIRStorageMetadata *metadata =
- [[FIRStorageMetadata alloc] initWithDictionary:responseDictionary];
- [metadata setType:FIRStorageMetadataTypeFile];
- if (callback) {
- callback(metadata, nil);
- }
- } else {
- NSString *returnedData = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
- NSString *invalidDataString =
- [NSString stringWithFormat:kFIRStorageInvalidDataFormat, returnedData];
- NSDictionary *dict;
- if (invalidDataString.length > 0) {
- dict = @{NSLocalizedFailureReasonErrorKey : invalidDataString};
- }
- self.error = [FIRStorageErrors errorWithCode:FIRStorageErrorCodeUnknown infoDictionary:dict];
- if (callback) {
- callback(nil, self.error);
- }
+ if (callback) {
+ callback(metadata, self.error);
}
self->_fetcherCompletion = nil;
};