/// <summary> /// Ctor /// </summary> /// <param name="writers">inject with all possible writers</param> public DataWriterProvider(IEnumerable <IDataWriter> writers) { if (writers != null) { foreach (IDataWriter writer in writers) { if (this.DefaultWriter == null) { // TODO: decide less arbitrary way to choose default // without hardcoding value into IDataWriter this.DefaultWriter = writer; } if (!String.IsNullOrEmpty(writer.ContentType)) { this.WritersByMime[writer.ContentType] = writer; } if (!String.IsNullOrEmpty(writer.ContentType)) { string ext = DataWriterProvider.NormalizeExtension(writer.FileExtension); this.WritersByExt[ext] = writer; } } } }
public DataWriterProvider(IEnumerable <IDataWriter> writers) { if (writers == null) { return; } foreach (IDataWriter writer in writers) { if (DefaultWriter == null) { DefaultWriter = writer; } if (!string.IsNullOrEmpty(writer.ContentType)) { WritersByMime[writer.ContentType] = writer; } if (!string.IsNullOrEmpty(writer.ContentType)) { WritersByExt[DataWriterProvider.NormalizeExtension(writer.FileExtension)] = writer; } } }
public IDataWriter Find(string extension) { extension = DataWriterProvider.NormalizeExtension(extension); if (this.WritersByExt.ContainsKey(extension)) { return(this.WritersByExt[extension]); } return(null); }
public DataWriterProvider(IEnumerable <IDataWriter> writers) { if (writers != null) { foreach (IDataWriter dataWriter in writers) { if (this.DefaultWriter == null) { this.DefaultWriter = dataWriter; } if (!string.IsNullOrEmpty(dataWriter.ContentType)) { this.WritersByMime[dataWriter.ContentType] = dataWriter; } if (!string.IsNullOrEmpty(dataWriter.ContentType)) { string key = DataWriterProvider.NormalizeExtension(dataWriter.FileExtension); this.WritersByExt[key] = dataWriter; } } } }
public IDataWriter Find(string extension) { extension = DataWriterProvider.NormalizeExtension(extension); return(WritersByExt.ContainsKey(extension) ? WritersByExt[extension] : null); }