public CalendarEngine(IEventBroker broker)
        {
            m_Broker = broker;
            m_Broker.RegisterFor(EventType.LanguageChanged, this);
            _Positions = new ObservableCollection <PositionOfDay>();

            try
            {
                m_notesDB = DBSingleton <RealNotesContext> .Instancja;
                var notes = m_notesDB.BrokerNotes.Count();
                _isDataBaseOK = true;
                //DataBaseState = Properties.Resources.DataBaseStateOK;
            }
            catch (Exception e)
            {
                m_notesDB     = DBSingleton <FakeNotesContext> .Instancja;
                _isDataBaseOK = false;
                //DataBaseState = Properties.Resources.DataBaseStateFails;
            }
            finally
            {
                if (_isDataBaseOK)
                {
                    DataBaseState = Properties.Resources.DataBaseStateOK;
                }
                else
                {
                    DataBaseState = Properties.Resources.DataBaseStateFails;
                }
            }

            DateTime dt_tmp = DateTime.Now;

            Selected_Date = new DateTime(dt_tmp.Year, dt_tmp.Month, dt_tmp.Day);
        }
Esempio n. 2
0
    // Other private properties

    public Form1(IEventBroker eventBroker)
    {
        InitializeComponent();
        this.eventBroker = eventBroker;

        this.eventBroker.Register <NotifyBaloonText>(changeNotifyBalloonText);
    }
        public ProductOrderedEventConsumer(IEventBroker eventBroker)
        {
            _eventBroker = eventBroker;
            _random      = new Random();

            Register(new ItemsInLaptopOrComputerProductGroupSpecification());
        }
Esempio n. 4
0
 public EditProductPresenter(
     ISession session, // The NHibernate session reference
     IEventBroker eventBroker,
     int productId)    // An optional product identifier
 {
     // do stuff....
 }
        void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            //var kultura = new System.Globalization.CultureInfo("pl-PL");
            //System.Threading.Thread.CurrentThread.CurrentUICulture = kultura;
            //System.Threading.Thread.CurrentThread.CurrentCulture = kultura;

            this.Top = 125.0;

            var    culture = CultureInfo.InstalledUICulture;
            string lang    = culture.DisplayName;

            m_Broker = new EventBroker();
            m_Broker.RegisterFor(EventType.LanguageChanged, this);
            m_Broker.RegisterFor(EventType.SelectedDateChanged, this);

            Engine = new CalendarEngine(m_Broker);

            _ViewModel       = new ApplicationViewModel(Engine, m_Broker, dataGrid1);
            this.DataContext = _ViewModel;

            bEditSelected.IsEnabled       = false;
            bDeleteSelectedNote.IsEnabled = false;

            string cultureInformation = CultureInfo.CurrentCulture.Name;

            if (!cultureInformation.Equals("pl-PL"))
            {
                _ViewModel.LanguageChangeCommand.Execute("en-GB");
            }
        }
 public ExtendedNotificationCenterContext(
     IEventBroker eventBroker,
     IDictionary <Type, IChangeProcessor> changeProcessors)
 {
     _eventBroker      = eventBroker;
     _changeProcessors = changeProcessors;
 }
Esempio n. 7
0
        public void AddMessageSubscription(IDiContainer diContainer, IEventBroker eventBroker)
        {
            Console.WriteLine(nameof(PlugIn.AddMessageSubscription));
            var logicClass = diContainer.Get <ISecondLogicClass>();

            logicClass.Subscribe();
        }
Esempio n. 8
0
        public ProductOrderedEventConsumer(IEventBroker eventBroker)
        {
            _eventBroker = eventBroker;
            _random      = new Random();

            Register(x => x.ProductGroup != "Laptop" && x.ProductGroup != "Computer");
        }
        public CalendarEngine(IEventBroker broker)
        {
            m_Broker = broker;
            m_Broker.RegisterFor(EventType.LanguageChanged, this);
            _Positions = new ObservableCollection<PositionOfDay>();

            try
            {
                m_notesDB = DBSingleton<RealNotesContext>.Instancja;
                var notes = m_notesDB.BrokerNotes.Count();
                _isDataBaseOK = true;
                //DataBaseState = Properties.Resources.DataBaseStateOK;
            }
            catch(Exception e)
            {
                m_notesDB = DBSingleton<FakeNotesContext>.Instancja;
                _isDataBaseOK = false;
                //DataBaseState = Properties.Resources.DataBaseStateFails;
            }
            finally
            {
                if (_isDataBaseOK)
                {
                    DataBaseState = Properties.Resources.DataBaseStateOK;
                }else
                {
                    DataBaseState = Properties.Resources.DataBaseStateFails;
                }
            }

            DateTime dt_tmp = DateTime.Now;
            Selected_Date = new DateTime(dt_tmp.Year, dt_tmp.Month, dt_tmp.Day);
        }
 public EventHostedService(
     IEventBroker eventBroker,
     IEnumerable <IEventGenerator> eventGenerators)
 {
     _eventBroker     = eventBroker;
     _eventGenerators = eventGenerators;
 }
