/// <summary>
        /// Adds an edge to this collection
        /// </summary>
        /// <param name="edgeID">The ID of the edge</param>
        /// <param name="edge">An object that implements the IOwlEdge interface</param>
        /// <exception cref="ArgumentNullException">The specified edge is a null reference or the specified edgeID is a null reference</exception>
        public void Add(string edgeID, IOwlEdge edge)
        {
            IOwlEdgeList edgeList = (IOwlEdgeList)_edgeMap[edgeID];

            if (edgeList == null)
            {
                edgeList         = new OwlEdgeList();
                _edgeMap[edgeID] = edgeList;
            }
            edgeList.Add(edge);
            _edges.Add(edge);
        }
 /// <summary>
 /// Returns a list of edges with the specified Edge ID
 /// </summary>
 public IOwlEdgeList this[string edgeID]
 {
     get
     {
         OwlEdgeList edgeList = (OwlEdgeList)_edgeMap[edgeID];
         if (edgeList != null)
         {
             return((IOwlEdgeList)edgeList);
         }
         else
         {
             return(null);
         }
     }
 }
 /// <summary>
 /// Initializes a new instance of the OwlEdgeCollection class.
 /// </summary>
 public OwlEdgeCollection()
 {
     _edgeMap = new Hashtable();
     _edgeIndexMap = new Hashtable();
     _edges = new OwlEdgeList();
 }
 /// <summary>
 /// Adds an edge to this collection
 /// </summary>
 /// <param name="edgeID">The ID of the edge</param>
 /// <param name="edge">An object that implements the IOwlEdge interface</param>
 /// <exception cref="ArgumentNullException">The specified edge is a null reference or the specified edgeID is a null reference</exception>
 public void Add(string edgeID, IOwlEdge edge)
 {
     IOwlEdgeList edgeList = (IOwlEdgeList)_edgeMap[edgeID];
     if(edgeList == null)
     {
         edgeList = new OwlEdgeList();
         _edgeMap[edgeID] = edgeList;
     }
     edgeList.Add(edge);
     _edges.Add(edge);
 }
 /// <summary>
 /// Initializes a new instance of the OwlEdgeCollection class.
 /// </summary>
 public OwlEdgeCollection()
 {
     _edgeMap      = new Hashtable();
     _edgeIndexMap = new Hashtable();
     _edges        = new OwlEdgeList();
 }