internal HyperionSerializerSettings ApplySettings(HyperionSerializerSettings settings) => new HyperionSerializerSettings( PreserveObjectReferences.HasValue ? PreserveObjectReferences.Value : settings.PreserveObjectReferences, VersionTolerance.HasValue ? VersionTolerance.Value : settings.VersionTolerance, KnownTypesProvider ?? settings.KnownTypesProvider, PackageNameOverrides ?? settings.PackageNameOverrides );
public HyperionSerializer() { HyperionSerializerSettings hyperionSerializerSettings = HyperionSerializerSettings.Default; _serializer = new Serializer(new SerializerOptions(preserveObjectReferences: hyperionSerializerSettings.PreserveObjectReferences, versionTolerance: hyperionSerializerSettings.VersionTolerance, ignoreISerializable: hyperionSerializerSettings.IgnoreISerializable)); }
public void Should_Initialize_Defualt_Values() { HyperionSerializerSettings hyperionSerializerSettings = HyperionSerializerSettings.Default; Assert.True(hyperionSerializerSettings.PreserveObjectReferences); Assert.True(hyperionSerializerSettings.VersionTolerance); Assert.True(hyperionSerializerSettings.IgnoreISerializable); }
protected override void ConfigureApplicationContainer(TinyIoCContainer container) { base.ConfigureApplicationContainer(container); HyperionSerializerSettings hyperionSerializerSettings = HyperionSerializerSettings.Default; Serializer = new Serializer(new SerializerOptions(preserveObjectReferences: hyperionSerializerSettings.PreserveObjectReferences, versionTolerance: hyperionSerializerSettings.VersionTolerance, ignoreISerializable: hyperionSerializerSettings.IgnoreISerializable)); container.Register(Serializer); }
public void Should_Initialize_With_Given_Parameters() { var preserveObjectReferences = true; var versionTolerance = false; var ignoreISerializable = true; HyperionSerializerSettings hyperionSerializerSettings = new HyperionSerializerSettings(preserveObjectReferences, versionTolerance, ignoreISerializable); Assert.Equal(preserveObjectReferences, hyperionSerializerSettings.PreserveObjectReferences); Assert.Equal(versionTolerance, hyperionSerializerSettings.VersionTolerance); Assert.Equal(ignoreISerializable, hyperionSerializerSettings.IgnoreISerializable); }
public void Setup_should_be_converted_to_settings_correctly() { var setup = HyperionSerializerSetup.Empty .WithPreserveObjectReference(true) .WithKnownTypeProvider <NoKnownTypes>(); var settings = new HyperionSerializerSettings(false, false, typeof(DummyTypesProvider), new Func <string, string>[] { s => $"{s}.." }); var appliedSettings = setup.ApplySettings(settings); appliedSettings.PreserveObjectReferences.Should().BeTrue(); // overriden appliedSettings.VersionTolerance.Should().BeFalse(); // default appliedSettings.KnownTypesProvider.Should().Be(typeof(NoKnownTypes)); // overriden appliedSettings.PackageNameOverrides.Count().Should().Be(1); // from settings appliedSettings.PackageNameOverrides.First()("a").Should().Be("a.."); }
// This method gets called by the runtime. Use this method to add services to the container. // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940 public void ConfigureServices(IServiceCollection services) { services.AddSingleton <Serializer>(provider => { HyperionSerializerSettings hyperionSerializerSettings = HyperionSerializerSettings.Default; return(new Serializer(new SerializerOptions(preserveObjectReferences: hyperionSerializerSettings.PreserveObjectReferences, versionTolerance: hyperionSerializerSettings.VersionTolerance, ignoreISerializable: hyperionSerializerSettings.IgnoreISerializable))); }); // If using Kestrel: services.Configure <KestrelServerOptions>(options => { options.AllowSynchronousIO = true; }); // If using IIS: services.Configure <IISServerOptions>(options => { options.AllowSynchronousIO = true; }); }
public HyperionSerializerWrapper(ExtendedActorSystem system, HyperionSerializerSettings settings) : base(system) { _serializer = new HyperionSerializer(system, settings); }
public DebugHyperionSerializer(ExtendedActorSystem system, HyperionSerializerSettings settings) : base(system, settings) { }
/// <summary> /// Configures the cache manager to use the <code>Hyperion</code> based cache serializer. /// </summary> /// <param name="part">The configuration part.</param> /// <param name="serializerSettings">Hyperion serialization settings</param> /// <returns>The builder instance.</returns> public static ConfigurationBuilderCachePart WithHyperionSerializer(this ConfigurationBuilderCachePart part, HyperionSerializerSettings serializerSettings) { if (part == null) { throw new ArgumentNullException(nameof(part)); } return(part.WithSerializer(typeof(HyperionSerializer), serializerSettings)); }