public DecodedFileName DecodeFilename(string filename) { DecodedFileName decoded = new DecodedFileName(); decoded.Filename = filename; string strippedFilename = StripFileNameExtension(filename); string[] headerData; headerData = strippedFilename.Split('_'); if (headerData.Length == 1) { headerData = splitCamelCaseStrings(strippedFilename); } string key = headerData[0]; if (typeLookup.ContainsKey(key)) { decoded.HeaderType = typeLookup[key]; } else { decoded.HeaderType = typeof(DefaultHeader); } decoded.HeaderData = headerData; return(decoded); }
private BaseHeader instantiateHeader(DecodedFileName decodedFileName) { return((BaseHeader)Activator.CreateInstance(decodedFileName.HeaderType, decodedFileName)); }