diff --git a/TimberWinR.ServiceHost/sampleconf.xml b/TimberWinR.ServiceHost/sampleconf.xml
index cd88039..33f0f16 100644
--- a/TimberWinR.ServiceHost/sampleconf.xml
+++ b/TimberWinR.ServiceHost/sampleconf.xml
@@ -19,11 +19,9 @@
rn_%{RecordNumber}
bar
-
MMM d HH:mm:ss
MMM dd HH:mm:ss
diff --git a/TimberWinR/Filters/MutateFilter.cs b/TimberWinR/Filters/MutateFilter.cs
index 916ecf6..7bfdc2a 100644
--- a/TimberWinR/Filters/MutateFilter.cs
+++ b/TimberWinR/Filters/MutateFilter.cs
@@ -114,37 +114,13 @@ namespace TimberWinR.Filters
public override void Apply(JObject json)
{
- json = RenameProperty(json, name => name == OldName ? NewName : name) as JObject;
- }
-
- private static JToken RenameProperty(JToken json, Dictionary map)
- {
- return RenameProperty(json, name => map.ContainsKey(name) ? map[name] : name);
- }
-
- private static JToken RenameProperty(JToken json, Func map)
- {
- JProperty prop = json as JProperty;
- if (prop != null)
+ JToken token = json[OldName];
+ if (token != null)
{
- return new JProperty(map(prop.Name), RenameProperty(prop.Value, map));
- }
-
- JArray arr = json as JArray;
- if (arr != null)
- {
- var cont = arr.Select(el => RenameProperty(el, map));
- return new JArray(cont);
- }
-
- JObject o = json as JObject;
- if (o != null)
- {
- var cont = o.Properties().Select(el => RenameProperty(el, map));
- return new JObject(cont);
- }
- return json;
- }
+ json.Remove(OldName);
+ json.Add(NewName, token);
+ }
+ }
}
}
}