private static bool ActivateViewer(ViewerInfo vi)
 {
     using (var service = new ViewerService())
     {
         return(service.ActivateViewer(vi.Viewer));
     }
 }
        private IStudyViewer[] ViewStudiesOneInstance(string[] studyInstanceUids)
        {
            lock (_openViewersSyncRoot)
            {
                using (var service = new ViewerService())
                {
                    var activeViewers = service.GetActiveViewers();
                    var vi            = _openViewers.FirstOrDefault(Both(ViewerContainsAll(studyInstanceUids), ViewerIsActive(activeViewers)));
                    if (vi != null)
                    {
                        service.ActivateViewer(vi.Viewer);
                        return(new IStudyViewer[] { vi });
                    }

                    // locate the studies
                    // note that any studies that cannot be located are silently ignored
                    //
                    // only the first ('primary') study in a single viewer is used, as this is the only way to get hanging protocols to apply correctly
                    // all priors/linked studies should be loaded automatically via prior/related search anyway, there should probably be some explicit mechanism here
                    var locatedStudies = service.LocateStudiesByUid(new[] { studyInstanceUids.FirstOrDefault() });
                    if (!locatedStudies.Any())
                    {
                        return(new IStudyViewer[0]);
                    }

                    vi = new ViewerInfo(this, service.OpenViewer(locatedStudies), studyInstanceUids);
                    _openViewers.Add(vi);
                    return(new IStudyViewer[] { vi });
                }
            }
        }
        private IStudyViewer[] ViewStudiesOneInstance(string[] studyInstanceUids)
        {
            lock (_openViewers)
            {
                using (var service = new ViewerService())
                {
                    var activeViewers = service.GetActiveViewers();
                    var vi            = _openViewers.FirstOrDefault(Both(ViewerContainsAll(studyInstanceUids), ViewerIsActive(activeViewers)));
                    if (vi != null)
                    {
                        service.ActivateViewer(vi.Viewer);
                        return(new IStudyViewer[] { vi });
                    }

                    // locate the studies
                    // note that any studies that cannot be located are silently ignored
                    var locatedStudies = service.LocateStudiesByUid(studyInstanceUids);
                    if (!locatedStudies.Any())
                    {
                        return(new IStudyViewer[0]);
                    }

                    // open all located studies in a single viewer
                    vi = new ViewerInfo(this, service.OpenViewer(locatedStudies), studyInstanceUids);
                    _openViewers.Add(vi);
                    return(new IStudyViewer[] { vi });
                }
            }
        }
Ejemplo n.º 4
0
        public MainWindow()
        {
            InitializeComponent();
            DataContext = this;

            Loaded   += OnLoaded;
            Unloaded += OnUnloaded;

            var configData = new SimpleReportConfigData
            {
                ProjectPath = Path.Combine(Environment.CurrentDirectory, "Projects"),
                TempPath    = Path.Combine(Environment.CurrentDirectory, "Temp")
            };

            if (!Directory.Exists(configData.ProjectPath))
            {
                Directory.CreateDirectory(configData.ProjectPath);
            }
            if (!Directory.Exists(configData.TempPath))
            {
                Directory.CreateDirectory(configData.TempPath);
            }

            m_Reporter = new ReportService(configData);
            m_Reporter.InitLogger("ReporterLog");

            m_ReportViewer = new ViewerService(configData);
            m_ReportViewer.InitLogger("ReporterLog");
        }
Ejemplo n.º 5
0
        public BusinessProfileViewer()
        {
            InitializeComponent();
            var list = ViewerService.GetMyProfileViewers(LoggedData.LoggedBusiness.Name);

            foreach (var item in list)
            {
                flowLayoutPanel1.Controls.Add(new ProfileViewerComponent(item));
            }
        }
