public static string GetFilterSvcToString( RegressionEnvironment env, string statementName) { var statementSPI = (EPStatementSPI) env.Statement(statementName); var filterServiceSPI = (FilterServiceSPI) statementSPI.StatementContext.FilterService; var set = filterServiceSPI.Get(Collections.SingletonSet(statementSPI.StatementId)); var sorted = new SortedSet<string>(); foreach (var typeEntry in set) { foreach (var filterItems in typeEntry.Value.Values) { foreach (var itemArray in filterItems) { var type = SupportEventTypeHelper.GetEventTypeForTypeId(statementSPI.StatementContext, typeEntry.Key); var builder = new StringBuilder(); builder.Append(type.Name).Append("("); var delimiter = ""; foreach (var item in itemArray) { builder.Append(delimiter); builder.Append(item.Name); builder.Append(item.Op.GetTextualOp()); builder.Append(item.OptionalValue); delimiter = ","; } builder.Append(")"); sorted.Add(builder.ToString()); } } } return sorted.RenderAny(); }
public static void AssertFilterSvcNone( EPStatement statement, string eventTypeName) { var set = GetFilterSvcForStatement(statement); var typeId = SupportEventTypeHelper.GetTypeIdForName(((EPStatementSPI) statement).StatementContext, eventTypeName); Assert.IsFalse(set.ContainsKey(typeId)); }
public static int GetFilterSvcCount( EPStatement statement, string eventTypeName) { var statementSPI = (EPStatementSPI) statement; var typeId = SupportEventTypeHelper.GetTypeIdForName(statementSPI.StatementContext, eventTypeName); var filterServiceSPI = (FilterServiceSPI) statementSPI.StatementContext.FilterService; var set = filterServiceSPI.Get(Collections.SingletonSet(statementSPI.StatementId)); foreach (var entry in set) { if (entry.Key.Equals(typeId)) { var list = entry.Value.Get(statementSPI.StatementId); return list.Count; } } return 0; }
public static FilterItem[][] GetFilterSvcMultiAssertNonEmpty( EPStatement statement, string eventTypeName) { var set = GetFilterSvcForStatement(statement); var spi = (EPStatementSPI) statement; var typeId = SupportEventTypeHelper.GetTypeIdForName(spi.StatementContext, eventTypeName); IDictionary<int, IList<FilterItem[]>> filters = null; foreach (var entry in set) { if (entry.Key.Equals(typeId)) { filters = entry.Value; } } Assert.IsNotNull(filters); Assert.IsFalse(filters.IsEmpty()); var @params = filters.Get(spi.StatementId); Assert.IsFalse(@params.IsEmpty()); return @params.ToArray(); }