private static StatementRow GetRow(EPStatement statement) { string description = null; string hint = null; var hintDelimiter = ""; var priority = 0; IDictionary <string, string> tags = null; var drop = false; var annotations = statement.Annotations; foreach (var anno in annotations) { if (anno is HintAttribute hintAttribute) { if (hint == null) { hint = ""; } hint += hintDelimiter + hintAttribute.Value; hintDelimiter = ","; } else if (anno is TagAttribute tagAttribute) { if (tags == null) { tags = new Dictionary <string, string>(); } tags.Put(tagAttribute.Name, tagAttribute.Value); } else if (anno is PriorityAttribute priorityAttribute) { priority = priorityAttribute.Value; } else if (anno is DropAttribute) { drop = true; } else if (anno is DescriptionAttribute descriptionAttribute) { description = descriptionAttribute.Value; } } return(new StatementRow( statement.DeploymentId, statement.Name, (string)statement.GetProperty(StatementProperty.EPL), statement.UserObjectCompileTime, statement.UserObjectRuntime, description, hint, priority, drop, tags )); }