Esempio n. 1
0
        public static IGedcomRecord GedcomRecordFactory(GedcomLineCollection record)
        {
            var firstLine = record.GedcomLines.FirstOrDefault();

            if (firstLine == null)
            {
                return(null);
            }

            switch (GetRecordTypeFromTag(firstLine.Tag))
            {
            case GedcomRecordType.Header:
                return(new HeaderRecord(record));

            case GedcomRecordType.Submission:
                return(null);

            case GedcomRecordType.Family:
                return(null);

            case GedcomRecordType.Individual:
                return(null);

            case GedcomRecordType.Multimedia:
                return(null);

            case GedcomRecordType.Note:
                return(null);

            case GedcomRecordType.Repository:
                return(null);

            case GedcomRecordType.Source:
                return(null);

            case GedcomRecordType.Submitter:
                return(null);

            case GedcomRecordType.Trailer:
                return(null);

            case GedcomRecordType.Unknown:
                return(null);

            default:
                return(null);
            }
        }
Esempio n. 2
0
        public List <GedcomLineCollection> Read()
        {
            var document = new GedcomDocument();
            var records  = new List <GedcomLineCollection>();
            GedcomLineCollection activeRecord = new GedcomLineCollection();
            GedcomLine           line;

            while ((line = ReadLine()) != null)
            {
                if (line.Level == 0 && activeRecord.GedcomLines.Any())
                {
                    records.Add(new GedcomLineCollection(activeRecord));
                    activeRecord.Clear();
                }

                activeRecord.GedcomLines.Add(line);
            }

            return(records);
        }
Esempio n. 3
0
 public HeaderRecord(GedcomLineCollection lines)
 {
 }