Esempio n. 1
0
        public AccountProxy(Dispatcher dispatcher, IAccountInternal internalAccount,
            IOrdersStorage ordersStorage, IExecutionsStorage executionsStorage, IPositionsStorage positionsStorage)
        {
            this.dispatcher = dispatcher;
            this.internalAccount = internalAccount;
            this.ordersStorage = ordersStorage;
            this.executionsStorage = executionsStorage;
            this.positionsStorage = positionsStorage;

            this.internalAccount.AccountChanged += this.OnAccountChanged;
            this.accountChangedEvent = this.dispatcher.RegisterEvent();
        }
Esempio n. 2
0
        public PositionsStorageProxy(IPositionsStorage positionsStorage, Dispatcher dispatcher, ProxiesFactory proxiesFactory)
        {
            Contract.Requires(positionsStorage != null);
            Contract.Requires(dispatcher != null);
            Contract.Requires(proxiesFactory != null);

            this.dispatcher = dispatcher;
            this.proxiesFactory = proxiesFactory;

            this.positionAddedEvent = dispatcher.RegisterEvent();
            positionsStorage.PositionAdded += this.OnPositionAdded;
            this.positions = positionsStorage.Positions.Select(proxiesFactory.CreatePositionProxy).ToList();
        }
Esempio n. 3
0
 private IPositionsStorage CreatePositionsStorage(IPositionsStorage positionsStorage)
 {
     return new PositionsStorageProxy(positionsStorage, this.dispatcher, this);
 }