Esempio n. 11
0
        public EventStore(
            IEventBroker broker,
            IMapper mapper,
            ILogger <EventStore> logger,
            IOptions <NEventStoreOptions> options,
            IRepository readModel
            )
        {
            Guard.IsNotNull(options, nameof(options));
            this.mapper    = Guard.IsNotNull(mapper, nameof(mapper));
            this.logger    = Guard.IsNotNull(logger, nameof(logger));
            this.readModel = Guard.IsNotNull(readModel, nameof(this.readModel));
            this.broker    = Guard.IsNotNull(broker, nameof(broker));
            //MongoInternalIdentity internalIdentity = new MongoInternalIdentity(Constants.ADMIN, options.Value.Username);
            //PasswordEvidence passwordEvidence = new PasswordEvidence(options.Value.Password);
            //MongoCredential mongoCredential = new MongoCredential(options.Value.AuthMechanism, internalIdentity, passwordEvidence);

            //MongoClientSettings settings = new MongoClientSettings
            //{
            //Credential = mongoCredential,
            //Server = new MongoServerAddress(options.Value.MongoHost, int.Parse(options.Value.Port))
            //};

            //var client = new MongoClient(settings);
            //this.readModel = client.GetDatabase(options.Value.DefaultDb);
        }
Esempio n. 12
0
        public RoundWithBlinds(Player dealer, IList <Player> playersInOrder, IEventBroker domainEvents)
        {
            this.dealer       = dealer;
            this.domainEvents = domainEvents;

            var dealIndex = playersInOrder.IndexOf(dealer);
            var players   = playersInOrder.ShiftLeft(dealIndex + 1);

            var smallBlind = domainEvents.Subscribe <SmallBlindAdded>(e => {
                bets.Add(new Bet(e.player, e.v));
            });
            var bigBlind = domainEvents.OfType <BigBlindAdded>().Subscribe(e => {
                bets.Add(new Bet(e.player, e.v));
            });
            var cardsDealtToPlayers = domainEvents.OfType <PlayerCardsDealt>().Subscribe(e => {
                // expect bet from next player
            });

            domainEvents.OfType <PlayerChecked>().Subscribe(e => {
            });
            domainEvents.OfType <PlayerCalled>().Subscribe(e => {
            });
            domainEvents.OfType <PlayerFolded>().Subscribe(e => {
            });

            domainEvents.Publish(new RoundStarted(players));
            domainEvents.Publish(new PlayerCardsDealt());
        }
Esempio n. 13
0
        private static IDisposable RegisterEvent(
            this IEventBroker eventBroker,
            string eventName,
            EventInfo eventInfo,
            object instance)
        {
            var eventHandlerType = eventInfo.EventHandlerType;

            if (eventHandlerType == null)
            {
                throw new ApplicationException();
            }

            var parameters = GetDelegateParams(eventHandlerType);

            if (parameters.Length != 1)
            {
                throw new ApplicationException("Delegate must have one argument.");
            }

            var handler =
                Delegate.CreateDelegate(
                    eventHandlerType,
                    Activator.CreateInstance(_invokerType, eventName, eventBroker),
                    _invokerFireMethod.MakeGenericMethod(parameters[0].ParameterType));

// ReSharper disable AssignNullToNotNullAttribute
            eventInfo.AddEventHandler(instance, handler);

            return(Disposable.Create(() => eventInfo.RemoveEventHandler(instance, handler)));
// ReSharper restore AssignNullToNotNullAttribute
        }
Esempio n. 14
0
        private static IDisposable RegisterProperty(
            this IEventBroker eventBroker,
            string eventName,
            PropertyInfo property,
            object instance)
        {
            if (!property.PropertyType.IsGenericType ||
                property.PropertyType.GetGenericTypeDefinition() != typeof(IObservable <>))
            {
                throw new ApplicationException("Return type is not IObservable<>.");
            }

            if (!property.CanRead)
            {
                throw new ApplicationException("Missing get accessor.");
            }

            var observable = property.GetValue(instance, null);

            if (observable == null)
            {
                throw new ApplicationException("Return value is null.");
            }

            var argType  = property.PropertyType.GetGenericArguments().Single();
            var observer =
                Activator
                .CreateInstance(
                    typeof(ToBrokerObserver <>).MakeGenericType(argType),
                    eventName,
                    eventBroker,
                    observable);

            return((IDisposable)observer);
        }
