public bool ESBIsSourceNameRepeat(IDbConnection cn, string sourceName, SourceTypeEnum sourceType, int sourceId) { using (SqlCommand cmd = new SqlCommand()) { cmd.Connection = cn as SqlConnection; if (sourceId == 0) { cmd.CommandText = @"SELECT * FROM ESB_SourceInfo WHERE isvalid=1 and sourceType=@sourceType and sourceName=@sourceName"; cmd.Parameters.Add("@sourceType", SqlDbType.NVarChar).Value = sourceType.ToString(); cmd.Parameters.Add("@sourceName", SqlDbType.NVarChar).Value = sourceName; } else { cmd.CommandText = @"SELECT * FROM ESB_SourceInfo WHERE isvalid=1 and sourceType=@sourceType and sourceName=@sourceName and sourceId<>@sourceId"; cmd.Parameters.Add("@sourceId", SqlDbType.Int).Value = sourceId; cmd.Parameters.Add("@sourceType", SqlDbType.NVarChar).Value = sourceType.ToString(); cmd.Parameters.Add("@sourceName", SqlDbType.NVarChar).Value = sourceName; } bool flag = true; object obj = cmd.ExecuteScalar(); if (obj == null) { flag = false; } return(flag); } }
public Source(SourceTypeEnum typeEnum) { TypeEnum = typeEnum; Description = string.Empty; Name = string.Empty; Parameters = ParametersDictionary[typeEnum]; }
public virtual JObject GetESBObjectParams(HttpContext context) { YZRequest request = new YZRequest(context); String objectName = request.GetString("ESB"); FlowDataSet dataset = new FlowDataSet(); //获取参数 string[] strs = objectName.Split(':'); SourceTypeEnum sourceType = (SourceTypeEnum)Enum.Parse(typeof(SourceTypeEnum), strs[0]); SourceInfo sourceInfo = SourceInfoManager.GetSourceInfo(sourceType, strs[1]); FlowDataTable table = new FlowDataTable(); dataset.Tables.Add(table); SourceVisit visit = new SourceVisit(sourceInfo); List <ColumnInfo> paramList = visit.GetParameter(); if (paramList != null && paramList.Count > 0) { foreach (var item in visit.GetParameter()) { table.Columns.Add(new FlowDataColumn(item.rename)); } } JObject rv = YZJsonHelper.SerializeSchema(dataset, "", "DataType"); rv["supportOp"] = false; return(rv); }
/// <summary> /// Get sources by filtering criteria. /// </summary> public List <ComponentId> GetSources(SourceTypeEnum filteringSourceType, bool partialMatch) { List <ComponentId> result = new List <ComponentId>(); SourcesUpdateMessage responce = this.SendAndReceive <SourcesUpdateMessage>( new RequestSourcesMessage(filteringSourceType, partialMatch)); if (responce != null && responce.OperationResult != false && responce.SourcesIds.Count > 0) { result.AddRange(responce.SourcesIds); } // Add local sources last, since they are of less interest usually. if (_dataStoreSourceInfo.MatchesSearchCritera(filteringSourceType, partialMatch)) { result.Add(_dataStoreSourceInfo.ComponentId); } if (_backtestingExecutionSourceInfo.MatchesSearchCritera(filteringSourceType, partialMatch)) { result.Add(_backtestingExecutionSourceInfo.ComponentId); } return(result); }
public bool ESBIsSourceNameRepeat(IDbConnection cn, string sourceName, SourceTypeEnum sourceType, int sourceId) { using (OracleCommand cmd = new OracleCommand()) { cmd.Connection = cn as OracleConnection; cmd.BindByName = true; if (sourceId == 0) { cmd.CommandText = @"SELECT * FROM ESB_SOURCEINFO WHERE ISVALID=1 AND SOURCETYPE=:SOURCETYPE AND SOURCENAME=:SOURCENAME"; cmd.Parameters.Add(":SOURCETYPE", OracleDbType.NVarchar2).Value = sourceType.ToString(); cmd.Parameters.Add(":SOURCENAME", OracleDbType.NVarchar2).Value = sourceName; } else { cmd.CommandText = @"SELECT * FROM ESB_SOURCEINFO WHERE ISVALID=1 AND SOURCETYPE=:SOURCETYPE AND SOURCENAME=:SOURCENAME AND SOURCEID<>:SOURCEID"; cmd.Parameters.Add(":SOURCEID", OracleDbType.Int32).Value = sourceId; cmd.Parameters.Add(":SOURCETYPE", OracleDbType.NVarchar2).Value = sourceType.ToString(); cmd.Parameters.Add(":SOURCENAME", OracleDbType.NVarchar2).Value = sourceName; } bool flag = true; object obj = cmd.ExecuteScalar(); if (obj == null) { flag = false; } return(flag); } }
/// <summary> /// Returns an array of the available media types for the specified source type. /// </summary> /// <returns>An array of the available media types for the specified source type.</returns> /// <param name="sourceType">The source to use to pick an image.</param> public static NSArray <NSString> AvailableMediaTypesForSourceType(SourceTypeEnum sourceType) { var ptr = C.UIImagePickerController_availableMediaTypesForSourceType(sourceType); var nsArray = InteropObjectFactory <NSArray <NSString> > .FromPointer(ptr, p => new NSArray <NSString>(p)); CoreFoundation.CFFunctions.CFRelease(ptr); return(nsArray); }
public bool Equals(SourceTypeEnum obj) { if ((object)obj == null) { return(false); } return(StringComparer.OrdinalIgnoreCase.Equals(this.Value, obj.Value)); }
/// <summary> /// 返回数据连接列表 /// </summary> /// <param name="context"></param> /// <returns></returns> public JArray GetConnectList(HttpContext context) { YZRequest request = new YZRequest(context); SourceTypeEnum sourceType = request.GetEnum <SourceTypeEnum>("sourceType"); JArray array = new JArray(); ConnectInfoCollection rv = ConnectInfoManager.GetConnectList(sourceType); return(JArray.FromObject(rv)); }
public ConfigurationWindowViewModel(SourceTypeEnum type) { base.DisplayName = Resources.ConfigurationWindowViewModel_DisplayName; _source = new Source(type); _configuration = new DbConnectionHelper(); ListProviders = _configuration.GetListProviders(); _connectionMessenger = new NotificationConnectionMessenger(); CreateCommand = new ActionCommand(Create); }
public IDataReader GetESBSourceList(IDbConnection cn, SourceTypeEnum sourceType) { using (SqlCommand cmd = new SqlCommand()) { cmd.Connection = cn as SqlConnection; cmd.CommandText = @"select * from YZV_ESB_SourceView where isvalid=1 and sourceType=@sourceType order by updateTime desc"; cmd.Parameters.Add("@sourceType", SqlDbType.NVarChar).Value = sourceType.ToString(); return(cmd.ExecuteReader()); } }
public IDataReader GetESBConnectList(IDbConnection cn, SourceTypeEnum connectType) { using (SqlCommand cmd = new SqlCommand()) { cmd.Connection = cn as SqlConnection; cmd.CommandText = @"SELECT * FROM ESB_ConnectInfo where isvalid=1 and connectType=@connectType"; cmd.Parameters.Add("@connectType", SqlDbType.NVarChar).Value = connectType.ToString(); return(cmd.ExecuteReader()); } }
internal ModulatorType(ushort raw) { polarity = ((raw & 0x0200) == 0x0200); direction = ((raw & 0x0100) == 0x0100); midiContinuousController = ((raw & 0x0080) == 0x0080); sourceType = (SourceTypeEnum)((raw & (0xFC00)) >> 10); controllerSource = (ControllerSourceEnum)(raw & 0x007F); midiContinuousControllerNumber = (ushort)(raw & 0x007F); }
public IDataReader GetESBConnectList(IDbConnection cn, SourceTypeEnum connectType) { using (OracleCommand cmd = new OracleCommand()) { cmd.Connection = cn as OracleConnection; cmd.BindByName = true; cmd.CommandText = @"SELECT * FROM ESB_CONNECTINFO WHERE ISVALID=1 AND CONNECTTYPE=:CONNECTTYPE"; cmd.Parameters.Add(":CONNECTTYPE", OracleDbType.NVarchar2).Value = connectType.ToString(); return(cmd.ExecuteReader()); } }
public void AddRule(string pattern, DestinationTypeEnum destinationType, SourceTypeEnum sourceType, params object[] parameters) { addRuleParameters.Add( new AddRuleParameters { Pattern = pattern, DestinationType = destinationType, SourceType = sourceType, Parameters = parameters }); }
internal ModulatorType(ushort raw) { // TODO: map this to fields polarity = ((raw & 0x0200) == 0x0200); direction = ((raw & 0x0100) == 0x0100); midiContinuousController = ((raw & 0x0080) == 0x0080); sourceType = (SourceTypeEnum) ((raw & (0xFC00)) >> 10); controllerSource = (ControllerSourceEnum) (raw & 0x007F); midiContinuousControllerNumber = (ushort) (raw & 0x007F); }
/// <summary> /// Создает окно для создания нового источника /// </summary> public void CreateConfigurationView(SourceTypeEnum type) { var view = new ConfigurationWindow(); var viewModel = new ConfigurationWindowViewModel(type); if (viewModel.CloseAction == null) { viewModel.CloseAction = new Action(view.Close); } view.DataContext = viewModel; view.ShowDialog(); }
public IDataReader GetESBSourceList(IDbConnection cn, SourceTypeEnum sourceType) { using (OracleCommand cmd = new OracleCommand()) { cmd.Connection = cn as OracleConnection; cmd.BindByName = true; cmd.CommandText = @"SELECT * FROM YZV_ESB_SOURCEVIEW WHERE ISVALID=1 AND SOURCETYPE=:SOURCETYPE ORDER BY UPDATETIME DESC"; cmd.Parameters.Add(":SOURCETYPE", OracleDbType.NVarchar2).Value = sourceType.ToString(); return(cmd.ExecuteReader()); } }
/// <summary> /// Helper, return information for the modes of a given source. /// </summary> public SourceTypeEnum GetSourceTypeFlags(ComponentId sourceId) { SourceTypeEnum result = SourceTypeEnum.None; lock (this) { SourceInfo?info = GetSourceById(sourceId); if (info.HasValue) { return(info.Value.SourceType); } } return(result); }
private static double CalculateModulator(SourceTypeEnum s, TransformEnum t, DirectionEnum d, PolarityEnum p, int value, int min, int max) { double output = 0; int i; value = value - min; max = max - min; if (d == DirectionEnum.MaxToMin) { value = max - value; } switch (s) { case SourceTypeEnum.Linear: output = value / max; break; case SourceTypeEnum.Concave: i = 127 - value; output = -(20.0 / 96.0) * Math.Log10((i * i) / (double)(max * max)); break; case SourceTypeEnum.Convex: i = value; output = 1 + (20.0 / 96.0) * Math.Log10((i * i) / (double)(max * max)); break; case SourceTypeEnum.Switch: if (value <= (max / 2)) { output = 0; } else { output = 1; } break; } if (p == PolarityEnum.Bipolar) { output = (output * 2) - 1; } if (t == TransformEnum.AbsoluteValue) { output = Math.Abs(output); } return(output); }
/// <summary> /// /// </summary> public bool MatchesSearchCritera(SourceTypeEnum? filteringSourceType, bool partialMatch) { if (filteringSourceType.HasValue == false || SourceType == filteringSourceType) {// Full match. return true; } else if (partialMatch) {// Look for partial match. if ((SourceType & filteringSourceType) != 0) { return true; } } return false; }
public ModulatorType(BinaryReader reader) { ushort raw = reader.ReadUInt16(); if ((raw & 0x0200) == 0x0200) polarity = PolarityEnum.Bipolar; else polarity = PolarityEnum.Unipolar; if ((raw & 0x0100) == 0x0100) direction = DirectionEnum.MaxToMin; else direction = DirectionEnum.MinToMax; midiContinuousController = ((raw & 0x0080) == 0x0080); sourceType = (SourceTypeEnum)((raw & (0xFC00)) >> 10); controllerSource = (ushort)(raw & 0x007F); }
/// <summary> /// 判断是否有同名数据源 /// </summary> /// <param name="provider"></param> /// <param name="cn"></param> /// <param name="sourceName"></param> /// <param name="sourceType"></param> /// <param name="sourceId"></param> /// <returns></returns> public static bool IsSourceNameRepeat(string sourceName, SourceTypeEnum sourceType, int sourceId) { try { using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { return(provider.ESBIsSourceNameRepeat(cn, sourceName, sourceType, sourceId)); } } } catch (Exception ex) { throw new BPMException(BPMExceptionType.DBLoadDataErr, "ESB_SourceInfo", ex.Message); } }
public bool ESBIsConnectRepeat(IDbConnection cn, string connectName, SourceTypeEnum connectType) { using (SqlCommand cmd = new SqlCommand()) { cmd.Connection = cn as SqlConnection; cmd.CommandText = @"SELECT * FROM ESB_ConnectInfo WHERE isvalid=1 and connectType=@connectType and connectName=@connectName"; cmd.Parameters.Add("@connectType", SqlDbType.NVarChar).Value = connectType.ToString(); cmd.Parameters.Add("@connectName", SqlDbType.NVarChar).Value = connectName; bool flag = true; object obj = cmd.ExecuteScalar(); if (obj == null) { flag = false; } return(flag); } }
public bool ESBIsConnectRepeat(IDbConnection cn, string connectName, SourceTypeEnum connectType) { using (OracleCommand cmd = new OracleCommand()) { cmd.Connection = cn as OracleConnection; cmd.BindByName = true; cmd.CommandText = @"SELECT * FROM ESB_CONNECTINFO WHERE ISVALID=1 AND CONNECTTYPE=:CONNECTTYPE AND CONNECTNAME=:CONNECTNAME"; cmd.Parameters.Add(":CONNECTTYPE", OracleDbType.NVarchar2).Value = connectType.ToString(); cmd.Parameters.Add(":CONNECTNAME", OracleDbType.NVarchar2).Value = connectName; bool flag = true; object obj = cmd.ExecuteScalar(); if (obj == null) { flag = false; } return(flag); } }
/// <summary> /// 判断数据源名称是否唯一 /// </summary> /// <param name="context"></param> /// <returns></returns> public JObject IsSourceNameOnly(HttpContext context) { YZRequest request = new YZRequest(context); string sourceName = request.GetString("sourceName"); SourceTypeEnum sourceType = request.GetEnum <SourceTypeEnum>("sourceType"); JObject obj = new JObject(); bool falg = SourceInfoManager.IsSourceRepeat(sourceName, sourceType); if (falg) { obj[YZJsonProperty.success] = false; obj[YZJsonProperty.errorMessage] = "已存在同名的数据源,请重命名数据源名称!"; } else { obj[YZJsonProperty.success] = true; } return(obj); }
public virtual JObject GetUserDataESB(BPMConnection cn, JObject request) { string esbObjectName = (string)request["ESB"]; YZDSFilterCollection filters = request["Filter"] != null ? request["Filter"].ToObject <YZDSFilterCollection>() : null; //获取参数 string[] strs = esbObjectName.Split(':'); SourceTypeEnum sourceType = (SourceTypeEnum)Enum.Parse(typeof(SourceTypeEnum), strs[0]); SourceInfo sourceInfo = SourceInfoManager.GetSourceInfo(sourceType, strs[1]); SourceVisit visit = new SourceVisit(sourceInfo); BPMObjectNameCollection names = new BPMObjectNameCollection(); List <ColumnInfo> values = new List <ColumnInfo>(); if (filters != null) { foreach (KeyValuePair <string, YZDSFilter> filter in filters) { names.Add(filter.Key); values.Add(new ColumnInfo() { columnName = filter.Key, defaultValue = filter.Value.value }); } foreach (ColumnInfo column in visit.GetParameter()) { if (!names.Contains(column.rename)) { names.Add(column.rename); values.Add(new ColumnInfo() { columnName = column.rename, defaultValue = column.defaultValue }); } } } DataTable dt = visit.GetResult(values); FlowDataTable table = new FlowDataTable(dt); return(this.ToResult(table, false)); }
public virtual DataTable GetESBDataNoPaged(HttpContext context) { YZRequest request = new YZRequest(context); string esbObjectName = request.GetString("ESB"); YZDSFilterCollection filters = JObject.Parse(request.GetString("Filter", "{}")).ToObject <YZDSFilterCollection>(); //获取参数 string[] strs = esbObjectName.Split(':'); SourceTypeEnum sourceType = (SourceTypeEnum)Enum.Parse(typeof(SourceTypeEnum), strs[0]); SourceInfo sourceInfo = SourceInfoManager.GetSourceInfo(sourceType, strs[1]); SourceVisit visit = new SourceVisit(sourceInfo); BPMObjectNameCollection names = new BPMObjectNameCollection(); List <ColumnInfo> values = new List <ColumnInfo>(); if (filters != null) { foreach (KeyValuePair <string, YZDSFilter> filter in filters) { names.Add(filter.Key); values.Add(new ColumnInfo() { columnName = filter.Key, defaultValue = filter.Value.value }); } foreach (ColumnInfo column in visit.GetParameter()) { if (!names.Contains(column.rename)) { names.Add(column.rename); values.Add(new ColumnInfo() { columnName = column.rename, defaultValue = column.defaultValue }); } } } return(visit.GetResult(values)); }
/// <summary> /// 根据名称获取数据源 /// </summary> /// <param name="provider"></param> /// <param name="cn"></param> /// <param name="sourceId"></param> /// <returns></returns> public static SourceInfo GetSourceInfo(SourceTypeEnum sourceType, string sourceName) { try { using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { using (YZReader reader = new YZReader(provider.GetESBSourceInfo(cn, sourceType, sourceName))) { return(ReaderToEntity(reader)); } } } } catch (Exception ex) { throw new BPMException(BPMExceptionType.DBLoadDataErr, "YZV_ESB_SourceView", ex.Message); } }
/// <summary> /// 返回一个数据连接 /// </summary> /// <param name="provider"></param> /// <param name="cn"></param> /// <returns></returns> public static ConnectInfoCollection GetConnectList(SourceTypeEnum connectType) { try { using (IYZDbProvider provider = YZDbProviderManager.DefaultProvider) { using (IDbConnection cn = provider.OpenConnection()) { using (YZReader reader = new YZReader(provider.GetESBConnectList(cn, connectType))) { return(ReaderToEntityList(reader)); } } } } catch (Exception ex) { throw new BPMException(BPMExceptionType.DBLoadDataErr, "ESB_ConnectInfo", ex.Message); } }
public static IAssignment Create(SourceTypeEnum source) { switch (source) { case SourceTypeEnum.Value: return(new ValueAssignment()); case SourceTypeEnum.Random: return(new RandomAssignment()); case SourceTypeEnum.Sequence: return(new SequenceAssignment()); case SourceTypeEnum.Array: return(new ArrayAssignment()); default: throw new InvalidDataException(); } }
public virtual JObject GetESBObjectSchema(HttpContext context) { YZRequest request = new YZRequest(context); String objectName = request.GetString("ESB"); FlowDataSet dataset = new FlowDataSet(); //获取参数 string[] strs = objectName.Split(':'); SourceTypeEnum sourceType = (SourceTypeEnum)Enum.Parse(typeof(SourceTypeEnum), strs[0]); SourceInfo sourceInfo = SourceInfoManager.GetSourceInfo(sourceType, strs[1]); FlowDataTable table = new FlowDataTable(); dataset.Tables.Add(table); SourceVisit visit = new SourceVisit(sourceInfo); foreach (var item in visit.GetSchema()) { table.Columns.Add(new FlowDataColumn(item.rename, typeof(string))); } return(YZJsonHelper.SerializeSchema(dataset, "", "DataType")); }
public void FromXml(XmlReader reader) { var sourceTypeConverter = TypeDescriptor.GetConverter(typeof(SourceTypeEnum)); if (reader.HasAttributes) { var text = reader.GetAttribute("index"); if (!string.IsNullOrEmpty(text)) { _index = int.Parse(text); } text = reader.GetAttribute("sourcetype"); if (!string.IsNullOrEmpty(text)) { if (sourceTypeConverter.IsValid(text)) { _srcType = ( SourceTypeEnum )sourceTypeConverter.ConvertFromString(text); } } } }
public async Task <Guid> CreatAsync(Guid groupId, int index, string pattern, SourceTypeEnum sourceType, DestinationTypeEnum destinationType = DestinationTypeEnum.Any) { CreateRuleRequest request = new CreateRuleRequest { Index = index, Pattern = pattern, SourceType = sourceType, DestinationType = destinationType, GroupId = groupId }; HttpResponseMessage response = await client.PostAsJsonAsync( controllerPath, request); if (response.IsSuccessStatusCode) { CreateRuleResponse rule = await response.Content.ReadAsAsync <CreateRuleResponse>(); return(rule.Id); } else { throw new UnauthorizedAccessException($"Unauthorized rule creation at index '{index}' for group '{groupId}'"); } }
/// <summary> /// /// </summary> public RequestSourcesMessage(SourceTypeEnum? sourceType, bool partialMatch) { _sourceType = sourceType; _partialMatch = partialMatch; }
/// <summary> /// /// </summary> public SourceStub(SerializationInfo info, StreamingContext context) : base(info, context) { _sourceType = (SourceTypeEnum)info.GetValue("sourceType", typeof(SourceTypeEnum)); }
/// <summary> /// Get sources by filtering criteria. /// </summary> public List<ComponentId> GetSources(SourceTypeEnum filteringSourceType, bool partialMatch) { List<ComponentId> result = new List<ComponentId>(); SourcesUpdateMessage responce = this.SendAndReceive<SourcesUpdateMessage>( new RequestSourcesMessage(filteringSourceType, partialMatch)); if (responce != null && responce.OperationResult != false && responce.SourcesIds.Count > 0) { result.AddRange(responce.SourcesIds); } // Add local sources last, since they are of less interest usually. if (_dataStoreSourceInfo.MatchesSearchCritera(filteringSourceType, partialMatch)) { result.Add(_dataStoreSourceInfo.ComponentId); } if (_backtestingExecutionSourceInfo.MatchesSearchCritera(filteringSourceType, partialMatch)) { result.Add(_backtestingExecutionSourceInfo.ComponentId); } return result; }
/// <summary> /// /// </summary> public RegisterSourceMessage(SourceTypeEnum type, bool register) { _type = type; _register = register; }
/// <summary> /// /// </summary> public SourceStub(string name, SourceTypeEnum sourceType) : base(name, false) { _sourceType = sourceType; }
/// <summary> /// Get source orderInfo, by aplying filter, since more than one source may be on same id, but always from different type. /// </summary> /// <returns></returns> public SourceInfo? GetSourceInfo(ComponentId sourceId, SourceTypeEnum? filter) { if (sourceId == _dataStoreSourceInfo.ComponentId) { return _dataStoreSourceInfo; } if (sourceId == _backtestingExecutionSourceInfo.ComponentId) { return _backtestingExecutionSourceInfo; } SourcesUpdateMessage responce = this.SendAndReceive<SourcesUpdateMessage>( new GetSourceInfoMessage(sourceId)); if (responce == null || responce.OperationResult == false || responce.Sources.Count < 1) { return null; } List<SourceTypeEnum> types = new List<SourceTypeEnum>(); foreach (SourceInfo info in responce.Sources) { if (filter.HasValue == false || (info.SourceType & filter.Value) != 0) { return info; } } return null; }
/// <summary> /// Get the source type for source id, by aplpying filter, since more than one source may be on same id, but always from different type. /// </summary> public SourceTypeEnum? GetSourceTypeFlags(ComponentId sourceId, SourceTypeEnum? filter) { SourceInfo? info = GetSourceInfo(sourceId, filter); if (info.HasValue) { return info.Value.SourceType; } return null; }
private static double CalculateModulator(SourceTypeEnum s, TransformEnum t, DirectionEnum d, PolarityEnum p, int value, int min, int max) { double output = 0; int i; value = value - min; max = max - min; if (d == DirectionEnum.MaxToMin) value = max - value; switch (s) { case SourceTypeEnum.Linear: output = value / max; break; case SourceTypeEnum.Concave: i = 127 - value; output = -(20.0 / 96.0) * Math.Log10((i * i) / (double)(max * max)); break; case SourceTypeEnum.Convex: i = value; output = 1 + (20.0 / 96.0) * Math.Log10((i * i) / (double)(max * max)); break; case SourceTypeEnum.Switch: if (value <= (max / 2)) output = 0; else output = 1; break; } if (p == PolarityEnum.Bipolar) output = (output * 2) - 1; if (t == TransformEnum.AbsoluteValue) output = Math.Abs(output); return output; }
/// <summary> /// /// </summary> public List<SourceInfo> SearchSources(SourceTypeEnum? filteringSourceType, bool partialMatch) { List<SourceInfo> result = new List<SourceInfo>(); lock (this) { foreach(SourceInfo source in _sources) { if (source.MatchesSearchCritera(filteringSourceType, partialMatch)) { result.Add(source); } } } return result; }
/// <summary> /// /// </summary> public bool UnRegister(SourceTypeEnum? sourceType, TransportInfo info) { lock (this) { for (int i = _sources.Count - 1; i >= 0; i--) { if (_sources[i].ComponentId == info.OriginalSenderId.Value.Id) { if (sourceType.HasValue == false || sourceType.Value == _sources[i].SourceType) { _sources.RemoveAt(i); } } } } return true; }
public EventItem(SourceEnum source, SourceTypeEnum sourceType, string data) { Data = data; Source = source; SourceType = sourceType; }
/// <summary> /// Constructor. /// </summary> public SourceInfo(ComponentId componentId, SourceTypeEnum sourceType) { _componentId = componentId; _transportInfo = null; _sourceType = sourceType; }
public SortedDictionary<int, List<ComponentId>> GetCompatibleOrderExecutionSources(ComponentId dataSourceId, Symbol symbol, SourceTypeEnum sourceType) { SortedDictionary<int, List<ComponentId>> result = new SortedDictionary<int, List<ComponentId>>(); if (symbol.IsEmpty || dataSourceId.IsEmpty) { return result; } List<ComponentId> candidatesSources = GetSources(sourceType, false); foreach (ComponentId id in candidatesSources) { int compatibilityLevel = 0; bool compatible = false; SourceTypeEnum? type = GetSourceTypeFlags(id, SourceTypeEnum.OrderExecution); if (type.HasValue == false) { continue; } type = type & SourceTypeEnum.BackTesting; if (type == SourceTypeEnum.BackTesting) { compatibilityLevel = 1; compatible = true; } else { compatible = IsDataSourceSymbolCompatible(id, dataSourceId, symbol, out compatibilityLevel); } // If componentId has not matched any continue condition, remote it from list. if (compatible) { if (result.ContainsKey(compatibilityLevel) == false) { result[compatibilityLevel] = new List<ComponentId>(); } result[compatibilityLevel].Add(id); } } return result; }
/// <summary> /// Constructor. /// </summary> public SourceInfo(SourceTypeEnum sourceType, TransportInfo info) { _sourceType = sourceType; _transportInfo = info; _componentId = _transportInfo.OriginalSenderId.Value.Id; }