BlackBerry Spark Communications Services for iOS  1.9.0
BBMChatMessageFileProgress Class Reference
Inheritance diagram for BBMChatMessageFileProgress:
BBMElement BBMElementBase

Properties

unsigned long long bytes
 
NSString * chatId
 
NSString * messageId
 
unsigned long long total
 
BBMChatresolvedChatId
 
- Properties inherited from BBMElement
BBMElementState bbmState
 
NSString * primaryKey
 
- Properties inherited from BBMElementBase
BBMContainerparentContainer
 The container (BBMLiveList or BBMLiveMap) holding this element. More...
 

Additional Inherited Members

- Instance Methods inherited from BBMElementBase
(BBMDSModel *) - masterModel
 
(id) - objectForKeyedSubscript:
 
- Class Methods inherited from BBMElementBase
(NSString *) + identifierOfElement:
 

Detailed Description

This list reports upload and download progress information for active 'chatMessage' file attachment transfers.

Each item in this list corresponds to a single 'chatMessage' entry and is identified by the same key fields: 'chatId' and 'messageId'. When an entry exists in this list, bbmcore is actively trying to upload or download the attached file. The fields of the entry in this list indicate the progress bbmcore has made in that active transfer. When an entry is removed from this list, bbmcore is no longer actively trying to transfer it. When a transfer attempt fails, it will not be represented in this list until bbmcore retries it, but the associated 'chatMessage' 'fileState' will still be 'Transferring'.

Changes in this list will be reported only when the previously reported value of 'bytes' and the current value of 'bytes' differ enough that the progress towards the 'total' achieves a different 5% increment.

For example, if a file was 100 bytes in 'total' and the previous report was 37 'bytes', then a change would only be reported for this entry after 'bytes' reached at least 40. A change from 37 to 39 would not be reported by bbmcore because 'bytes' must reach at least 40 to move from the 35-40% increment to the 40-45% (or higher) increment.

Your application doesn't have to wait for a change in 'bytes' to get an initial progress value for an active transfer it has previously been ignoring. Your application can query the list directly with 'requestListElements' at any time. When such a request returns no entry for a given pair of ids, it means that bbmcore isn't currently trying to upload or download the attached file or no progress information is available for the transfer. (See the caveat on 'total'.)

Since
R5

Property Documentation

◆ bytes

- (unsigned long long) bytes
readnonatomicassign

The number of bytes transferred so far in this attempt.Your application must not depend on this reaching 'total' to mean the transfer succeeded or completed. Use the 'fileState' of the actual 'chatMessage' to determine the overall transfer state.

Since
R5

◆ chatId

- (NSString*) chatId
readnonatomicstrong

Holds the id of the chat that contains the attachment's message.

Since
R5

◆ messageId

- (NSString*) messageId
readnonatomicstrong

Holds the id of the message (within that chat referred to by 'chatId') whose attachment's transfer progress is being reported.

Since
R5

◆ total

- (unsigned long long) total
readnonatomicassign

The total number of bytes expected in the transfer.If for some reason the total number of bytes cannot be determined or if the total number of bytes is zero, the transfer will not report progress via this list. This doesn't mean that bbmcore isn't trying to perform the transfer in such cases.Thus, this value is never zero and never changes until the list element is removed.

Since
R5