/// <inheritdoc /> /// <exception cref="T:System.ArgumentNullException"><paramref name="formatter"/> is <c>null</c></exception> public MessagePackMediaTypeFormatter(MessagePackMediaTypeFormatter formatter) : base(formatter) { if (formatter == null) { throw new ArgumentNullException(nameof(formatter)); } _options = formatter._options; _readableTypesCache = formatter._readableTypesCache; }
/// <summary> /// Constructor. /// </summary> /// <param name="options">Formatter options.</param> /// <param name="mediaTypes">Supported media types.</param> /// <exception cref="T:System.ArgumentNullException"> /// <paramref name="options" /> or <paramref name="mediaTypes" /> is <c>null</c>. /// </exception> public MessagePackMediaTypeFormatter(MessagePackSerializerOptions options, ICollection <string> mediaTypes) { if (mediaTypes == null) { throw new ArgumentNullException(nameof(mediaTypes)); } _options = options ?? throw new ArgumentNullException(nameof(options)); _readableTypesCache = new ReadableTypesCache(options.Resolver); foreach (var mediaType in mediaTypes) { SupportedMediaTypes.Add(MediaTypeHeaderValue.Parse(mediaType)); } }
/// <summary> /// Constructor. /// </summary> /// <param name="options">Formatter options.</param> /// <param name="mediaTypes">Supported media types.</param> /// <exception cref="T:System.ArgumentNullException"> /// <paramref name="options" /> or <paramref name="mediaTypes" /> is <c>null</c>. /// </exception> /// <exception cref="T:System.ArgumentException"><paramref name="mediaTypes" /> collection is empty.</exception> public MessagePackInputFormatter(MessagePackSerializerOptions options, ICollection <string> mediaTypes) { _options = options ?? throw new ArgumentNullException(nameof(options)); if (mediaTypes == null) { throw new ArgumentNullException(nameof(mediaTypes)); } if (mediaTypes.Count == 0) { throw new ArgumentException("Media type must be specified.", nameof(mediaTypes)); } _readableTypesCache = new ReadableTypesCache(options.Resolver); foreach (var mediaType in mediaTypes) { SupportedMediaTypes.Add(mediaType); } }