Beispiel #1
0
        public override List <SecondObject> getSecondObjects(Object targetObject, SQLRepository repository)
        {
            Object targetElement = targetObject;
            List <SecondObject> sourceMethods  = new List <SecondObject>();
            SQLElement          realClassifier = null;
            List <SQLElement>   allClasses     = new List <SQLElement>();

            if (targetObject is SQLElement)
            {
                realClassifier = EAUtil.getClassifierElement(repository, (targetObject as SQLElement).ClassifierID);
            }
            else if (targetElement is SQLParameter)
            {
                if ((targetObject as SQLParameter).ClassifierID != "0" && (targetObject as SQLParameter).ClassifierID != "")
                {
                    try
                    {
                        realClassifier = repository.GetElementByID(int.Parse((targetObject as SQLParameter).ClassifierID));
                    }
                    catch
                    {
                        realClassifier = null;
                    }
                }
            }
            if (realClassifier != null)
            {
                allClasses = EAUtil.getBaseClasses(realClassifier);
                foreach (SQLElement actClass in allClasses)
                {
                    foreach (SQLMethod method in actClass.Methods)
                    {
                        SecondObject sObject = new SecondObject(method);
                        sourceMethods.Add(sObject);
                    }
                }
                sourceMethods.Sort(new EAObjectIComparer());
            }

            return(sourceMethods);
        }
        public override List <SecondObject> getSecondObjects(Object targetObject, SQLRepository repository)
        {
            Object targetElement = targetObject;
            List <SecondObject> sourceAttributes = new List <SecondObject>();
            SQLElement          realClassifier   = null;
            List <SQLElement>   allClasses       = new List <SQLElement>();

            if (targetObject is SQLElement)
            {
                SQLElement tempElement = targetObject as SQLElement;
                realClassifier = EAUtil.getClassifierElement(repository, tempElement.ClassifierID);
            }
            else if (targetElement is SQLParameter)
            {
                SQLParameter targetParameter = targetObject as SQLParameter;
                if (targetParameter.ClassifierID != "0" && targetParameter.ClassifierID != "")
                {
                    realClassifier = repository.GetElementByID(int.Parse((targetObject as EA.Parameter).ClassifierID));
                }
            }

            if (realClassifier != null)
            {
                allClasses = EAUtil.getBaseClasses(realClassifier);
                foreach (SQLElement actClass in allClasses)
                {
                    foreach (SQLAttribute attribute in actClass.Attributes)
                    {
                        SecondObject sObject = new SecondObject(attribute);
                        sourceAttributes.Add(sObject);
                    }
                }
                sourceAttributes.Sort(new EAObjectIComparer());
            }
            return(sourceAttributes);
        }