コード例 #1
0
        private void CommonAudit(IAuditable auditable, Action <object> setter)
        {
            if (auditable.ChangeAuditInfo.Created == null)             //create
            {
                auditable.ChangeAuditInfo.Created   = _clock.Now();
                auditable.ChangeAuditInfo.CreatedBy = _userSession.GetCurrentUser().Username;
            }
            auditable.ChangeAuditInfo.Updated   = _clock.Now();
            auditable.ChangeAuditInfo.UpdatedBy = _userSession.GetCurrentUser().Username;


            setter(auditable.ChangeAuditInfo);
        }
コード例 #2
0
 public void Handle(ChangeCustomerReservationTime request)
 {
     if (request.DateTime < _clock.Now())
     {
         throw new ArgumentOutOfRangeException();
     }
 }
コード例 #3
0
        public async Task Register(Animal animal)
        {
            animal.Created = _clock.Now();
            _ctx.Add(animal);
            await _ctx.SaveChangesAsync();

            _eventSink.SendEmailsToCustomerThatWantThisTypeOfAnimalsAndAttachPicturesAndAllThatJazz();
        }
コード例 #4
0
 public Conference[] GetFutureForUserGroup(UserGroup usergroup)
 {
     return(GetSession().CreateQuery(
                "from Conference conf where conf.UserGroup = :usergroup and conf.EndDate >= :datetime order by conf.StartDate")
            .SetEntity("usergroup", usergroup)
            .SetDateTime("datetime", _clock.Now().Midnight())
            .List <Conference>().ToArray());
 }
コード例 #5
0
        public object Execute(CreateHeartbeatCommandMessage commandMessage)
        {
            var heartbeat = new Heartbeat {
                Message = commandMessage.Message, Date = _clock.Now()
            };

            _repository.Save(heartbeat);
            return(heartbeat);
        }
コード例 #6
0
        public void AddSiteContent(string url, string content)
        {
            var cacheItemPolicy = new CacheItemPolicy();
            var dateTimeOffset  = new DateTimeOffset(_systemClock.Now());

            dateTimeOffset.Offset.Add(TimeSpan.FromMinutes(_siteRepositoryCacheSettings.CacheValidityInSeconds));
            cacheItemPolicy.AbsoluteExpiration = dateTimeOffset;

            _cache.Add(GetCacheKey(url), content, cacheItemPolicy);
        }
コード例 #7
0
        public string CheckHeartbeat(int timeout)
        {
            var heartbeat = _repository.GetLatest();

            if (heartbeat == null)
            {
                return(DeadNoHeartbeat);
            }

            var now = _clock.Now();

            if (heartbeat.Date > now)
            {
                return(string.Format(DeadFutureHeartbeat, now, heartbeat.Date));
            }

            if (heartbeat.Date.AddMinutes(timeout) < now)
            {
                return(string.Format(DeadTimeout, timeout, now, heartbeat.Date));
            }

            return(Success);
        }