Esempio n. 15
0
        public FlightPlanForm(IEventBroker eventBroker, IAppConfig appConfig)
        {
            InitializeComponent();

            mConfig = appConfig;

            mClockTimer = new Timer
            {
                Interval = 1000
            };
            mClockTimer.Tick += ClockTimer_Tick;

            foreach (FlightPlanType flightPlanType in Enum.GetValues(typeof(FlightPlanType)))
            {
                ddlFlightType.Items.Add(flightPlanType);
            }
            ddlFlightType.SelectedItem = FlightPlanType.IFR;

            if (mConfig.LastFlightPlan != null)
            {
                NewFlightPlan(mConfig.LastFlightPlan);
            }

            mEventBroker = eventBroker;
            mEventBroker.Register(this);
        }
        public PrivateMessageTab(string tabName, string initialMessage, bool isOurMessage, string ourCallsign, IEventBroker eventBroker, IFsdManger networkManager)
        {
            tabIdentifier = tabName;
            Name          = tabName;
            Text          = tabName;

            BackColor = Color.FromArgb(20, 22, 24);
            ForeColor = Color.Cyan;

            mChatBox = new ChatBox
            {
                Dock = DockStyle.Fill
            };
            Controls.Add(mChatBox);
            mChatBox.TextCommandLine.TextCommandReceived += PrivateMessageTab_TextCommandReceived;

            mNetworkManager = networkManager;
            mEventBroker    = eventBroker;
            mEventBroker.Register(this);

            if (!string.IsNullOrEmpty(initialMessage))
            {
                if (isOurMessage)
                {
                    WriteMessage(Color.Cyan, $"{ ourCallsign }: { initialMessage }");
                }
                else
                {
                    WriteMessage(Color.White, $"{ tabIdentifier }: { initialMessage }");
                    PlaySoundRequested(this, new PlaySoundEventArgs(SoundEvent.NewMessage));
                    ForeColor = Color.Yellow;
                }
            }
            RequestRealName(this, new RealNameRequestedEventArgs(tabIdentifier));
        }
Esempio n. 17
0
        public PokerGame(IEventBroker domainEvents, int minPlayers = 3)
        {
            reservedSeats = new ObservableCollection <Guid>();

            var seatButler = domainEvents.Subscribe <SeatRequested>(p =>
            {
                if (p.SeatPosition.HasValue)
                {
                    reservedSeats.Insert(p.SeatPosition.Value, p.ClientId);
                }
                else
                {
                    reservedSeats.Add(p.ClientId);
                }

                domainEvents.Publish(new SeatReserved(p.ClientId, reservedSeats.IndexOf(p.ClientId)));
            });

            var addPlayerName = domainEvents.Subscribe <AddPlayer>(e =>
            {
                if (!reservedSeats.Contains(e.ClientId))
                {
                    domainEvents.Publish(new ReservationNotFound(e.ClientId));
                }
                else if (Players.Any(x => x.Name == e.PlayerName))
                {
                    domainEvents.Publish(new PlayerNameRefused(e.ClientId));
                }
                else
                {
                    var player = playerSeatingPositions[reservedSeats.IndexOf(e.ClientId)] = new Player(e.PlayerName);

                    domainEvents.Publish(new PlayerAdded(e.ClientId, player));
                }
            });

            var waitForPlayersToBeReady = domainEvents.Subscribe <PlayerReady>(p =>
            {
                if (Players.Contains(p.player) && !readyPlayers.Contains(p.player))
                {
                    readyPlayers.Add(p.player);
                }

                if (readyPlayers.Count >= minPlayers && readyPlayers.Count == Players.Count())
                {
                    domainEvents.Publish(new AllPlayersReady());
                }
            });

            var cutForDealerWhenAllPlayersReady = domainEvents.Subscribe <AllPlayersReady>(p =>
            {
                var dealerCutRound = new DealerCutRound(Players.ToList(), domainEvents);
            });

            var startRoundOnceDealerChosen = domainEvents.Subscribe <DealerChosen>(c =>
            {
                var blindsRound = new RoundWithBlinds(c.dealer, Players.ToList(), domainEvents);
            });
        }
Esempio n. 18
0
 public Mediator(IMediatorAdapter mediatorAdapter, IEventBroker eventAggregator)
 {
     _mediatorAdapter              = mediatorAdapter;
     _mediatorAdapter.OnBroadcast += Broadcast;
     _eventAggregator              = eventAggregator;// IoC.Get<IEventAggregator>();
     _preemptiveScheduler          = new PriorityTaskScheduler();
     _backgroundTaskFactory        = new TaskFactory(TaskCreationOptions.LongRunning, TaskContinuationOptions.None);
 }
