/// <summary>
        /// Registers object Type transformation from dangerous (massive) object to safe (reduced) object
        /// </summary>
        public static ISetupSerializationBuilder RegisterObjectTransformation<T>(this ISetupSerializationBuilder setupBuilder, Func<T, object> transformer)
        {
            if (transformer == null)
                throw new ArgumentNullException(nameof(transformer));

            var original = ConfigurationItemFactory.Default.ObjectTypeTransformer;
            ConfigurationItemFactory.Default.ObjectTypeTransformer = new ObjectTypeTransformation<T>(transformer, original);
            return setupBuilder;
        }
コード例 #2
0
        /// <summary>
        /// Registers object Type transformation from dangerous (massive) object to safe (reduced) object
        /// </summary>
        public static ISetupSerializationBuilder RegisterObjectTransformation <T>(this ISetupSerializationBuilder setupBuilder, Func <T, object> transformer)
        {
            if (transformer == null)
            {
                throw new ArgumentNullException(nameof(transformer));
            }

            var original = setupBuilder.LogFactory.ServiceRepository.GetService <IObjectTypeTransformer>();

            setupBuilder.LogFactory.ServiceRepository.RegisterObjectTypeTransformer(new ObjectTypeTransformation <T>(transformer, original));
            return(setupBuilder);
        }
 /// <summary>
 /// Overrides the active <see cref="IValueFormatter"/> with a new custom implementation
 /// </summary>
 public static ISetupSerializationBuilder RegisterValueFormatter(this ISetupSerializationBuilder setupBuilder, IValueFormatter valueFormatter)
 {
     ConfigurationItemFactory.Default.ValueFormatter = valueFormatter ?? NLog.MessageTemplates.ValueFormatter.Instance;
     return setupBuilder;
 }
 /// <summary>
 /// Overrides the active <see cref="IJsonConverter"/> with a new custom implementation
 /// </summary>
 public static ISetupSerializationBuilder RegisterJsonConverter(this ISetupSerializationBuilder setupBuilder, IJsonConverter jsonConverter)
 {
     ConfigurationItemFactory.Default.JsonConverter = jsonConverter ?? NLog.Targets.DefaultJsonSerializer.Instance;
     return setupBuilder;
 }
コード例 #5
0
 /// <summary>
 /// Overrides the active <see cref="IValueFormatter"/> with a new custom implementation
 /// </summary>
 public static ISetupSerializationBuilder RegisterValueFormatter(this ISetupSerializationBuilder setupBuilder, IValueFormatter valueFormatter)
 {
     setupBuilder.LogFactory.ServiceRepository.RegisterValueFormatter(valueFormatter ?? new MessageTemplates.ValueFormatter(setupBuilder.LogFactory.ServiceRepository));
     return(setupBuilder);
 }
コード例 #6
0
 /// <summary>
 /// Overrides the active <see cref="IJsonConverter"/> with a new custom implementation
 /// </summary>
 public static ISetupSerializationBuilder RegisterJsonConverter(this ISetupSerializationBuilder setupBuilder, IJsonConverter jsonConverter)
 {
     setupBuilder.LogFactory.ServiceRepository.RegisterJsonConverter(jsonConverter ?? new NLog.Targets.DefaultJsonSerializer(setupBuilder.LogFactory.ServiceRepository));
     return(setupBuilder);
 }