Esempio n. 1
0
        public ServiceHost()
        {
            var config = new LocalConfigHelper(Assembly.GetExecutingAssembly().Location, "  WCF Service");

            IP     = config.GetString(nameof(IP));
            Port   = config.GetInt(nameof(Port));
            DTPort = config.GetInt(nameof(DTPort));

            _uris = new[]
            {
                new Uri($"net.tcp://{IP}:{Port}/TradingService"),
                new Uri($"http://{IP}:{DTPort}/TradingService")
            };

            var timeOut = new TimeSpan(0, 1, 0);

            _netTcpBinding = new NetTcpBinding
            {
                TransactionFlow        = false,
                ReceiveTimeout         = timeOut,
                SendTimeout            = timeOut,
                OpenTimeout            = timeOut,
                CloseTimeout           = timeOut,
                Security               = { Mode = SecurityMode.None },
                MaxBufferSize          = int.MaxValue,
                MaxReceivedMessageSize = int.MaxValue,
                MaxBufferPoolSize      = 1073741823,
                MaxConnections         = 100
            };

            _netTcpBinding.Security.Transport.ProtectionLevel      = System.Net.Security.ProtectionLevel.EncryptAndSign;
            _netTcpBinding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows;
            _netTcpBinding.ReliableSession.InactivityTimeout       = timeOut;
        }
Esempio n. 2
0
        private static async Task Can_Set(object body)
        {
            const int organizationId = TestEnvironment.DefaultOrganizationId;

            //Act - perform the action with the actual role
            var result = await LocalConfigHelper.SendUpdateConfigRequestAsync(body, organizationId);

            //Assert
            Assert.Equal(HttpStatusCode.NoContent, result.StatusCode);
        }
Esempio n. 3
0
        public ServiceHost()
        {
            var config = new LocalConfigHelper(Assembly.GetExecutingAssembly().Location, " WebSocket Service");

            IP   = config.GetString(nameof(IP));
            Port = config.GetInt(nameof(Port));

            var core = new CoreServiceHost();

            _commandManager  = core.CommandManager;
            _webSocketServer = core.WebSocketServer;
            _core            = core;

            RegsterCommands();
        }
Esempio n. 4
0
        public async Task Cannot_Set_If_Casing_Is_Wrong()
        {
            //Arrange
            var body = new
            {
                showColumnUsage = true
            };
            const int organizationId = TestEnvironment.DefaultOrganizationId;

            //Act - perform the action with the actual role
            var result = await LocalConfigHelper.SendUpdateConfigRequestAsync(body, organizationId);

            //Assert
            Assert.Equal(HttpStatusCode.BadRequest, result.StatusCode);
        }
Esempio n. 5
0
        public async Task Cannot_Set_In_Other_Organization()
        {
            //Arrange
            var body = new
            {
                ShowColumnUsage = true
            };
            const int organizationId = TestEnvironment.SecondOrganizationId;

            //Act - perform the action with the actual role
            var result = await LocalConfigHelper.SendUpdateConfigRequestAsync(body, organizationId);

            //Assert
            Assert.Equal(HttpStatusCode.Forbidden, result.StatusCode);
        }
Esempio n. 6
0
        public ServiceHost()
        {
            var config = new LocalConfigHelper(Assembly.GetExecutingAssembly().Location, "RabbitMQ Service");

            Username    = config.GetString(nameof(Username));
            Password    = config.GetString(nameof(Password));
            VirtualHost = config.GetString(nameof(VirtualHost));
            HostName    = config.GetString(nameof(HostName));

            _core           = new HostCore();
            _commandManager = _core.CommandManager;
            _rabbitMQServer = _core.RabbitMQServer;

            RegisterCommands();
        }
        public PoloniexDataFeed()
        {
            var config = new LocalConfigHelper(Assembly.GetExecutingAssembly().Location, "Poloniex Datafeed");

            PublicKey  = config.GetString(nameof(PublicKey));
            PrivateKey = config.GetString(nameof(PrivateKey));
            Url        = config.GetString(nameof(Url));

            TimeZoneInfo       = TimeZoneInfo.Utc;
            Securities         = new List <Security>();
            _securities        = new Dictionary <CurrencyPair, Security>();
            _securitiesById    = new Dictionary <int, Security>();
            _orderBooks        = new Dictionary <CurrencyPair, OrderBook>();
            _subscribedSymbols = new Dictionary <string, int>();
            _tickTimestamps    = new Dictionary <string, DateTime>();
        }