Esempio n. 19
0
        /// <summary>
        /// Adds the distributed extension to the provided event broker.
        /// </summary>
        /// <typeparam name="TDistributedExtension">The type of the distributed extension.</typeparam>
        /// <param name="eventBroker">The event broker.</param>
        /// <param name="extension">The extension.</param>
        /// <param name="eventBrokerIdentification">The event broker identification.</param>
        public static void AddDistributedExtension <TDistributedExtension>(this IEventBroker eventBroker, TDistributedExtension extension, string eventBrokerIdentification)
            where TDistributedExtension : IDistributedEventBrokerExtension
        {
            Ensure.ArgumentNotNull(eventBroker, "eventBroker");

            eventBroker.AddExtension(extension);
            extension.Manage(eventBroker, eventBrokerIdentification);
        }
Esempio n. 20
0
        public void ReloadAutoDeafenManager()
        {
            IKernel      kernel = new StandardKernel(new InjectionModules());
            IEventBroker broker = kernel.Get <IEventBroker>();

            mConfig.LoadConfig();
            _ = new AutoDeafenManager(broker, mConfig);
        }
Esempio n. 21
0
        public MainFormPresenter(IMainForm view, ILogger logger, IMessageBoxService mbs, IEventBroker eventBroker) : base(view)
        {
            _logger      = logger;
            _mbs         = mbs;
            _eventBroker = eventBroker;

            GetOrMigrateSettings();
        }
Esempio n. 22
0
 public PersonManager(IEventBroker eventBroker,
                      IRepository <Person> repository,
                      PersonManagementConfiguration config)
 {
     _eventBroker = eventBroker;
     _repository  = repository;
     _config      = config;
 }
Esempio n. 23
0
 public WorkflowProvider(SynchronizationContext context, IEventBroker eventBroker, ITrackingParticipant tracking, IMessageAgent agent, IEventAgent eventAgent)
 {
     _context     = context;
     _eventBroker = eventBroker;
     _tracking    = tracking;
     _agent       = agent;
     _eventAgent  = eventAgent;
 }
        /// <summary>
        /// Adds the mapping extension to the provided event broker.
        /// </summary>
        /// <typeparam name="TMappingExtension">The type of the mapping extension.</typeparam>
        /// <param name="eventBroker">The event broker.</param>
        /// <param name="extension">The extension.</param>
        public static void AddMappingExtension <TMappingExtension>(this IEventBroker eventBroker, TMappingExtension extension)
            where TMappingExtension : IMappingEventBrokerExtension
        {
            Ensure.ArgumentNotNull(eventBroker, "eventBroker");

            eventBroker.AddExtension(extension);
            extension.Manage(eventBroker);
        }
Esempio n. 25
0
 public EventFunctionInterceptionArgsImpl(TInstance instance, EventInfo @event, Func <TResult> handler, IEventFunctionBinding <TInstance, TResult> funcBinding, IEventBroker <Func <TResult> > eventBroker = null)
 {
     Event            = @event;
     Handler          = handler;
     EventBroker      = eventBroker;
     this.funcBinding = funcBinding;
     Instance         = this.instance = instance;
 }
Esempio n. 26
0
 public EventActionInterceptionArgsImpl(TInstance instance, EventInfo @event, Action handler, IEventActionBinding <TInstance> actionBinding, IEventBroker <Action> eventBroker = null)
 {
     Event              = @event;
     Handler            = handler;
     EventBroker        = eventBroker;
     this.actionBinding = actionBinding;
     Instance           = this.instance = instance;
 }
Esempio n. 27
0
        public static void Main(string[] args)
        {
            handler = new ConsoleEventDelegate(ConsoleEventCallback);
            SetConsoleCtrlHandler(handler, true);

            IHost host = CreateHostBuilder(args).Build();

            IEventBroker broker = host.Services.GetRequiredService <IEventBroker>(); // initialize evenk broker

            // instantiate mediators
            OrderingMediator mediator        = host.Services.GetRequiredService <OrderingMediator>();
            PaymentMediator  paymentMediator = host.Services.GetRequiredService <PaymentMediator>();

            // POC
            Task.Run(() =>
            {
                Thread.Sleep(1500);

                IAttendant att = host.Services.GetRequiredService <IAttendant>();

                att.StartOrder(b => b.WithHeader("TST123456", "9262147116", "IVG", Locale.Latvia, Lang.Lv)
                               .WithObtainingMethod(GoodsObtainingMethod.Warehouse)
                               .WithItems(OrderLine.Create("0141", Money.Create(10.0m, CurrencyCode.Euro)))
                               .WithTotalValues(Money.Create(10.0m, CurrencyCode.Euro), 15.95m)
                               .WithExtraData("Kiosk", "LRK0123456")
                               .WithExtraData("SelectedMonth", "february 2021"));

                IPaymentProvider paymentProvider       = host.Services.GetRequiredService <IPaymentProvider>();
                ICashPaymentService cashPaymentService = host.Services.GetRequiredService <ICashPaymentService>(); // пользователь выбрал оплату кешем (не payment provider так решил, а пользователь)

                paymentProvider.Collect(PaymentSource.UVS, att.Order, (p) => { });


                Task.Factory.StartNew(() =>
                {
                    Thread.Sleep(10000);
                    att.CompleteOrder();
                });

                /*IStorageService s2 = host.Services.GetRequiredService<IStorageService>();
                 *
                 * ICompositeDispenser dispenser = host.Services.GetRequiredService<ICompositeDispenser>();
                 *
                 * ILayout layout = host.Services.GetRequiredService<ILayout>();
                 * if (layout == null)
                 * {
                 *  var t = s2.Get(x => true);
                 * }
                 *
                 * dispenser.OnDispensing += S1_OnDispensing;
                 *
                 * dispenser.Dispense(CompositDispenseAddress.Create(vendingMachineId: layout.Machines.First().Number.ToString(), layout.Machines.First().Trays.First().Belts.First().Address));
                 *
                 * dispenser.OnDispensing -= S1_OnDispensing;*/
            });

            host.Run();
        }
