示例#1
0
        public SessionsViewModel(
            ISessionsService sessionsService,
            IPatientsService patientsService,
            [NotNull] ILogger logger,
            [NotNull] ToastNotifications.Notifier notifier,
            [NotNull] SessionAddedEventHandler sessionAddedEventHandler,
            [NotNull] SessionChangedEventHandler sessionChangedEventHandler,
            [NotNull] SessionDeletedEventHandler sessionDeletedEventHandler,
            [NotNull] ISessionsFileUiManager sessionFileManager)
        {
            _sessionsService            = sessionsService ?? throw new ArgumentNullException(nameof(sessionsService));
            _patientsService            = patientsService;
            _logger                     = logger ?? throw new ArgumentNullException(nameof(logger));
            _notifier                   = notifier;
            _sessionAddedEventHandler   = sessionAddedEventHandler ?? throw new ArgumentNullException(nameof(sessionAddedEventHandler));
            _sessionChangedEventHandler = sessionChangedEventHandler ?? throw new ArgumentNullException(nameof(sessionChangedEventHandler));
            _sessionDeletedEventHandler = sessionDeletedEventHandler ?? throw new ArgumentNullException(nameof(sessionDeletedEventHandler));
            _sessionFileManager         = sessionFileManager;

            _sessionAddedEventHandler.SessionAdded     += delegate { _isSessionListChanged = true; };
            _sessionChangedEventHandler.SessionChanged += delegate { _isSessionListChanged = true; };
            _sessionDeletedEventHandler.SessionDeleted += delegate { _isSessionListChanged = true; };

            _isSessionListChanged = false;
        }
        public void Merge(ISessionsService sessionsService, ISpeakersService speakersService)
        {
            if (null == sessionsService || null == speakersService)
                throw new NullReferenceException("Sessions and speakers services must both be set");

            var timer = CodeTimer.StartNew();

            if (null != sessionsService.Data)
            {
                sessionsService.Data.ToList().ForEach(s =>
                {
                    s.Speaker = speakersService.Data.Where(
                            sp => sp.SpeakerId == s.SpeakerId).FirstOrDefault();

                    if (null == s.Speaker)
                    {
                        // this can possibly happen if a new speaker was added and the speaker data is cached longer than the session data
                        // and session includes the new speaker that wasn't there at the point the speaker data was last cached
                        LogInstance.LogWarning("WARNING: No speaker found with speaker id {0} for session {1}. Speaker data may need to be refreshed",
                            s.SpeakerId, s.Title);
                    }
                });
            }

            // we don't need to load sessions for speaker anymore upfront; we delay load it later only if/when needed

            // 2.316 seconds roughly doing both. .031 seconds with skipping sessions for each speaker
            LogInstance.LogInfo("Session / speaker data merged in {0:##.000} seconds", timer.Stop());
        }
 public SessionsController(ISessionsService sessionService, IGamesService gamesService, IUserService userService, IHttpContextAccessor httpContextAccessor)
 {
     _gameservice         = gamesService;
     _userService         = userService;
     _sessionService      = sessionService;
     _httpContextAccessor = httpContextAccessor;
 }
示例#4
0
 public TrainingService(ChatContext context,
                        ISessionsService sessionsService,
                        IGoalsService goals)
 {
     _context         = context;
     _sessionsService = sessionsService;
     _goalsService    = goals;
 }
示例#5
0
 public SessionsViewModel(
     ISessionsService service,
     IServiceCaller serviceCaller) : base(serviceCaller)
 {
     this.service = service;
     Sessions     = new ObservableCollection <Session>();
     allSessions  = new List <Session>();
 }
示例#6
0
 public MessageHub(ChatContext context,
                   ISessionsService sessionsService,
                   ILogger <MessageHub> logger,
                   IBotService botService)
 {
     _context         = context;
     _sessionsService = sessionsService;
     _logger          = logger;
     _botService      = botService;
 }
        public SessionController(
            ISessionsService sessionsService,
            IOptions <Model.Configuration.Client> clientOptions,
            ISanitizerService sanitizerService

            )
        {
            _sessionsService     = sessionsService;
            _clientConfiguration = clientOptions.Value;
            _sanitizerService    = sanitizerService;
        }
示例#8
0
        private VaspClient(ISessionsService sessionsService)
        {
            _sessionsService = sessionsService;

            _sessionsService.BeneficiarySessionCreated  += OnBeneficiarySessionCreated;
            _sessionsService.OriginatorSessionApproved  += OnOriginatorSessionApproved;
            _sessionsService.OriginatorSessionDeclined  += OnOriginatorSessionDeclined;
            _sessionsService.ApplicationMessageReceived += OnApplicationMessageReceived;
            _sessionsService.SessionAborted             += OnSessionAborted;
            _sessionsService.SessionTerminated          += OnSessionTerminated;
        }
示例#9
0
        public MarleyService(ISessionsService sessionsService,
                             UserManager <User> userManager,
                             INlpService nlpService,
                             ITrainingService trainingService,
                             IGuideService guideService,
                             IGoalsService goalService)
        {
            _sessions     = sessionsService;
            _userManager  = userManager;
            _nlpService   = nlpService;
            _trainings    = trainingService;
            _guideService = guideService;
            _goalService  = goalService;

            Init();
        }
示例#10
0
 public ChatSessionsController(ISessionsService sessionService)
 {
     _sessionsService = sessionService;
 }
 public SessionsController(ISessionsService service)
 {
     Service = service;
 }
 public SessionsController([NotNull] ISessionsService sessionService)
 {
     _sessionService = sessionService;
 }
示例#13
0
 public SessionsController(ISessionsService sessionsService)
 {
     this.sessionsService = sessionsService;
 }
示例#14
0
 public UsersService(IUnitOfWork unitOfWork, IHaikusService haikusService, ISessionsService sessionsService)
     : base(unitOfWork)
 {
     this.HaikusService   = haikusService;
     this.SessionsService = sessionsService;
 }
 public SpeakerCardViewComponent(ISessionsService sessionsService)
 {
     _sessionsService = sessionsService;
 }
示例#16
0
        private void SessionsBackgroundWorkDone(object sender, RunWorkerCompletedEventArgs e)
        {
            if (null != e.Error)
                throw e.Error;

            _sessionsService = (ISessionsService)e.Result;
            AfterServiceOperationCompleted();
        }
示例#17
0
 public SessionController(ISessionsService service)
 {
     this.sessionsService = service;
 }