/// <summary> /// This method returns the entity items from the CSV data file collection. /// </summary> /// <typeparam name="T">The transit entity type.</typeparam> /// <param name="tType">The transit file type.</param> /// <param name="headersRequired">The required headers.</param> /// <param name="conv">The conversion function.</param> /// <returns>Returns an amalgamated collection of entities.</returns> private IEnumerable <T> TransitEntityEnum <T>( TransitFileType tType, IEnumerable <KeyValuePair <string, bool> > headers, Func <CSVRowItem, T> conv) { if (!HasTransitData(tType)) { yield break; } using (Stream data = mData.GetStream(tType)) { if (data == null) { throw new ArgumentNullException(); } CSVStreamOptions opts = new CSVStreamOptions(Encoding.UTF8, ',', true, false, null, null); CSVStreamEnumerator <T> item = new CSVStreamEnumerator <T>(data, conv, opts); foreach (var entity in item) { yield return(entity); } } }
public override bool HasStream(TransitFileType type) { switch (type) { case TransitFileType.Calendar_Dates: return(HasCalendarDates); case TransitFileType.Fare_Attributes: return(HasFareAttributes); case TransitFileType.Fare_Rules: return(HasFareRules); case TransitFileType.Frequencies: return(HasFrequencies); case TransitFileType.Transfers: return(HasTransfers); case TransitFileType.Shapes: return(HasShapes); default: return(true); } }
/// <summary> /// This function checks whether there is valid data for the specific transit type. /// </summary> /// <param name="tType">The transit type.</param> /// <returns>Returns true if there is valid data.</returns> private bool HasTransitData(TransitFileType tType) { return(mData.HasStream(tType)); }
public virtual bool HasStream(TransitFileType type) { return(mStreams.ContainsKey(type)); }
public Stream GetStream(TransitFileType type) { return(mStreams[type]()); }
public virtual bool HasStream(TransitFileType type) { return mStreams.ContainsKey(type); }
public Stream GetStream(TransitFileType type) { return mStreams[type](); }
public override bool HasStream(TransitFileType type) { switch(type) { case TransitFileType.Calendar_Dates: return HasCalendarDates; case TransitFileType.Fare_Attributes: return HasFareAttributes; case TransitFileType.Fare_Rules: return HasFareRules; case TransitFileType.Frequencies: return HasFrequencies; case TransitFileType.Transfers: return HasTransfers; case TransitFileType.Shapes: return HasShapes; default: return true; } }