Esempio n. 28
0
        public void SetEventBrokerFactory(IBrokerFactory brokerFactory)
        {
            this._eventBroker = brokerFactory.GetGeneralBroker();

            // Subscribe to Validation issues raised by Repositories and Services
            this._eventBroker.ValidationFailedEvent += this.ValidationFailedEvent;

            this.SetEventBrokerUser();
        }
Esempio n. 29
0
 public TaskService(
     IEventBroker eventBroker,
     ITaskRepository repository,
     ICatalogRepository catalogRepository)
 {
     this.repository = repository;
     this.catalogRepository = catalogRepository;
     this.eventBroker = eventBroker;
 }
        /// <summary>
        /// Manages the specified event broker.
        /// </summary>
        /// <param name="eventBroker">The event broker.</param>
        public void Manage(IEventBroker eventBroker)
        {
            if (this.HostedEventBroker != null)
            {
                throw new InvalidOperationException("Cannot manage more than one event broker.");
            }

            this.HostedEventBroker = eventBroker;
        }
Esempio n. 31
0
 public PtmManager(IEventBroker broker) : base(broker)
 {
     mPtmTimer = new System.Windows.Forms.Timer
     {
         Interval = 10
     };
     mPtmTimer.Tick += PtmTimer_Tick;
     OnSessionStarted(null, null);
 }
Esempio n. 32
0
        public Kar(IDependencyContainer container, IEventBroker eventBroker, IUIManager uiManager, ILog logger)
        {
            _container   = container;
            _eventBroker = eventBroker;
            _uiManager   = uiManager;
            _logger      = logger;

            instance = this;
        }
 public EventActionInterceptionArgsImpl(TInstance instance, EventInfo @event, Action <TArg1> handler, IEventActionBinding <TInstance, TArg1> actionBinding, IEventBroker <Action <TArg1> > eventBroker = null, TArg1 arg1 = default(TArg1))
 {
     Arg1               = arg1;
     Event              = @event;
     Handler            = handler;
     EventBroker        = eventBroker;
     this.actionBinding = actionBinding;
     Instance           = this.instance = instance;
 }
        public void SetUp()
        {
            _eventBroker = Substitute.For<IEventBroker>();
            DomainEvents.SetEventBrokerStrategy(_eventBroker);

            _fred = new Student();
            _law = new Subject();

            // Act
            _fred.EnrolIn(_law);
        }
Esempio n. 35
0
 public NavigationController(
     IEventBroker eventBroker,
     ICatalogRepository catalogRepository,
     IDealRepository dealRepository,
     IProjectRepository projectRepository,
     INavigationView navigationView)
 {
     this.eventBroker = eventBroker;
     this.catalogRepository = catalogRepository;
     this.dealRepository = dealRepository;
     this.projectRepository = projectRepository;
     this.navigationView = navigationView;
 }
Esempio n. 36
0
 public ProjectService(
     IEventBroker eventBroker,
     ICatalogRepository catalogRepository,
     ITaskRepository taskRepository,
     IDealRepository dealRepository,
     IProjectRepository projectRepository)
 {
     this.dealRepository = dealRepository;
     this.catalogRepository = catalogRepository;
     this.taskRepository = taskRepository;
     this.projectRepository = projectRepository;
     this.eventBroker = eventBroker;
 }
