Beispiel #1
0
 public void AppendActivityWithoutChecks(IScheduledActivity <T> scheduledActivity)
 {
     if (scheduledActivity is null)
     {
         throw new ArgumentNullException(nameof(scheduledActivity));
     }
     AddActivity(scheduledActivity);
 }
 public HttpProxyClientState(
     CopyOnWriteCollection <HttpProxyHandlerState> handlerStates,
     IScheduledActivity healthCheckActivity,
     IScheduledActivity refillActivity)
 {
     HandlerStates       = handlerStates;
     HealthCheckActivity = healthCheckActivity;
     RefillActivity      = refillActivity;
 }
Beispiel #3
0
        private void AddActivity(IScheduledActivity <T> scheduledActivity)
        {
            if (scheduledActivity is null)
            {
                throw new ArgumentNullException(nameof(scheduledActivity));
            }

            m_ScheduledActivities.AddLast(scheduledActivity);
        }
        private void _write(ISchedule schedule)
        {
            int nActivities = schedule.getActivites().Count;

            for (int idx = 0; idx < nActivities; idx++)
            {
                IScheduledActivity scheduledActivity = schedule.getActivites()[idx];
                _writer.WriteLine(scheduledActivity.ToString());
            }
        }
Beispiel #5
0
 private IScheduledActivity _getLunch()
 {
     if (_lunch == null)
     {
         _lunch = new ScheduledActivity(
             new Activity("Lunch Break 60min"),
             _scheduleManager.getLunchTime()
             );
     }
     return(_lunch);
 }
Beispiel #6
0
 private IScheduledActivity _getPresentation()
 {
     if (_presentation == null)
     {
         IScheduledActivity lastActivity = _activites.Last();
         DateTime           lastTime     = lastActivity.getEnd();
         _presentation = new ScheduledActivity(
             new Activity("Staff Motivation Presentation"),
             lastActivity.getEnd()
             );
     }
     return(_presentation);
 }
Beispiel #7
0
        public void AppendActivity(IScheduledActivity <T> scheduledActivity)
        {
            if (scheduledActivity is null)
            {
                throw new ArgumentNullException(nameof(scheduledActivity));
            }
            int earliestAvailableStartTimeForNextActivity = EarliestAvailableStartTimeForNextActivity;

            if (scheduledActivity.StartTime < earliestAvailableStartTimeForNextActivity)
            {
                throw new InvalidOperationException($@"Scheduled activity's start time {scheduledActivity.StartTime} is less than the earliest available start time for the next activity {earliestAvailableStartTimeForNextActivity}");
            }
            AppendActivityWithoutChecks(scheduledActivity);
        }
Beispiel #8
0
 public static ScheduledActivityDto ToDto(IScheduledActivity <int> scheduledActivity)
 {
     if (scheduledActivity == null)
     {
         throw new ArgumentNullException(nameof(scheduledActivity));
     }
     return(new ScheduledActivityDto
     {
         Id = scheduledActivity.Id,
         Name = scheduledActivity.Name,
         Duration = scheduledActivity.Duration,
         StartTime = scheduledActivity.StartTime,
         FinishTime = scheduledActivity.FinishTime
     });
 }
Beispiel #9
0
        private DateTime getNextSlot(IActivity activity)
        {
            DateTime nextTime = _scheduleManager.getStartTime();

            if (_activites.Count > 0)
            {
                IScheduledActivity lastActivity = _activites.Last();
                if (lastActivity != null)
                {
                    DateTime lastTime = lastActivity.getEnd();
                    int      duration = activity.getDuration();
                    nextTime = _scheduleManager.getTimeSlot(lastTime, duration);
                }
            }
            return(nextTime);
        }