コード例 #1
0
ファイル: Avatar.cs プロジェクト: Tmalmborg85/Hankies.Domain
        /// <summary>
        /// Removes a handkerchief from the hard no list if it was in it.
        /// </summary>
        /// <param name="handkerchief"></param>
        /// <returns></returns>
        public IStatus <Avatar> StopFlaggingHandkerchiefAsHardNo
            (Handkerchief handkerchief)
        {
            var response = new Status <Avatar>();

            try
            {
                if (hardNoHandkerchiefs.Contains(handkerchief))
                {
                    hardNoHandkerchiefs.Remove(handkerchief);
                    AddDomainEvent(new AvatarRemovedHardNoHandkerchiefDomainEvent
                                       (this, handkerchief));

                    CruiseRadar.ReEvaluateClutter();
                }
                else
                {
                    response.AddError
                        ("specified handkerchief not found in hard no list.");
                }
            }
            catch (Exception ex)
            {
                response.AddException(ex);
            }

            return(AvatarValidationStatus(response));
        }
コード例 #2
0
ファイル: Avatar.cs プロジェクト: Tmalmborg85/Hankies.Domain
        /// <summary>
        /// Adds a handkerchief to the Hard No list which will prevent this
        /// Avatar from seeing Avarats flagging with the specified handkerchief
        /// </summary>
        /// <param name="handkerchief">The valid handkerchief to be flaged</param>
        /// <returns></returns>
        public IStatus <Avatar> FlagHandkerchiefAsHardNo
            (Handkerchief handkerchief)
        {
            var response = new Status <Avatar>();

            try
            {
                hardNoHandkerchiefs.Add(handkerchief);
                AddDomainEvent(new AvatarAddedHardNoHandkerchiefDomainEvent
                                   (this, handkerchief));

                CruiseRadar.ReEvaluateContactsForClutter();
            }
            catch (Exception ex)
            {
                response.AddException(ex);
            }

            return(AvatarValidationStatus(response));
        }
コード例 #3
0
ファイル: Avatar.cs プロジェクト: Tmalmborg85/Hankies.Domain
 /// <summary>
 /// Checks if this Avatar has said no to this handkerchief.
 /// </summary>
 /// <param name="handkerchief"></param>
 /// <returns></returns>
 public bool DidHardNoHandkerchief(Handkerchief handkerchief)
 {
     return(hardNoHandkerchiefs.Contains(handkerchief));
 }
コード例 #4
0
 bool CorrespondsToHandkerchief(Handkerchief other)
 {
 }