MessageSet Lianja Reference Documentation

MessageSet

Represents a collection of email message sequence numbers or UIDs on an IMAP server.

Object Creation

loObject = createobject("CkMessageSet")

Properties

Count As Numeric (read-only)

The number of message UIDs (or sequence numbers) in this message set.

HasUids As Boolean

If .T. then the message set contains UIDs, otherwise it contains sequence numbers.

Methods

ContainsId(msgId As Numeric) As Boolean

Returns .T. if the msgId is contained in the message set.

FromCompactString(str As Character) As Boolean

Loads the message set from a compact-string representation. Here are some examples:

Non-Compact String

Compact String

1,2,3,4,5

1:5

1,2,3,4,5,8,9,10

1:5,8:10

1,3,4,5,8,9,10

1,3:5,8:10

GetId(index As Numeric) As Numeric

Returns the message ID of the Nth message in the set. (indexing begins at 0). Returns -1 if the index is out of range.

InsertId(id As Numeric)

Inserts a message ID into the set. If the ID already exists, a duplicate is not inserted.

LoadTaskResult(task As CkTask) As Boolean

Introduced in version 9.5.0.52

Loads the message set from a completed asynchronous task.

Returns .T. for success, .F. for failure.

RemoveId(id As Numeric)

Removes a message ID from the set.

ToCommaSeparatedStr() As Character

Returns a string of comma-separated message IDs. (This is the non-compact string format.)

Returns .T. for success, .F. for failure.

ToCompactString() As Character

Returns the set of message IDs represented as a compact string. Here are some examples:

Non-Compact String

Compact String

1,2,3,4,5

1:5

1,2,3,4,5,8,9,10

1:5,8:10

1,3,4,5,8,9,10

1,3:5,8:10

Returns .T. for success, .F. for failure.