| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- /**
- * Namespace: System.Web
- * Class: EnumCheckAssembly
- *
- * Author: Gaurav Vaish
- * Contact: <[email protected]>
- * Status: 100%
- *
- * (C) Gaurav Vaish (2002)
- */
- using System;
- using System.IO;
- using System.Xml;
- using System.Collections;
- using System.Reflection;
- namespace Mono.Enumerations
- {
- public class EnumCheckAssemblyCollection: IEnumerable
- {
- public string ConfigFile = "assemblies.xml";
-
- private ArrayList assemblyList = new ArrayList();
- public EnumCheckAssemblyCollection()
- {
- }
- public void Parse()
- {
- Stream fStream;
- XmlReader reader;
- XmlDocument document;
- string url;
- fStream = new FileStream(ConfigFile, FileMode.Open, FileAccess.Read, FileShare.Read);
- reader = new XmlTextReader(fStream);
- document = new XmlDocument();
- document.Load(reader);
- if(document.DocumentElement != null)
- {
- if(document.DocumentElement.LocalName == "assemblies")
- {
- foreach(XmlNode pathNode in document.DocumentElement)
- {
- if(pathNode.NodeType == XmlNodeType.Element && pathNode.LocalName=="path")
- {
- url = pathNode.Attributes["url"].Value;
- while(url.EndsWith("\\") || url.EndsWith("/"))
- {
- url = url.Substring(0, url.Length - 1);
- }
- if(url == null || url.Length == 0)
- {
- continue;
- }
- foreach(XmlNode assemblyNode in pathNode.ChildNodes)
- {
- if(assemblyNode.LocalName == "assembly")
- {
- assemblyList.Add(url + "\\" + assemblyNode.Attributes["file"].Value);
- }
- }
- }
- }
- }
- }
- fStream.Close();
- }
- public IEnumerator GetEnumerator()
- {
- return assemblyList.GetEnumerator();
- }
- }
- }
|