Beispiel #1
0
        /// <summary>
        /// archive message.
        /// </summary>
        /// <param name="repository">
        /// The repository.
        /// </param>
        /// <param name="messageId">
        /// The message Id.
        /// </param>
        /// <param name="messageFlags">
        /// The message Flags.
        /// </param>
        public static void Archive(
            this IRepository <UserPMessage> repository,
            [NotNull] int messageId,
            [NotNull] PMessageFlags messageFlags)
        {
            CodeContracts.VerifyNotNull(repository);

            messageFlags.IsArchived = true;

            repository.UpdateOnly(() => new UserPMessage {
                Flags = messageFlags.BitValue
            }, m => m.ID == messageId);
        }
Beispiel #2
0
        /// <summary>
        /// Mark Private Message as read.
        /// </summary>
        /// <param name="repository">
        /// The repository.
        /// </param>
        /// <param name="messageId">
        /// The message Id.
        /// </param>
        /// <param name="messageFlags">
        /// The message Flags.
        /// </param>
        public static void MarkAsRead(
            this IRepository <UserPMessage> repository,
            [NotNull] int messageId,
            [NotNull] PMessageFlags messageFlags)
        {
            CodeContracts.VerifyNotNull(repository);

            if (messageFlags.IsRead)
            {
                return;
            }

            messageFlags.IsRead = true;

            repository.UpdateOnly(() => new UserPMessage {
                Flags = messageFlags.BitValue
            }, m => m.ID == messageId);
        }