diff options
Diffstat (limited to 'internal/clients/query_regex.go')
| -rw-r--r-- | internal/clients/query_regex.go | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/internal/clients/query_regex.go b/internal/clients/query_regex.go new file mode 100644 index 0000000..9ccd233 --- /dev/null +++ b/internal/clients/query_regex.go @@ -0,0 +1,30 @@ +package clients + +import ( + "fmt" + + "github.com/mimecast/dtail/internal/mapr" +) + +func maprRegexForQuery(query *mapr.Query) string { + if query == nil { + return "." + } + + switch query.Table { + case "", ".": + return "." + case "*": + return "\\|MAPREDUCE:\\|" + default: + return fmt.Sprintf("\\|MAPREDUCE:%s\\|", query.Table) + } +} + +func maprRegexFromQueryString(queryStr string) (*mapr.Query, string, error) { + query, err := mapr.NewQuery(queryStr) + if err != nil { + return nil, "", err + } + return query, maprRegexForQuery(query), nil +} |
