/// <summary>
        /// Adds or updates a list item in a growing object.
        /// </summary>
        /// <param name="uri">The URI of the parent object.</param>
        /// <param name="uid">The ID of the element within the list.</param>
        /// <param name="contentType">The content type string for the parent object.</param>
        /// <param name="data">The data (list items) to be added to the growing object.</param>
        /// <returns>The message identifier.</returns>
        public long PutPart(string uri, string uid, string contentType, byte[] data)
        {
            var header = CreateMessageHeader(Protocols.GrowingObject, MessageTypes.GrowingObject.PutPart);

            var message = new PutPart
            {
                Uri         = uri,
                Uid         = uid,
                ContentType = contentType,
                Data        = data
            };

            return(Session.SendMessage(header, message));
        }
 /// <summary>
 /// Handles the PutPart message from a store.
 /// </summary>
 /// <param name="header">The message header.</param>
 /// <param name="message">The PutPart message.</param>
 protected virtual void HandlePutPart(IMessageHeader header, PutPart message)
 {
     Notify(OnPutPart, header, message);
 }