public CustomContractResolver( bool ignoreEmptyCollections, bool ignoreFalse, bool includeObsoletes, IReadOnlyDictionary <Type, List <string> > ignoredMembers, IReadOnlyList <string> ignoredByNameMembers, IReadOnlyList <Type> ignoredTypes, IReadOnlyList <Func <Exception, bool> > ignoreMembersThatThrow, IReadOnlyDictionary <Type, List <Func <object, bool> > > ignoredInstances, SharedScrubber scrubber) { Guard.AgainstNull(ignoredMembers, nameof(ignoredMembers)); Guard.AgainstNull(ignoredTypes, nameof(ignoredTypes)); Guard.AgainstNull(ignoreMembersThatThrow, nameof(ignoreMembersThatThrow)); this.ignoreEmptyCollections = ignoreEmptyCollections; this.ignoreFalse = ignoreFalse; this.includeObsoletes = includeObsoletes; this.ignoredMembers = ignoredMembers; this.ignoredByNameMembers = ignoredByNameMembers; this.ignoredTypes = ignoredTypes; this.ignoreMembersThatThrow = ignoreMembersThatThrow; this.ignoredInstances = ignoredInstances; this.scrubber = scrubber; IgnoreSerializableInterface = true; }
public static void Init( Func <string, Exception> exceptionBuilder, Func <Guid, int> guidIntOrNext, Func <DateTime, int> dateTimeIntOrNext, Func <DateTimeOffset, int> dateTimeOffsetIntOrNext) { InnerVerifier.exceptionBuilder = exceptionBuilder; SharedScrubber.SetIntOrNext(guidIntOrNext, dateTimeIntOrNext, dateTimeOffsetIntOrNext); }
public JsonSerializerSettings BuildSettings() { #region defaultSerialization var settings = new JsonSerializerSettings { Formatting = Formatting.Indented, ReferenceLoopHandling = ReferenceLoopHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore }; #endregion settings.SerializationBinder = new ShortNameBinder(); var scrubber = new SharedScrubber(scrubGuids, scrubInlineGuids, scrubDateTimes, settings); settings.ContractResolver = new CustomContractResolver( ignoreEmptyCollections, ignoreFalse, includeObsoletes, ignoredMembers, ignoredByNameMembers, ignoreMembersWithType, ignoreMembersThatThrow, ignoredInstances, scrubber); var converters = settings.Converters; converters.Add(new StringConverter(scrubber)); converters.Add(new GuidConverter(scrubber)); converters.Add(new DateTimeConverter(scrubber)); converters.Add(new DateTimeOffsetConverter(scrubber)); converters.Add(new StringEnumConverter()); converters.Add(new ExpressionConverter()); converters.Add(new DelegateConverter()); converters.Add(new TypeJsonConverter()); foreach (var extraSetting in ExtraSettings) { extraSetting(settings); } return(settings); }
public StringBuilderConverter(SharedScrubber sharedScrubber) { this.sharedScrubber = sharedScrubber; }
public DateTimeOffsetConverter(SharedScrubber scrubber) { this.scrubber = scrubber; }
public TextWriterConverter(SharedScrubber sharedScrubber) { this.sharedScrubber = sharedScrubber; }
public DateConverter(SharedScrubber scrubber) { this.scrubber = scrubber; }
public GuidConverter(SharedScrubber scrubber) { this.scrubber = scrubber; }