public void Deconstruct(
     out ITypedSerializer <T, TSerialized> serializer,
     out ITypedSerializer <T, TSerialized> deserializer)
 {
     serializer   = Serializer;
     deserializer = Deserializer;
 }
 public ChannelSerializerPair(
     ITypedSerializer <T, TSerialized> serializer,
     ITypedSerializer <T, TSerialized> deserializer)
 {
     // This is a safety check: typically serializer & deserializer aren't
     // thread-safe, and even though .WithSerializers doesn't use each one
     // of them concurrently, it won't be true anymore if you pass a single
     // instance here, which might cause way more complex downstream errors.
     if (serializer == deserializer)
     {
         throw new ArgumentOutOfRangeException(nameof(deserializer));
     }
     Serializer   = serializer;
     Deserializer = deserializer;
 }
Пример #3
0
 public TypedStreamMetadataStore(IReadStreamProvider readStreamProvider, IWriteStreamProvider writeStreamProvider, ITypedSerializer serializer)
 {
     if (readStreamProvider == null)
     {
         throw new ArgumentNullException(nameof(readStreamProvider));
     }
     if (writeStreamProvider == null)
     {
         throw new ArgumentNullException(nameof(writeStreamProvider));
     }
     if (serializer == null)
     {
         throw new ArgumentNullException(nameof(serializer));
     }
     ReadStreamProvider  = readStreamProvider;
     WriteStreamProvider = writeStreamProvider;
     Serializer          = serializer;
 }
 public void AddSerializer(ITypedSerializer serializer)
 {
     this.typedSerializer[serializer.TargetType] = serializer;
 }