Ejemplo n.º 6
0
        public void UnexaminedWords_CountWordListShouldBeEqualFive()
        {
            InMemoryUserRepository userRepository = new InMemoryUserRepository();
            UserService            userService    = new UserService(userRepository);

            userService.RegisterUser("Test8");
            ViewerService viewerService       = new ViewerService(userService.LogIn("Test8"), new InMemoryWordRepository());
            var           wordsListUnexamined = viewerService.ViewUnexaminedWords();

            Assert.IsTrue(wordsListUnexamined.Count == 5);
        }
 private void CloseViewer(ViewerInfo vi)
 {
     lock (_openViewersSyncRoot)
     {
         using (var service = new ViewerService())
         {
             service.CloseViewer(vi.Viewer);
             _openViewers.Remove(vi);
         }
     }
 }
        private IStudyViewer[] ViewStudiesMultiInstance(string[] studyInstanceUids)
        {
            lock (_openViewersSyncRoot)
            {
                using (var service = new ViewerService())
                {
                    var activeViewers = service.GetActiveViewers().ToList();

                    // for any studies that already have an open viewer, just activate it
                    var needViewer = new List <string>();
                    foreach (var uid in studyInstanceUids)
                    {
                        var vi = _openViewers.FirstOrDefault(Both(ViewerHasPrimary(uid), ViewerIsActive(activeViewers)));
                        if (vi != null)
                        {
                            continue;
                        }

                        needViewer.Add(uid);
                    }

                    if (needViewer.Any())
                    {
                        // locate the remaining studies and open new viewers for them
                        // note that any studies that cannot be located are silently ignored - no viewer is opened for them
                        var locatedStudies = service.LocateStudiesByUid(needViewer);
                        foreach (var studyRootStudyIdentifier in locatedStudies)
                        {
                            var vi = new ViewerInfo(this, service.OpenViewer(studyRootStudyIdentifier),
                                                    new[] { studyRootStudyIdentifier.StudyInstanceUid });
                            _openViewers.Add(vi);
                            activeViewers.Add(vi.Viewer);                             // update this list, as it is used again in final query
                        }
                    }

                    // important to return viewers in same order as input array,
                    // which is why we do this final query
                    var viewers = (from uid in studyInstanceUids
                                   let vi = _openViewers.FirstOrDefault(Both(ViewerHasPrimary(uid), ViewerIsActive(activeViewers)))
                                            where vi != null
                                            select vi).ToList();

                    // ensure the first instance is made active
                    if (viewers.Any())
                    {
                        service.ActivateViewer(viewers.First().Viewer);
                    }

                    return(viewers.Cast <IStudyViewer>().ToArray());
                }
            }
        }
Ejemplo n.º 9
0
        private void lblBusinessName_Click(object sender, EventArgs e)
        {
            //profile viwer added
            ViewerService.AddProfileViewer(new Entities.ProfileViewer(offerGlobal.Business, LoggedData.LoggedJobSeeker));


            var business  = BusinessService.SearchByBusinessName(offerGlobal.Business.Name);
            int offersNum = JobOfferService.GetOffersByBusinessName(offerGlobal.Business.Name).Count;
            // MessageBox.Show(business.Name);
            BusinessProfile b1 = new BusinessProfile(business, offersNum);

            b1.Show();
        }
Ejemplo n.º 10
0
 public ActionResult ReCordViewers(string livePageID, string numberOfViewers)
 {
     try
     {
         int           liveID        = LivePostService.Select(livePageID);
         ViewerService viewerService = new ViewerService();
         viewerService.Create(liveID, numberOfViewers);
         return(Json("OK", JsonRequestBehavior.AllowGet));
     }
     catch (Exception e)
     {
         return(Json("error:" + e, JsonRequestBehavior.AllowGet));
     }
 }
Ejemplo n.º 11
0
 public ActionResult GetViewers(int liveID)
 {
     try
     {
         Viewer        viewer        = new Viewer();
         ViewerService viewerService = new ViewerService();
         viewer = viewerService.SearchViewerByLiveID(liveID);
         return(Json(viewer.NumberOfViewers, JsonRequestBehavior.AllowGet));
     }
     catch (Exception e)
     {
         return(Json(null, JsonRequestBehavior.AllowGet));
     }
 }
Ejemplo n.º 12
0
 private void RemoveDeadViewerEntries()
 {
     lock (_openViewersSyncRoot)
     {
         using (var service = new ViewerService())
         {
             var isActiveTest = ViewerIsActive(service.GetActiveViewers());
             var deadEntries  = _openViewers.Where(vi => !isActiveTest(vi)).ToList();
             foreach (var vi in deadEntries)
             {
                 _openViewers.Remove(vi);
             }
         }
     }
 }
Ejemplo n.º 13
0
        private static IEnumerable <ICommandItem> CreateOpenFileWithCommandItems(IFolderBrowserViewModel vm)
        {
            var viewers = ViewerService.GetAllViewers();

            if (viewers == null)
            {
                yield break;
            }

            foreach (var viewer in viewers)
            {
                if (viewer == null)
                {
                    continue;
                }
                yield return(CreateOpenFileWithProCommandItem(viewer.Value.viewerName, viewer.Value.path, vm));
            }
        }
		private IStudyViewer[] ViewStudiesOneInstance(string[] studyInstanceUids)
		{
			lock (_openViewersSyncRoot)
			{
				using (var service = new ViewerService())
				{
					var activeViewers = service.GetActiveViewers();
					var vi = _openViewers.FirstOrDefault(Both(ViewerContainsAll(studyInstanceUids), ViewerIsActive(activeViewers)));
					if (vi != null)
					{
						service.ActivateViewer(vi.Viewer);
						return new IStudyViewer[] { vi };
					}

					// locate the studies
					// note that any studies that cannot be located are silently ignored
					//
					// only the first ('primary') study in a single viewer is used, as this is the only way to get hanging protocols to apply correctly
					// all priors/linked studies should be loaded automatically via prior/related search anyway, there should probably be some explicit mechanism here
					var locatedStudies = service.LocateStudiesByUid(new[] {studyInstanceUids.FirstOrDefault()});
					if (!locatedStudies.Any())
						return new IStudyViewer[0];

					vi = new ViewerInfo(this, service.OpenViewer(locatedStudies), studyInstanceUids);
					_openViewers.Add(vi);
					return new IStudyViewer[] {vi};
				}
			}
		}