Esempio n. 37
0
        public TasksUserControl(IEventBroker eventBroker)
            : this()
        {
            this.eventBroker = eventBroker;

            this.eventBroker.RegisterToolStripBouttonClickEventSource(this.toolStripButtonAddSupply, () => new RequestNewTaskAction(), Topics.UI);
            this.eventBroker.RegisterToolStripBouttonClickEventSource(this.toolStripButtonRemoveSupply, () =>
            {
                IDictionary<int, TaskViewModel> selected = new Dictionary<int, TaskViewModel>();
                foreach (DataGridViewCell item in this.dataGridViewTasks.SelectedCells)
                {
                    var supply = this.dataGridViewTasks.Rows[item.RowIndex].DataBoundItem as TaskViewModel;
                    if (!selected.ContainsKey(supply.Id))
                    {
                        selected.Add(supply.Id, supply);
                    }
                }

                if (selected.Count > 0)
                {
                    int maxItems = 10;
                    StringBuilder builder = new StringBuilder();
                    var selectedList = selected.Values.ToList();
                    for (int cpt = 0; cpt < (Math.Min(selected.Count, maxItems)); cpt++)
                    {
                        builder.Append(" - ").AppendLine(selectedList[cpt].Name);
                    }
                    if (selected.Count > maxItems)
                    {
                        builder.AppendLine("...");
                    }

                    var result = MessageBox.Show("Êtes-vous sûr de vouloir supprimer ces tâches: \n" + builder.ToString(), "Supprimer?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                    var commands = new List<DeleteTaskCommand>();
                    if (result == DialogResult.OK)
                    {
                        foreach (var item in selectedList)
                        {
                            commands.Add(new DeleteTaskCommand(item.Id));
                        }
                    }

                    return commands;
                }

                return null;
            }, Topics.COMMANDS);

            this.dataGridViewTasks.SetDoubleBuffered();
        }
Esempio n. 38
0
        public ParameterManager(IEventBroker eventBroker)
        {
            IDisposable subscription = eventBroker
                .OfType<ParameterChangedEventArgs>()
                .Skip(2)
                .Take(3)
                .Subscribe(args => Console.WriteLine("Parameter '{0}' changed. New value = {1}.", args.Parameter.Name, args.Parameter.Value));
            subscriptionList.Add(subscription);

            subscription = eventBroker
                .OfType<ParameterSetToZeroEventArgs>()
                .Subscribe(args => Console.WriteLine("Parameter '{0}' is equal 0.", args.Parameter.Name));
            subscriptionList.Add(subscription);
        }
        public CatalogSessionManagerService(ISessionFactory sessionFactory, IEventBroker eventBroker)
        {
            eventBroker.OnAfterSend += (msg) =>
                                           {
                                               logger.Debug("Close Catalog Session");
                                               var session = CatalogSessionContext.Unbind(sessionFactory);
                                               session.Clear();
                                           };

            eventBroker.OnBeforeSend += (msg) =>
                                            {
                                                logger.Debug("Open Catalog Session");
                                                OpenSessionIfRequired(sessionFactory);
                                            };
        }
Esempio n. 40
0
        public void Start()
        {
            logger.InfoFormat("Start");

            var app = new ChiffrageWPF.App();

            try
            {

                var loadingForm = new LoadingWindow();
                app.MainWindow = loadingForm;
                app.MainWindow.Show();
                //new Thread(() => app.Run()).Start();

                var builder = new ContainerBuilder();
                builder.RegisterModule(new NHibernateModule());
                builder.RegisterModule(new ProjectModule());
                builder.RegisterModule(new CatalogModule());
                builder.RegisterModule(new ChiffrageModule());

                var container = builder.Build();

                this.eventBroker = container.Resolve<IEventBroker>();
                this.eventBroker.Start();

                app.MainWindow.Close();

                app.MainWindow = container.Resolve<IApplicationView>() as ApplicationWindow;
                app.MainWindow.Show();
                app.Run(app.MainWindow);
                this.eventBroker.Stop();
            }
            catch (Exception ex)
            {
                logger.Fatal("Fatal error", ex);
                app.DispatcherUnhandledException += (sender, e) =>
                    {
                        logger.Fatal("Unhandled exception", e.Exception);
                        this.eventBroker.Stop();
                    };
                if (this.eventBroker != null)
                {
                    this.eventBroker.Stop();
                }
            }
        }
Esempio n. 41
0
        public void Start()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            logger.InfoFormat("Start");

            try
            {
                var loadingForm = new LoadingForm();
                loadingForm.Start();

                var builder = new ContainerBuilder();
                builder.RegisterModule(new NHibernateModule());
                builder.RegisterModule(new EventStoreModule());
                builder.RegisterModule(new ProjectModule());
                builder.RegisterModule(new CatalogModule());
                builder.RegisterModule(new ChiffrageModule());

                var container = builder.Build();

                container.Resolve<CatalogSessionManagerService>();
                container.Resolve<ProjectSessionManagerService>();

                this.eventBroker = container.Resolve<IEventBroker>();
                this.eventBroker.Start();

                loadingForm.Stop();

                var applicationForm = container.Resolve<IApplicationView>();

                this.eventBroker.Publish(new ApplicationStartAction(), Topics.UI);

                Application.Run((ApplicationForm)applicationForm);
                this.eventBroker.Stop();
            }
            catch (Exception ex)
            {
                logger.Fatal("Fatal error", ex);
                Application.OnThreadException(ex);
                if (this.eventBroker != null)
                {
                    this.eventBroker.Stop();
                }
            }
        }
