@@ -274,13 +274,39 @@ func resourceSumologicSourceRead(d *schema.ResourceData, source Source) {
274274 d .Set ("use_autoline_matching" , source .UseAutolineMatching )
275275 d .Set ("manual_prefix_regexp" , source .ManualPrefixRegexp )
276276 d .Set ("force_timezone" , source .ForceTimeZone )
277- d .Set ("default_date_formats" , source .DefaultDateFormats )
278- d .Set ("filters" , source .Filters )
277+ d .Set ("default_date_formats" , flattenDateFormats ( source .DefaultDateFormats ) )
278+ d .Set ("filters" , flattenFilters ( source .Filters ) )
279279 d .Set ("cutoff_timestamp" , source .CutoffTimestamp )
280280 d .Set ("cutoff_relative_time" , source .CutoffRelativeTime )
281281 d .Set ("fields" , source .Fields )
282282}
283283
284+ func flattenDateFormats (v []DefaultDateFormat ) []map [string ]interface {} {
285+ var defaultDateDormats []map [string ]interface {}
286+ for _ , d := range v {
287+ defaultDateFormat := map [string ]interface {}{
288+ "format" : d .Format ,
289+ "locator" : d .Locator ,
290+ }
291+ defaultDateDormats = append (defaultDateDormats , defaultDateFormat )
292+ }
293+ return defaultDateDormats
294+ }
295+
296+ func flattenFilters (v []Filter ) []map [string ]interface {} {
297+ var filters []map [string ]interface {}
298+ for _ , d := range v {
299+ filter := map [string ]interface {}{
300+ "name" : d .Name ,
301+ "filter_type" : d .FilterType ,
302+ "regexp" : d .Regexp ,
303+ "mask" : d .Mask ,
304+ }
305+ filters = append (filters , filter )
306+ }
307+ return filters
308+ }
309+
284310func getDefaultDateFormats (d * schema.ResourceData ) []DefaultDateFormat {
285311
286312 rawDefaultDateFormatsConfig := d .Get ("default_date_formats" ).([]interface {})
0 commit comments