ZDCCloudDataInfo

@interface ZDCCloudDataInfo <NSCoding, NSCopying>

The CloudDataInfo class contains information about the DATA file in the cloud.

Recall that the DATA file stores the node’s content in the cloud. That is, the data generated by your app via ZeroDarkCloudDelegate. The data is stored in the cloud in an encrypted format.

  • Creates an instance from a decrypted header, along with the corresponding HTTP header values that were returned with the DATA download.

    Declaration

    Objective-C

    - (nonnull instancetype)initWithCloudFileHeader:(ZDCCloudFileHeader)header
                                               eTag:(nonnull NSString *)eTag
                                       lastModified:(nonnull NSDate *)lastModified;

    Swift

    init!(cloudFileHeader header: ZDCCloudFileHeader, eTag: Any!, lastModified: Any!)
  • The size (in bytes) of the metadata section within the cloud’s data file. This corresponds to [ZeroDarkCloudDelegate metadataForNode:atPath:transaction:].

    Declaration

    Objective-C

    @property (readonly, assign, nonatomic) uint64_t metadataSize;

    Swift

    var metadataSize: Int32 { get }
  • The size (in bytes) of the thumbnail section within the cloud’s data file. This corresponds to [ZeroDarkCloudDelegate thumbnailForNode:atPath:transaction:].

    Declaration

    Objective-C

    @property (readonly, assign, nonatomic) uint64_t thumbnailSize;

    Swift

    var thumbnailSize: Int32 { get }
  • The size (in bytes) of the main data section within the cloud’s data file. This corresponds to [ZeroDarkCloudDelegate dataForNode:atPath:transaction:].

    Declaration

    Objective-C

    @property (readonly, assign, nonatomic) uint64_t dataSize;

    Swift

    var dataSize: Int32 { get }
  • It is often the case that a node’s data will be updated in the cloud, however the underlying thumbanil isn’t changed. For example, the thumbnail for text documents & PDF’s is generated from the fist page. So if the first page isn’t changed, then the thumbnail hasn’t changed.

    This value allows you to determine if the cloud’s thumbnail actually differs from the thumbnail you already have locally.

    Declaration

    Objective-C

    @property (readonly, assign, nonatomic) uint64_t thumbnailxxHash64;

    Swift

    var thumbnailxxHash64: Int32 { get }
  • The server’s eTag value for the DATA file.

    Declaration

    Objective-C

    @property (readonly, copy, nonatomic) NSString *_Nonnull eTag;

    Swift

    var eTag: UnsafeMutablePointer<Int32>! { get }
  • The server’s lastModified value for the DATA file.

    Declaration

    Objective-C

    @property (readonly, copy, nonatomic) NSDate *_Nonnull lastModified;

    Swift

    var lastModified: UnsafeMutablePointer<Int32>! { get }
  • Returns a raw struct version, which is used when storing the data in the cloudFile header.

    Declaration

    Objective-C

    - (ZDCCloudFileHeader)rawHeader;

    Swift

    func rawHeader() -> ZDCCloudFileHeader