Esempio n. 8
0
        public LMAXDataFeed()
        {
            var config = new LocalConfigHelper(Assembly.GetExecutingAssembly().Location, "Lmax Datafeed");

            Username = config.GetString(nameof(Username));
            Password = config.GetString(nameof(Password));
            Url      = config.GetString(nameof(Url));

            TimeZoneInfo = TimeZoneInfo.Utc;
            Securities   = new List <Security>();

            _productType = ProductType.CFD_LIVE;

            _securities                       = new Dictionary <int, Security>();
            _subscribedSymbols                = new Dictionary <int, int>();
            _historyRequestHandlers           = new Dictionary <int, HistoryAnswerHandler>();
            _originalHistoryRequestParameters = new Dictionary <int, Selection>();
            _bidAskCache                      = new ConcurrentDictionary <int, List <Bar> >();
        }
Esempio n. 9
0
        public Core()
        {
            var config = new LocalConfigHelper(Assembly.GetExecutingAssembly().Location, "Scripting service");

            var rabbitMQUserName    = config.GetString("rabbitMQUserName", "Username");
            var rabbitMQPassword    = config.GetString("rabbitMQPassword", "Password");
            var rabbitMQVirtualHost = config.GetString("rabbitMQVirtualHost", "VirtualHost");
            var rabbitMQHostName    = config.GetString("rabbitMQHostName", "HostName");
            var wcfIP   = config.GetString("rabbitMQHostName", "WCFServerIP");
            var wcfPort = config.GetString("wcfPort", "WCFServerPort");

            _connector        = new Connector(wcfIP, wcfPort);
            _scriptingManager = new ScriptingManager(_connector, rabbitMQUserName, rabbitMQPassword, rabbitMQVirtualHost, rabbitMQHostName);

            _connector.StartSignal          += ConnectorOnStartSignal;
            _connector.SetSignalFlag        += ConnectorOnSetSignalFlag;
            _connector.StartIndicator       += ConnectorOnStartIndicator;
            _connector.UpdateStrategyParams += (serviceId, login, name, parameters) => _scriptingManager.UpdateSignalStrategyParams(login, name, parameters);
            _connector.RemoveIndicator      += (login, name, id) => _scriptingManager.RemoveWorkingIndicator(name, login);
            _connector.NewTick += (sender, tick) => Task.Run(() => _scriptingManager.RecalculateOnNewTick(tick));
            _connector.NewBar  += (sender, tuple) => Task.Run(() => _scriptingManager.RecalculateOnNewBar(tuple.Item1, tuple.Item2));
        }
Esempio n. 10
0
        public async Task Config_Values_Are_Saved()
        {
            //Arrange
            var body = new
            {
                ShowColumnUsage      = A <bool>(),
                ShowTabOverview      = A <bool>(),
                ShowColumnTechnology = A <bool>(),
                ShowItProjectModule  = A <bool>(),
                ShowItProjectPrefix  = A <bool>(),
                ShowItSystemModule   = A <bool>(),
                ShowItSystemPrefix   = A <bool>(),
                ShowItContractModule = A <bool>(),
                ShowItContractPrefix = A <bool>()
            };
            const int organizationId = TestEnvironment.DefaultOrganizationId;

            //Act - perform the action with the actual role
            var result = await LocalConfigHelper.SendUpdateConfigRequestAsync(body, organizationId);

            //Assert
            Assert.Equal(HttpStatusCode.NoContent, result.StatusCode);
            var configResponse = await LocalConfigHelper.GetLocalConfig(organizationId);

            Assert.Equal(HttpStatusCode.OK, configResponse.StatusCode);
            var config = await configResponse.ReadResponseBodyAsAsync <Config>();

            Assert.Equal(body.ShowColumnUsage, config.ShowColumnUsage);
            Assert.Equal(body.ShowTabOverview, config.ShowTabOverview);
            Assert.Equal(body.ShowColumnTechnology, config.ShowColumnTechnology);
            Assert.Equal(body.ShowItProjectModule, config.ShowItProjectModule);
            Assert.Equal(body.ShowItProjectPrefix, config.ShowItProjectPrefix);
            Assert.Equal(body.ShowItSystemModule, config.ShowItSystemModule);
            Assert.Equal(body.ShowItSystemPrefix, config.ShowItSystemPrefix);
            Assert.Equal(body.ShowItContractModule, config.ShowItContractModule);
            Assert.Equal(body.ShowItContractPrefix, config.ShowItContractPrefix);
        }