Merge pull request #1404 from woodsb02/mono-route
[mono.git] / mcs / class / Microsoft.Build.Tasks / Microsoft.Build.Tasks.Deployment.ManifestUtilities / AssemblyReferenceCollection.cs
index edd345e69172be5c89c93e1b6535ddd6fe766f49..bc23cd23c915c2815036f82a7707df2dba46c252 100644 (file)
 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
-#if NET_2_0
 
 using System;
 using System.Collections;
+using System.Collections.Generic;
 using System.Runtime.InteropServices;
 using Microsoft.Build.Framework;
 
@@ -37,21 +37,29 @@ namespace Microsoft.Build.Tasks.Deployment.ManifestUtilities {
        [ComVisible (false)]
        public sealed class AssemblyReferenceCollection : IEnumerable {
        
-               int count;
+               List <AssemblyReference> list;
+
+               AssemblyReferenceCollection ()
+               {
+                       list = new List <AssemblyReference> ();
+               }
        
                public AssemblyReference Add (AssemblyReference assembly)
                {
-                       throw new NotImplementedException ();
+                       list.Add (assembly);
+                       return assembly;
                }
                
                public AssemblyReference Add (string path)
                {
-                       throw new NotImplementedException ();
+                       AssemblyReference ar = new AssemblyReference (path);
+                       list.Add (ar);
+                       return ar;
                }
                
                public void Clear ()
                {
-                       throw new NotImplementedException ();
+                       list.Clear ();
                }
                
                public AssemblyReference Find (AssemblyIdentity identity)
@@ -71,22 +79,21 @@ namespace Microsoft.Build.Tasks.Deployment.ManifestUtilities {
                
                public IEnumerator GetEnumerator ()
                {
-                       throw new NotImplementedException ();
+                       return list.GetEnumerator ();
                }
                
                public void Remove (AssemblyReference assemblyReference)
                {
-                       throw new NotImplementedException ();
+                       list.Remove (assemblyReference);
                }
                
                public int Count {
-                       get { return count; }
+                       get { return list.Count; }
                }
                
                public AssemblyReference this [int index] {
-                       get { return null; }
+                       get { return list [index]; }
                }
        }
 }
 
-#endif