/// <summary> /// Tries to find a content type writer for the provided accepted content types. /// </summary> /// <param name="accepted">Accepted content types processed in order.</param> /// <param name="handlerType">Type of handler processing the request.</param> /// <param name="dataType">Optional type of data returned by the handler.</param> /// <param name="writer">Writer to provide.</param> /// <returns>True if a writer was found for the accepted content types.</returns> public static bool TryGetContentTypeWriter(string[] accepted, Type handlerType, Type dataType, out IContentTypeWriter writer) { var contentTypes = accepted == null ? new[] { "?" } : accepted.Union(new[] { "?" }); writer = null; foreach (var contentType in contentTypes) { //var contentType = accept.Equals("*/*") ? (ConsiderWildCardContentTypeAs ?? "text/html") : accept; IList<IContentTypeHandler> contentHandlers; if (ContentTypeToHandlers.TryGetValue(contentType, out contentHandlers)) { foreach (var contentHandler in contentHandlers) { if (contentHandler.TryGetWriter(contentType, handlerType, dataType, out writer)) { break; } } } if (writer != null) { break; } } return writer != null; }
public bool TryGetWriter(string contentType, Type handlerType, Type dataType, out IContentTypeWriter writer) { contentType = (contentType.Contains("json") || contentType.Contains("javascript")) ? contentType : "application/json"; writer = new JsonContentWriter(contentType); return true; }
public bool TryGetWriter(string contentType, System.Type handlerType, System.Type dataType, out IContentTypeWriter writer) { writer = (typeof(FileTransmission).IsAssignableFrom(dataType)) ? new FileTransmissionWriter() : null; return writer != null; }
public bool TryGetWriter(string contentType, Type handlerType, Type dataType, out IContentTypeWriter writer) { writer = dataType == typeof(ReplaceTextInFile) ? new TextReplacementWriter(contentType) : null; return writer != null; }
public bool TryGetWriter(string contentType, Type handlerType, Type dataType, out IContentTypeWriter writer) { writer = dataType == typeof(ReplaceTextInFile) ? new TextReplacementWriter(contentType) : null; return(writer != null); }
public PageTypeElementParser(IContentTypeMapper mapper, IContentTypeWriter contentTypeWriter, IPackageReaderContext readerContext) { _mapper = mapper; _contentTypeWriter = contentTypeWriter; _readerContext = readerContext ?? NullPackageReaderContext.Instance; }
public PageTypeElementParser(IContentTypeMapper mapper, IContentTypeWriter contentTypeWriter, IPackageReaderContext readerContext) { _mapper = mapper; _contentTypeWriter = contentTypeWriter; _readerContext = readerContext ?? NullPackageReaderContext.Instance; }