public static bool FilterThreat(CyThreatMetaData threat, string[] classificationFilter, string[] subClassificationFilter, string[] nameFilter = null, string[] literalPathFilter = null, string[] globPathFilter = null, string[] regexPathFilter = null) { bool classificationFilterHasWildcard = false; if (classificationFilter != null) { classificationFilterHasWildcard = classificationFilter.Contains("*"); } bool sub_classificationFilterHasWildcard = false; if (subClassificationFilter != null) { sub_classificationFilterHasWildcard = subClassificationFilter.Contains("*"); } bool includeInResults = true; if ((null != classificationFilter) && (!classificationFilterHasWildcard)) { includeInResults &= classificationFilter.Contains(threat.classification, StringComparer.InvariantCultureIgnoreCase); } if ((includeInResults) && ((null != subClassificationFilter) && (!sub_classificationFilterHasWildcard))) { includeInResults &= subClassificationFilter.Contains(threat.sub_classification, StringComparer.InvariantCultureIgnoreCase); } if ((includeInResults) && (null != nameFilter)) { includeInResults &= nameFilter.Contains(threat.name, StringComparer.InvariantCultureIgnoreCase); } return(includeInResults); }
private async Task <object> Retrieve(CyThreatMetaData metadata) { return(await Connection.RequestThreatDevicesAsync(metadata)); }