public Add_Metadata_File_ReaderWriter ( |
||
New_ReaderWriter | New metadata file reader/writer configuration | |
리턴 | void |
private static void read_metadata_file_readerwriter_config(XmlReader ReaderXml, Metadata_Configuration Config ) { Metadata_File_ReaderWriter_Config returnValue = new Metadata_File_ReaderWriter_Config(); ReaderXml.Read(); // Move to and save the basic attributes if (ReaderXml.MoveToAttribute("mdtype")) { switch (ReaderXml.Value.ToUpper()) { case "EAD": returnValue.MD_Type = Metadata_File_Type_Enum.EAD; break; case "DC": returnValue.MD_Type = Metadata_File_Type_Enum.DC; break; case "MARC21": returnValue.MD_Type = Metadata_File_Type_Enum.MARC21; break; case "MARCXML": returnValue.MD_Type = Metadata_File_Type_Enum.MARCXML; break; case "METS": returnValue.MD_Type = Metadata_File_Type_Enum.METS; break; case "MODS": returnValue.MD_Type = Metadata_File_Type_Enum.MODS; break; case "OTHER": returnValue.MD_Type = Metadata_File_Type_Enum.OTHER; if (ReaderXml.MoveToAttribute("othermdtype")) returnValue.Other_MD_Type = ReaderXml.Value; break; } } if (ReaderXml.MoveToAttribute("label")) returnValue.Label = ReaderXml.Value; if (ReaderXml.MoveToAttribute("namespace")) returnValue.Code_Namespace = ReaderXml.Value; if (ReaderXml.MoveToAttribute("class")) returnValue.Code_Class = ReaderXml.Value; if (ReaderXml.MoveToAttribute("assembly")) returnValue.Code_Assembly = ReaderXml.Value; if ((ReaderXml.MoveToAttribute("canRead")) && (ReaderXml.Value.ToLower() == "false")) { returnValue.canRead = false; } if ((ReaderXml.MoveToAttribute("canWrite")) && (ReaderXml.Value.ToLower() == "false")) { returnValue.canWrite = false; } while (ReaderXml.Read()) { if ((ReaderXml.NodeType == XmlNodeType.Element) && (ReaderXml.Name.ToLower() == "option")) { string key = String.Empty; string value = String.Empty; if (ReaderXml.MoveToAttribute("key")) key = ReaderXml.Value; if (ReaderXml.MoveToAttribute("value")) value = ReaderXml.Value; if ((key.Length > 0) && (value.Length > 0)) returnValue.Add_Option(key, value); } } Config.Add_Metadata_File_ReaderWriter(returnValue); }