/// <summary> /// Do the interferring /// </summary> /// <param name="sender">a repo</param> /// <param name="e">ignored</param> void Repo_ConfigurationChanged(object sender, EventArgs e) { var repo = sender as ILoggerRepository; repo.RendererMap.Put(typeof(object), JsonObjectRenderer.Default); repo.RendererMap.Put(typeof(Exception), new DefaultRenderer()); foreach (var appender in repo.GetAppenders()) { PatternLayout layout = null; if (appender is AppenderSkeleton) { var anylayout = ((AppenderSkeleton)appender).Layout; if (anylayout == null) { ((AppenderSkeleton)appender).Layout = layout = new SerializedLayout(); } else { layout = ((AppenderSkeleton)appender).Layout as PatternLayout; } } else { var prop = appender.GetType().GetProperty("Layout"); if (prop != null && typeof(ILayout).IsAssignableFrom(prop.PropertyType) && prop.GetIndexParameters().Length == 0) { var anylayout = prop.GetValue(appender, null); if (anylayout == null) { ((AppenderSkeleton)appender).Layout = layout = new SerializedLayout(); } else if (prop.CanWrite) { prop.SetValue(appender, layout = new SerializedLayout(), null); } } else { layout = null; } } if (layout == null) { continue; } layout.AddConverter(new ConverterInfo() { Name = "json", Type = typeof(JsonPatternConverter) }); layout.ActivateOptions(); } }
protected OlapAxisLayoutSerializer() { EmptyDataString = string.Empty; CurrencyFormatString = OlapControl.__CurrencyFormatString; AxesLayout = new SerializedLayout(); SizeMode = SizeMode.Increase; _analysisType = AnalysisType.Grid; _AnalysisTypeWasset = false; SuppressSaveOLAPSlices = false; }
internal virtual void LoadFrom(OlapControl grid) { DebugLogging.WriteLine("OlapAxisLayoutSerializer.LoadFrom"); EmptyDataString = grid.FEmptyDataString; CurrencyFormatString = grid.FCurrencyFormatString; grid.RefreshChartsType(); ChartsType = grid.ChartsType; TrendSerialize(grid); AxesLayout = new SerializedLayout(); AxesLayout.Init(grid); var lh = new List <SerializedHierarchy>(); foreach (var d in grid.Dimensions) { foreach (var h in d.Hierarchies) { lh.Add(new SerializedHierarchy(h)); } } Hierarchies = lh.ToArray(); if (grid.FCellSet.fComments.Count > 0) { var ca = new List <SerializedICubeAddress>(grid.FCellSet.fComments.Count); var cs = new List <string>(grid.FCellSet.fComments.Count); foreach (var k in grid.FCellSet.fComments) { ca.Add(new SerializedICubeAddress(k.Key)); cs.Add(k.Value); } CommentAddresses = ca.ToArray(); CommentStrings = cs.ToArray(); } SaveCubeData(grid); }