ZDCDiskExport

@interface ZDCDiskExport : NSObject

Provides all the information about a file being managed by the DiskManager.

  • If the file exists on disk (and is not a nil placholder) then this property will be set. A CryptoFile contains all the information needed to read & decrypt the file.

    Note

    ZDCFileConversion has a various functions you can use decrypt the file.

    If a CryptoFile is returned, it will have a non-nil -[ZDCCryptoFile retainToken] property. This prevents the DiskManager from deleting the file for as long as this retainToken is alive (i.e not deallocated).

    Keep in mind that although the retainToken will prevent the DiskManager from deleting the file, if the file is non-persistent (i.e. stored in an OS designated Caches folder), then the OS is free to do what it pleases, and may decide to delete the file while the app is backgrounded.

    Declaration

    Objective-C

    @property (readonly, strong, nonatomic, nullable) ZDCCryptoFile *cryptoFile;

    Swift

    var cryptoFile: ZDCCryptoFile? { get }
  • True if the file was imported as a nil placeholder.

    Note

    Nil placeholders are allowed for nodeThumbnail & userAvatar, but NOT for nodeData.

    Declaration

    Objective-C

    @property (readonly, nonatomic) BOOL isNilPlaceholder;

    Swift

    var isNilPlaceholder: Bool { get }
  • True if the file is stored in persistent mode. False if the file is stored in cache mode.

    Declaration

    Objective-C

    @property (readonly, nonatomic) BOOL isStoredPersistently;

    Swift

    var isStoredPersistently: Bool { get }
  • The eTag associated with the file when it was imported.

    Declaration

    Objective-C

    @property (readonly, nonatomic, nullable) NSString *eTag;

    Swift

    var eTag: String? { get }
  • The expiration associated with the file when it was imported. If this value is zero, that means the file will inherit the default configuration.

    Declaration

    Objective-C

    @property (readonly, nonatomic) NSTimeInterval expiration;

    Swift

    var expiration: TimeInterval { get }