private void StartUp() { try { var factory = new CoreClientFactory(_loggerRef) .SetEnv("Dev") .SetApplication(Assembly.GetExecutingAssembly()) .SetProtocols(WcfConst.AllProtocolsStr) .SetServers("localhost"); var client = factory.Create(); _clientRef = Reference <ICoreClient> .Create(client); _cache = _clientRef.Target.CreateCache(); // init controls // - form title var env = _clientRef.Target.ClientInfo.ConfigEnv; Text += String.Format(" ({0})", EnvHelper.EnvName(env)); // - server port int defaultPort = EnvHelper.SvcPort(env, SvcId.GridSwitch); chkChangePort.Text = String.Format("Change server port from default ({0}) to:", defaultPort); _syncContext.Post(OnClientStateChange, new CoreStateChange(CoreStateEnum.Initial, _clientRef.Target.CoreState)); _clientRef.Target.OnStateChange += _Client_OnStateChange; } catch (Exception excp) { _loggerRef.Target.Log(excp); } }
private void Form1Load(object sender, EventArgs e) { // create logger _loggerRef = Reference <ILogger> .Create(new TextBoxLogger(txtLog)); // init controls // - form title WinFormHelper.SetAppFormTitle(this, BuildConst.BuildEnv); // - provider list foreach (MDSProviderId provider in Enum.GetValues(typeof(MDSProviderId))) { bool enabled = false; switch (provider) { case MDSProviderId.GlobalIB: enabled = true; break; case MDSProviderId.Bloomberg: enabled = true; break; case MDSProviderId.Simulator: enabled = true; break; } clbEnabledProviders.Items.Add(provider.ToString(), enabled); } // - server port int defaultPort = EnvHelper.SvcPort(EnvHelper.ParseEnvName(BuildConst.BuildEnv), SvcId.MarketData); chkChangePort.Text = String.Format("Change server port from default ({0}) to:", defaultPort); }
private void StartUp() { // default configuration EnvId env = IntClient.Target.ClientInfo.ConfigEnv; // derived configuration _serverPort = OtherSettings.GetValue(WFPropName.Port, EnvHelper.SvcPort(env, SvcId.GridSwitch)); _nodeId = OtherSettings.GetValue(WFPropName.NodeId, Guid.NewGuid()); // create router/worker worksteps Routers = GridWorksteps.Create().ToArray(); Workers = GridWorksteps.Create().ToArray(); // start discovery endpoint string endpoint = ServiceHelper.FormatEndpoint(WcfConst.NetTcp, _serverPort); string svcName = EnvHelper.SvcPrefix(SvcId.GridSwitch); _discoServerHost = new CustomServiceHost <IDiscoverV111, DiscoverRecverV111>( Logger, new DiscoverRecverV111(this), endpoint, svcName, typeof(IDiscoverV111).Name, true); IWorkContext context = new WorkContext(Logger, IntClient.Target, HostInstance, ServerInstance); // start gridswitch endpoints - routers before workers foreach (IWorkstep router in Routers) { router.Initialise(context); router.EnableGrid(GridLevel.Router, _nodeId, _serverPort, null); } foreach (IWorkstep worker in Workers) { worker.Initialise(context); worker.EnableGrid(GridLevel.Worker, _nodeId, _serverPort, null); } }
public WorkflowClient(IWorkContext context, NamedValueSet settings) { // default configuration const SvcId svc = SvcId.GridSwitch; EnvId env = EnvHelper.ParseEnvName(BuildConst.BuildEnv); Guid nodeId = Guid.NewGuid(); // custom configuration if (settings != null) { // environment env = (EnvId)settings.GetValue(WFPropName.EnvId, (int)env); } env = EnvHelper.CheckEnv(env); // derived configuration string hosts = null; int port = EnvHelper.SvcPort(env, svc); if (settings != null) { port = settings.GetValue(WFPropName.Port, port); hosts = settings.GetValue(WFPropName.Hosts, hosts); nodeId = settings.GetValue(WFPropName.NodeId, nodeId); } string svcName = EnvHelper.SvcPrefix(svc); string[] serviceAddrs = EnvHelper.GetServiceAddrs(env, svc, false); if (hosts != null) { serviceAddrs = hosts.Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); } ServiceAddress resolvedServer = V111Helpers.ResolveServer(context.Logger, svcName, new ServiceAddresses(WcfConst.AllProtocols, serviceAddrs, port), new[] { typeof(IDiscoverV111).FullName }); // initialise worksteps List <IWorkstep> worksteps = GridWorksteps.Create(); foreach (IWorkstep workstep in worksteps) { workstep.Initialise(context); workstep.EnableGrid(GridLevel.Client, nodeId, resolvedServer.Port, resolvedServer.Host); } Clients = worksteps.ToArray(); }
private void StartUp() { try { var factory = new CoreClientFactory(_loggerRef) .SetEnv("Dev") .SetApplication(Assembly.GetExecutingAssembly()) .SetProtocols(WcfConst.AllProtocolsStr) .SetServers("localhost"); var client = factory.Create(); _clientRef = Reference <ICoreClient> .Create(client); _cache = _clientRef.Target.CreateCache(); // init controls // - form title EnvId env = _clientRef.Target.ClientInfo.ConfigEnv; Text += String.Format(" ({0})", EnvHelper.EnvName(env)); // - server port int defaultPort = EnvHelper.SvcPort(env, SvcId.GridSwitch); _qasDefViewHelper = new QASDefViewHelper(); _qasDefDataHelper = new QASDefDataHelper(); _qasDefFilters = new ComboxBoxFilterGroup(panelQASDef, _qasDefViewHelper, QASDefSelectionChanged); _qasDefSelecter = new QASDefSelecter( _qasDefFilters, _qasDefViewHelper, _qasDefDataHelper); _qasDefView = new ListViewManager <RatesObj>( _loggerRef.Target, lvQASDef, _qasDefViewHelper, _qasDefSelecter, _qasDefFilters, new QASDefSorter(), _qasDefDataHelper); //Get the starting configuration // chkChangePort.Text = String.Format("Change server port from default ({0}) to:", defaultPort); //Set up the timer and the random number generator. // _timer = new System.Timers.Timer(10000); _rand = new Random(); } catch (Exception excp) { _loggerRef.Target.Log(excp); } }
protected override void OnServerStarted() { // default configuration _activeProviders = new[] { MDSProviderId.Bloomberg }; // custom configuration string[] enabledProviders = OtherSettings.GetArray <string>(MdsPropName.EnabledProviders); if (enabledProviders != null && enabledProviders.Length > 0) { _activeProviders = enabledProviders.Select(providerName => EnumHelper.Parse <MDSProviderId>(providerName, true)).ToArray(); } // derived configuration EnvId envId = IntClient.Target.ClientInfo.ConfigEnv; string envName = EnvHelper.EnvName(envId); var port = OtherSettings.GetValue(MdsPropName.Port, EnvHelper.SvcPort(envId, SvcId.MarketData)); // service endpoints string transEndpoints = ServiceHelper.FormatEndpoint(WcfConst.NetTcp, port); string discoEndpoints = ServiceHelper.FormatEndpoint(WcfConst.NetTcp, port); transEndpoints = OtherSettings.GetValue(MdsPropName.Endpoints, transEndpoints); // add default port to endpoints if required var tempEndpoints = new List <string>(); foreach (string ep in transEndpoints.Split(';')) { var epParts = ep.Split(':'); var scheme = epParts[0]; var tport = port; if (epParts.Length > 1) { tport = Int32.Parse(epParts[1]); } tempEndpoints.Add($"{scheme}:{tport}"); } transEndpoints = String.Join(";", tempEndpoints.ToArray()); // get user identity and full name WindowsIdentity winIdent = WindowsIdentity.GetCurrent(); UserPrincipal principal = null; try { var principalContext = new PrincipalContext(ContextType.Domain); principal = UserPrincipal.FindByIdentity(principalContext, IdentityType.SamAccountName, winIdent.Name); } catch (PrincipalException principalException) { // swallow - can occur on machines not connected to domain controller Logger.LogWarning("UserPrincipal.FindByIdentity failed: {0}: {1}", principalException.GetType().Name, principalException.Message); } string userFullName = null; if (principal != null) { userFullName = principal.GivenName + " " + principal.Surname; } _serverCfg = new ServerCfg( new ModuleInfo(envName, Guid.NewGuid(), winIdent.Name, userFullName, null, null), transEndpoints, discoEndpoints); foreach (MDSProviderId providerId in _activeProviders) { _providers[(int)providerId] = new MarketDataRealtimeClient(LoggerRef, MainThreadQueue, IntClient.Target, providerId); } string svcName = EnvHelper.SvcPrefix(SvcId.MarketData); // V2.2 _mrktDataV221ServerHost = new CustomServiceHost <IMrktDataV221, MrktDataRecverV221>( Logger, new MrktDataRecverV221(this), _serverCfg.TransEndpoints, svcName, typeof(IMrktDataV221).Name, true); _sessCtrlV131ServerHost = new CustomServiceHost <ISessCtrlV131, SessCtrlRecverV131>( Logger, new SessCtrlRecverV131(this), _serverCfg.DiscoEndpoints, svcName, typeof(ISessCtrlV131).Name, true); _discoServerHostV111 = new CustomServiceHost <IDiscoverV111, DiscoverRecverV111>( Logger, new DiscoverRecverV111(this), _serverCfg.DiscoEndpoints, svcName, typeof(IDiscoverV111).Name, true); }