1 // Copyright 2015-present 650 Industries. All rights reserved. 2 3 #import "EXCachedResource.h" 4 #import <EXUpdates/EXUpdatesRawManifest.h> 5 6 NS_ASSUME_NONNULL_BEGIN 7 8 @interface EXManifestResource : EXCachedResource 9 10 - (instancetype)initWithResourceName:(NSString *)resourceName 11 resourceType:(NSString *)resourceType 12 remoteUrl:(NSURL *)url 13 cachePath:(NSString * _Nullable)cachePath NS_UNAVAILABLE; 14 15 /** 16 * @param manifestUrl the actual http url from which to download the manifest 17 * @param originalUrl whatever url the user originally requested 18 */ 19 - (instancetype)initWithManifestUrl:(NSURL *)url 20 originalUrl:(NSURL * _Nullable)originalUrl NS_DESIGNATED_INITIALIZER; 21 22 /** 23 * Manifests will not be cached implicitly as we want to wait until we've also 24 * downloaded the whole bundle. This method tells the ManifestResource it's safe to cache 25 */ 26 - (void)writeToCache; 27 28 - (NSError *)verifyManifestSdkVersion:(EXUpdatesRawManifest *)maybeManifest; 29 - (NSError *)formatError:(NSError *)error; 30 31 @end 32 33 NS_ASSUME_NONNULL_END 34