Skip to content

Commit ec07ed9

Browse files
committed
Minor fix to retrival with null Filter
1 parent dc8133a commit ec07ed9

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

resources/retrieval.go

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,8 @@ func fetchRelationData(table *client.Table) func(ctx context.Context, meta schem
176176
return func(ctx context.Context, meta schema.ClientMeta, parent *schema.Resource, res chan<- interface{}) error {
177177
client := meta.(*client.Client)
178178

179+
// grab the parent row and use it to extract the
180+
// columns that go into the child relation
179181
row := parent.Item.(map[string]any)
180182

181183
client.Logger.Debug().Str("table", table.Name).Str("row", format.ToJSON(row)).Msg("fetching data from parent...")
@@ -185,6 +187,19 @@ func fetchRelationData(table *client.Table) func(ctx context.Context, meta schem
185187
accepted = false
186188
env := map[string]any{
187189
"_": row,
190+
// // custom string manipulation functions here
191+
// "toUpper": strings.ToUpper,
192+
// "toLower": strings.ToLower,
193+
// "trimSpace": strings.TrimSpace,
194+
// "trimLeft": strings.TrimLeft,
195+
// "trimRight": strings.TrimRight,
196+
// "trimBoth": strings.Trim,
197+
// "trimPrefix": strings.TrimPrefix,
198+
// "trimSuffix": strings.TrimSuffix,
199+
// "replace": strings.Replace,
200+
// "replaceAll": strings.ReplaceAll,
201+
// "split": strings.Split,
202+
// "repeat": strings.Repeat,
188203
}
189204

190205
if output, err := expr.Run(table.Evaluator, env); err != nil {
@@ -196,7 +211,11 @@ func fetchRelationData(table *client.Table) func(ctx context.Context, meta schem
196211
}
197212

198213
if accepted {
199-
client.Logger.Debug().Str("filter", *table.Filter).Str("row", format.ToJSON(row)).Msg("accepting row")
214+
if table.Filter != nil && table.Evaluator != nil {
215+
client.Logger.Debug().Str("filter", *table.Filter).Str("row", format.ToJSON(row)).Msg("accepting row")
216+
} else {
217+
client.Logger.Debug().Str("row", format.ToJSON(row)).Msg("passing on row")
218+
}
200219
res <- row
201220
} else {
202221
client.Logger.Debug().Str("filter", *table.Filter).Str("row", format.ToJSON(row)).Msg("rejecting row")

0 commit comments

Comments
 (0)