1 //---------------------------------------------------------------------
2 // <copyright file="EdmToObjectNamespaceMap.cs" company="Microsoft">
3 // Copyright (c) Microsoft Corporation. All rights reserved.
7 // @backupOwner Microsoft
8 //---------------------------------------------------------------------
10 using System.Collections.Generic;
13 using System.Data.Entity.Design.Common;
15 namespace System.Data.Entity.Design
18 /// The class to hold the map entries for the mapping between Edm Namespace and the Object Namespace
20 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
21 public class EdmToObjectNamespaceMap
23 private Dictionary<string, string> _map = new Dictionary<string, string>();
26 /// this is just to keep this class from being creatable outside of this assembly
28 internal EdmToObjectNamespaceMap()
32 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
33 public void Add(string edmNamespace, string objectNamespace)
35 EDesignUtil.CheckStringArgument(edmNamespace, "edmNamespace");
36 EDesignUtil.CheckArgumentNull(objectNamespace, "objectNamespace");
38 _map.Add(edmNamespace, objectNamespace);
41 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
42 public bool Contains(string edmNamespace)
44 return _map.ContainsKey(edmNamespace);
47 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
48 public ICollection<string> EdmNamespaces
50 get { return _map.Keys; }
53 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
54 public bool Remove(string edmNamespace)
56 return _map.Remove(edmNamespace);
59 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
60 public bool TryGetObjectNamespace(string edmNamespace, out string objectNamespace)
62 return _map.TryGetValue(edmNamespace, out objectNamespace);
65 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
66 public string this[string edmNamespace]
70 return _map[edmNamespace];
74 _map[edmNamespace] = value;
85 get { return _map.Count; }
88 internal Dictionary<string, string> AsDictionary()