Esempio n. 42
0
 public void SetEventBrokerFactory(IBrokerFactory brokerFactory)
 {
     this._eventBroker = brokerFactory.GetGeneralBroker();
 }
 /// <summary>
 /// Manages the specified event broker.
 /// </summary>
 /// <param name="eventBroker">The event broker.</param>
 public void Manage(IEventBroker eventBroker)
 {
     this.DoManage(eventBroker, null);
 }
 public VhptUserControlFactory(IEventBroker eventBroker)
 {
     this.eventBroker = eventBroker;
 }
Esempio n. 45
0
 public Parameter(IEventBroker broker)
 {
     m_broker = broker;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="EventFiredHandlerBase"/> class.
 /// </summary>
 /// <param name="eventBroker">The event broker.</param>
 protected EventFiredHandlerBase(IEventBroker eventBroker)
 {
     this.eventBroker = eventBroker;
 }
Esempio n. 47
0
        public NavigationUserControl(IEventBroker eventBroker)
            : this()
        {
            this.eventBroker = eventBroker;
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemCatalogNew, new RequestNewCatalogAction(), Topics.UI);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemDealNew, new RequestNewDealAction(), Topics.UI);
            this.eventBroker.RegisterTreeNodeSelectEventSource(this.treeNodeTasks, new TasksSelectedAction(), Topics.UI);
            this.eventBroker.RegisterTreeNodeUnselectEventSource(this.treeNodeTasks, new TasksUnselectedAction(), Topics.UI);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemProjectNew, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var deal = this.treeView.SelectedNode.Tag as DealItemViewModel;
                    if (deal != null)
                    {
                        return new RequestNewProjectAction(deal.Id);
                    }
                }

                return null;
            }, Topics.UI);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemDealClone, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var deal = this.treeView.SelectedNode.Tag as DealItemViewModel;
                    if (deal != null)
                    {
                        return new CloneDealCommand(deal.Id);
                    }
                }

                return null;
            }, Topics.COMMANDS);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemDealDelete, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var deal = this.treeView.SelectedNode.Tag as DealItemViewModel;
                    if (deal != null)
                    {
                        if (MessageBox.Show("Êtes-vous sûr de vouloir supprimer cette affaire?", "Supprimer", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            return new DeleteDealCommand(deal.Id);
                        }
                    }
                }

                return null;
            }, Topics.COMMANDS);

            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemProjectClone, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var deal = this.treeView.SelectedNode.Parent.Tag as DealItemViewModel;
                    var project = this.treeView.SelectedNode.Tag as ProjectItemViewModel;
                    if (deal != null && project != null)
                    {
                        return new CloneProjectCommand(deal.Id, project.Id);
                    }
                }

                return null;
            }, Topics.COMMANDS);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemProjectDelete, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var deal = this.treeView.SelectedNode.Parent.Tag as DealItemViewModel;
                    var project = this.treeView.SelectedNode.Tag as ProjectItemViewModel;
                    if (deal != null && project != null)
                    {
                        if (MessageBox.Show("Êtes-vous sûr de vouloir supprimer cet projet?", "Supprimer", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            return new DeleteProjectCommand(deal.Id, project.Id);
                        }
                    }
                }

                return null;
            }, Topics.COMMANDS);

            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemCatalogClone, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var catalog = this.treeView.SelectedNode.Tag as CatalogItemViewModel;
                    if (catalog != null)
                    {
                        return new CopyCatalogCommand(catalog.Id);
                    }
                }

                return null;
            }, Topics.COMMANDS);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemCatalogDelete, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var catalog = this.treeView.SelectedNode.Tag as CatalogItemViewModel;
                    if (catalog != null)
                    {
                        if (MessageBox.Show("Êtes-vous sûr de vouloir supprimer ce catalogue?", "Supprimer", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            return new DeleteCatalogCommand(catalog.Id);
                        }
                    }
                }

                return null;
            }, Topics.COMMANDS);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemProjectCopy, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var project = this.treeView.SelectedNode.Tag as ProjectItemViewModel;
                    if (project != null)
                    {
                        return new ProjectCopyAction(project.Id);
                    }
                }

                return null;
            }, Topics.UI);
            this.eventBroker.RegisterToolStripMenuItemClickEventSource(this.toolStripMenuItemProjectPaste, () =>
            {
                if (this.treeView.SelectedNode != null)
                {
                    var deal = this.treeView.SelectedNode.Tag as DealItemViewModel;
                    if (deal != null)
                    {
                        return new ProjectPasteAction(deal.Id);
                    }
                }

                return null;
            }, Topics.UI);
        }
        /// <summary>
        /// Manages the specified event broker.
        /// </summary>
        /// <param name="eventBroker">The event broker.</param>
        public void Manage(IEventBroker eventBroker)
        {
            if (this.HostedEventBroker != null)
            {
                throw new InvalidOperationException("Cannot manage more than one event broker.");
            }

            this.HostedEventBroker = eventBroker;
        }
 public EditHardwareSupplyWizardView(IEventBroker eventBroker)
     : base(eventBroker)
 {
 }
 /// <summary>
 /// Manages the specified event broker.
 /// </summary>
 /// <param name="eventBroker">The event broker.</param>
 /// <param name="eventBrokerIdentification">The event broker identification.</param>
 public void Manage(IEventBroker eventBroker, string eventBrokerIdentification)
 {
     this.DoManage(eventBroker, eventBrokerIdentification);
 }
 public NewProjectSupplyWizardView(IEventBroker eventBroker)
     : base(eventBroker)
 {
 }
