Beispiel #1
0
        private Transaction ParseLine(string line)
        {
            var wordReader = WordReader.FromLine(line);

            if (!wordReader.HasNext())
            {
                throw new InvalidOperationException(string.Format("Invalid line: {0}", line));
            }

            switch (wordReader.Next())
            {
            case "AddEmp":
                return(AddEmp(line, wordReader));

            case "DelEmp":
                return(DelEmp(line, wordReader));

            case "TimeCard":
                return(TimeCard(line, wordReader));

            case "SalesReceipt":
                return(SalesReceipt(line, wordReader));

            case "ServiceCharge":
                return(ServiceCharge(line, wordReader));

            case "ChgEmp":
                return(ChangeEmployee(line, wordReader));

            case "PayDate":
                return(PayDate(line, wordReader));
            }
            throw new InvalidOperationException(string.Format("Cannot parse {0}", line));
        }