Ejemplo n.º 15
0
 public ViewersController(ViewerService us, SqlConnector db)
 {
     US = us;
     Db = db;
 }
Ejemplo n.º 16
0
 private void button1_Click(object sender, EventArgs e)
 {
     MessageBox.Show(ViewerService.ProfileViwerNum().ToString());
 }
Ejemplo n.º 17
0
 public void SetUp(User user)
 {
     ExamineService = new ExamineService(user, new InMemoryWordRepository());
     ViewerService  = new ViewerService(user, new InMemoryWordRepository());
 }
		private static bool ActivateViewer(ViewerInfo vi)
		{
			using (var service = new ViewerService())
			{
				return service.ActivateViewer(vi.Viewer);
			}
		}
		private void RemoveDeadViewerEntries()
		{
			lock (_openViewers)
			{
				using (var service = new ViewerService())
				{
					var isActiveTest = ViewerIsActive(service.GetActiveViewers());
					var deadEntries = _openViewers.Where(vi => !isActiveTest(vi)).ToList();
					foreach (var vi in deadEntries)
					{
						_openViewers.Remove(vi);
					}
				}
			}
		}
		private void CloseViewer(ViewerInfo vi)
		{
			lock (_openViewers)
			{
				using (var service = new ViewerService())
				{
					service.CloseViewer(vi.Viewer);
					_openViewers.Remove(vi);
				}
			}
		}
		private IStudyViewer[] ViewStudiesMultiInstance(string[] studyInstanceUids)
		{
			lock (_openViewers)
			{
				using (var service = new ViewerService())
				{
					var activeViewers = service.GetActiveViewers().ToList();

					// for any studies that already have an open viewer, just activate it
					var needViewer = new List<string>();
					foreach (var uid in studyInstanceUids)
					{
						var vi = _openViewers.FirstOrDefault(Both(ViewerHasPrimary(uid), ViewerIsActive(activeViewers)));
						if (vi != null)
							continue;

						needViewer.Add(uid);
					}

					if (needViewer.Any())
					{
						// locate the remaining studies and open new viewers for them
						// note that any studies that cannot be located are silently ignored - no viewer is opened for them
						var locatedStudies = service.LocateStudiesByUid(needViewer);
						foreach (var studyRootStudyIdentifier in locatedStudies)
						{
							var vi = new ViewerInfo(this, service.OpenViewer(studyRootStudyIdentifier),
													new[] { studyRootStudyIdentifier.StudyInstanceUid });
							_openViewers.Add(vi);
							activeViewers.Add(vi.Viewer); // update this list, as it is used again in final query
						}
					}

					// important to return viewers in same order as input array,
					// which is why we do this final query
					var viewers = (from uid in studyInstanceUids
								   let vi = _openViewers.FirstOrDefault(Both(ViewerHasPrimary(uid), ViewerIsActive(activeViewers)))
								   where vi != null
								   select vi).ToList();

					// ensure the first instance is made active
					if (viewers.Any())
						service.ActivateViewer(viewers.First().Viewer);

					return viewers.Cast<IStudyViewer>().ToArray();
				}
			}
		}
		private IStudyViewer[] ViewStudiesOneInstance(string[] studyInstanceUids)
		{
			lock (_openViewers)
			{
				using (var service = new ViewerService())
				{
					var activeViewers = service.GetActiveViewers();
					var vi = _openViewers.FirstOrDefault(Both(ViewerContainsAll(studyInstanceUids), ViewerIsActive(activeViewers)));
					if (vi != null)
					{
						service.ActivateViewer(vi.Viewer);
						return new IStudyViewer[] { vi };
					}

					// locate the studies
					// note that any studies that cannot be located are silently ignored
					var locatedStudies = service.LocateStudiesByUid(studyInstanceUids);
					if (!locatedStudies.Any())
						return new IStudyViewer[0];

					// open all located studies in a single viewer
					vi = new ViewerInfo(this, service.OpenViewer(locatedStudies), studyInstanceUids);
					_openViewers.Add(vi);
					return new IStudyViewer[] { vi };
				}
			}
		}