Esempio n. 52
0
 public DealUserControl(IEventBroker eventBroker)
     : this()
 {
     this.eventBroker = eventBroker;
     this.CausesValidation = true;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="EventFiredHandlerBase"/> class.
 /// </summary>
 /// <param name="eventBroker">The event broker.</param>
 protected EventFiredHandlerBase(IEventBroker eventBroker)
 {
     this.eventBroker = eventBroker;
     this.Restriction = HandlerRestriction.Asynchronous;
 }
 public EditProjectHardwareWizardView(IEventBroker eventBroker)
     : base(eventBroker)
 {
 }
        /// <summary>
        /// Concrete implementation for managing a single event broker.
        /// </summary>
        /// <param name="eventBroker">The event broker.</param>
        /// <param name="eventBrokerIdentification">The event broker identification.</param>
        protected virtual void DoManage(IEventBroker eventBroker, string eventBrokerIdentification)
        {
            if (this.HostedEventBroker != null)
            {
                throw new InvalidOperationException("Cannot manage more than one event broker.");
            }

            this.HostedEventBrokerIdentification = this.CreateHostedEventBrokerIdentification(eventBrokerIdentification);
            this.HostedEventBroker = eventBroker;

            var topic = this.CreateDynamicSubscriptionTopic();

            InternalEventRegistrar.AddSubscription<EventArgs<IEventFired>>(topic, this, this.HandleEvent, this.CreateHandler());
        }
 public ParentWithDefaultEventBroker(Child child, IEventBroker globalEventBroker) 
     : base(child, globalEventBroker)
 {
 }
Esempio n. 57
0
		public SyncRefreshActivePart([NotNull] IServiceProvider serviceProvider)
			: base(serviceProvider)
		{
			_synchronizer = ServiceProvider.GetRequiredService<ISynchronizer>();
			_eventBroker = ServiceProvider.GetRequiredService<IEventBroker>();
		}
 public Parent(Child child, IEventBroker eventBrokerName)
 {
     this.FirstChild = child;
     eventBrokerName.Register(child);
 }
        void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            //var kultura = new System.Globalization.CultureInfo("pl-PL");
            //System.Threading.Thread.CurrentThread.CurrentUICulture = kultura;
            //System.Threading.Thread.CurrentThread.CurrentCulture = kultura;

            this.Top = 125.0;

            var culture = CultureInfo.InstalledUICulture;
            string lang = culture.DisplayName;

            m_Broker = new EventBroker();
            m_Broker.RegisterFor(EventType.LanguageChanged, this);
            m_Broker.RegisterFor(EventType.SelectedDateChanged, this);

            Engine = new CalendarEngine(m_Broker);

            _ViewModel = new ApplicationViewModel(Engine, m_Broker, dataGrid1);
            this.DataContext = _ViewModel;

            bEditSelected.IsEnabled = false;
            bDeleteSelectedNote.IsEnabled = false;

            string cultureInformation = CultureInfo.CurrentCulture.Name;

            if (!cultureInformation.Equals("pl-PL"))
                _ViewModel.LanguageChangeCommand.Execute("en-GB");
        }
Esempio n. 60
0
 protected WizardView(IEventBroker eventBroker)
 {
     this.EventBroker = eventBroker;
     this.Form = new WizardForm();
     this.UISynchronizationContext = WindowsFormsSynchronizationContext.Current;
 }