protected override void OnStartup(StartupEventArgs e) { //RenderOptions.ProcessRenderMode = System.Windows.Interop.RenderMode.SoftwareOnly; this.DispatcherUnhandledException += new DispatcherUnhandledExceptionEventHandler(OnDispatcherUnhandledException); SingleInstance.SingleInstanceActivated += new EventHandler <SingleInstanceEventArgs>(OnSingleInstanceActivated); // Pending Navigations this.pendingNavigations = new List <string>(); // Authentication Observer this.authenticationObserver = new ChannelObserver <AuthenticationInfo>((l) => OnAuthenticationAction(l)); // Subscribe on background thread this.authenticationObserver.Subscribe(ThreadOption.BackgroundThread); base.OnStartup(e); if (this.args != null && this.args.Length > 0) { if (this.isLoggedIn) { ServiceLocator.GetService <INavigationService>().Navigate(e.Args[0]); } else { this.pendingNavigations.Add(e.Args[0]); } } RenderTier renderTier = this.GetRenderTier(); }
private void InitializeObservers() { Logger.Debug("Inicializando observers de nroute"); // Authentication Observer this.authenticationObserver = new ChannelObserver <AuthenticationInfo>( (l) => OnAuthenticationAction(l)); // Subscribe on the UI Thread this.authenticationObserver.Subscribe(ThreadOption.BackgroundThread); // Active desktop changed observer this.activeDesktopObserver = new ChannelObserver <ActiveDesktopChangedInfo>( (l) => OnActiveDesktopChanged(l)); // Subscribe on the UI Thread this.activeDesktopObserver.Subscribe(ThreadOption.UIThread); // Navigation observers // Navigated observer this.navigatedObserver = new ChannelObserver <NavigatedInfo>( (l) => OnNavigated(l)); this.navigatedObserver.Subscribe(ThreadOption.BackgroundThread); }
protected void Subscribe <T>(Action <T> payloadHandler, ThreadOption threadOption) where T : class { ChannelObserver <T> observer = new ChannelObserver <T>((l) => payloadHandler(l)); observer.Subscribe(threadOption); this.observers.Add(observer); }
static Resource() { _resourcesCatalogs = new Dictionary <Type, Resource>(); _resourceAdapters = new List <KeyValuePair <Func <Type, bool>, Func <Type, ILocatorAdapter> > >(); _pendingMappings = new List <PendingMapping>(); _assemblyObserver = new ChannelObserver <MappedAssemblyInfo>(OnAssemblyMapped); // and register built-in adapters KnownAdapters.RegisterAdapters(); }
public static IAsyncEnumerator <object> FromObservable <T>(IObservable <T> observable, CancellationToken cancellationToken) { // TODO: Allow bounding and optimizations? var channel = Channel.CreateUnbounded <object>(); var observer = new ObserverState(); var channelObserver = new ChannelObserver <T>(channel.Writer); observer.Subscription = observable.Subscribe(channelObserver); observer.TokenRegistration = cancellationToken.Register(obs => ((ChannelObserver <T>)obs).OnCompleted(), channelObserver); // Make sure the subscription and token registration is disposed when enumeration is completed. return(new AsyncEnumerator <object>(channel.Reader, cancellationToken, observer)); }
private void InitializeObservers() { Logger.Debug("Starting nRoute observers"); // Authentication Observer this.authenticationObserver = new ChannelObserver<AuthenticationInfo>( (l) => OnAuthenticationAction(l)); // Subscribe on the UI Thread this.authenticationObserver.Subscribe(ThreadOption.BackgroundThread); // Active desktop changed observer this.activeDesktopObserver = new ChannelObserver<ActiveDesktopChangedInfo>( (l) => OnActiveDesktopChanged(l)); // Subscribe on the UI Thread this.activeDesktopObserver.Subscribe(ThreadOption.UIThread); // Navigation observers // Navigated observer this.navigatedObserver = new ChannelObserver<NavigatedInfo>( (l) => OnNavigated(l)); this.navigatedObserver.Subscribe(ThreadOption.BackgroundThread); }
protected override void OnStartup(StartupEventArgs e) { //FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.Name))); System.Threading.Thread.CurrentThread.CurrentUICulture = new CultureInfo("pt-PT"); System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("pt-PT"); //Checks if the temp folder exists. It creates a new one if it doesn't and deletes all temporary files if don't. if (System.IO.Directory.Exists(AppDomain.CurrentDomain.BaseDirectory + @"\Temp") == false) { System.IO.Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory + @"\Temp"); } else { try { foreach (string strFile in System.IO.Directory.GetFiles(AppDomain.CurrentDomain.BaseDirectory + @"\Temp")) { System.IO.File.Delete(strFile); } } catch { } //Tries to delete all temporary directories. foreach (string strDirToDelete in System.IO.Directory.GetDirectories(System.AppDomain.CurrentDomain.BaseDirectory + @"\Temp\")) { try { System.IO.Directory.Delete(strDirToDelete, true); } catch { } } } //Checks if the log folder exists. It creates a new one if it doesn't and deletes all log files older than one month, if exists. if (System.IO.Directory.Exists(AppDomain.CurrentDomain.BaseDirectory + @"\Logs") == false) { System.IO.Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory + @"\Logs"); } else { try { System.IO.Directory.GetFiles(AppDomain.CurrentDomain.BaseDirectory + @"\Logs") .Select(f => new FileInfo(f)) .Where(f => f.LastAccessTime < DateTime.Now.AddMonths(-1)) .ToList() .ForEach(f => f.Delete()); } catch { } } //RenderOptions.ProcessRenderMode = System.Windows.Interop.RenderMode.SoftwareOnly; this.DispatcherUnhandledException += new DispatcherUnhandledExceptionEventHandler(OnDispatcherUnhandledException); SingleInstance.SingleInstanceActivated += new EventHandler<SingleInstanceEventArgs>(OnSingleInstanceActivated); // Pending Navigations this.pendingNavigations = new List<string>(); // Authentication Observer this.authenticationObserver = new ChannelObserver<AuthenticationInfo>((l) => OnAuthenticationAction(l)); // Subscribe on background thread this.authenticationObserver.Subscribe(ThreadOption.BackgroundThread); base.OnStartup(e); ServiceLocator.GetService<Chronos.Security.Users.ICurrentUserService>().UserID = ""; ServiceLocator.GetService<Chronos.Security.Users.ICurrentUserService>().CompanyID = ""; if (this.args != null && this.args.Length > 0) { if (this.isLoggedIn) { ServiceLocator.GetService<INavigationService>().Navigate(e.Args[0]); } else { this.pendingNavigations.Add(e.Args[0]); } } RenderTier renderTier = this.GetRenderTier(); }