Example #1
0
        public List <Node> GetAllHierarchies()
        {
            List <Node> result = new List <Node>();

            EAAPI.Collection searchResult = _repository.GetElementsByQuery("SpecificationPackages", "");

            if (searchResult.Count > 0)
            {
                for (short counter = 0; counter < searchResult.Count; counter++)
                {
                    EAAPI.Element packageElement = searchResult.GetAt(counter) as EAAPI.Element;

                    EAAPI.Package package = _repository.GetPackageByGuid(packageElement.ElementGUID);

                    CachedDataProvider eaCacheDataProvider = new CachedDataProvider(_repository);

                    EADM.Element specificationPackageElement = eaCacheDataProvider.GetCachedSpecification(package);

                    Node rootNode = new Node();

                    ConvertEaDataToSpecifNodeRecursively(specificationPackageElement, rootNode);

                    result = rootNode.Nodes;
                }
            }

            return(result);
        }
Example #2
0
 private void PrintPackage(EA.Package package)
 {
     Trace(package.Name);
     EA.Collection packages = package.Packages;
     for (short ip = 0; ip < packages.Count; ip++)
     {
         EA.Package child = (EA.Package)packages.GetAt(ip);
         PrintPackage(child);
     }
 }
Example #3
0
 public bool PrintModel()
 {
     if (Repository == null)
     {
         Trace(String.Format("Repository unavailable for pid {0}", m_ProcessID));
         return(false);
     }
     Trace(String.Format("Target repository process pid {0}", m_ProcessID));
     EA.Collection packages = Repository.Models;
     for (short ip = 0; ip < packages.Count; ip++)
     {
         EA.Package child = (EA.Package)packages.GetAt(ip);
         PrintPackage(child);
     }
     return(true);
 }
Example #4
0
        private Dictionary <String, EAAPI.Element> ConvertEAElementsToDictionary(EAAPI.Collection eaElements)
        {
            Dictionary <String, EAAPI.Element> dicElements = new Dictionary <string, EAAPI.Element>();

            for (short nIndex = 0; nIndex < eaElements.Count; nIndex++)
            {
                EAAPI.Element element = (EAAPI.Element)eaElements.GetAt(nIndex);

                if (false == dicElements.ContainsKey(element.Alias))
                {
                    dicElements.Add(element.Alias, element);
                }
            }

            return(dicElements);
        }