Exemplo n.º 1
0
    private static void AddDocument(string[] attributes, string cmd)
    {
        Document textDocument;
        switch (cmd)
        {
            case "AddTextDocument":
                textDocument = new TextDocument();
                break;
            case "AddPDFDocument":
                textDocument = new PDFDocument();
                break;
            case "AddWordDocument":
                textDocument = new WordDocument();
                break;
            case "AddExcelDocument":
                textDocument = new ExcelDocument();
                break;
            case "AddAudioDocument":
                textDocument = new AudioDocument();
                break;
            case "AddVideoDocument":
                textDocument = new VideoDocument();
                break;
            default:
                textDocument = new TextDocument();
                break;
        }

        if (attributes.Length > 0)
        {
            IList<KeyValuePair<string, object>> attrbList = new List<KeyValuePair<string, object>>();
            foreach (var attribute in attributes)
            {
                string[] attrPair = attribute.Split(new char[] { '=' }, StringSplitOptions.RemoveEmptyEntries);
                attrbList.Add(new KeyValuePair<string, object>(attrPair[0], attrPair[1] as object));
            }
            textDocument.SaveAllProperties(attrbList);
            allDocuments.Add(textDocument);
            Console.WriteLine("Document added: {0}", textDocument.Name);
        }
        else
        {
            Console.WriteLine("Document has no name");
        }
    }