BExIS.Dcm.CreateDatasetWizard.UsageHelper.HasUsagesWithSimpleType C# (CSharp) Method

HasUsagesWithSimpleType() public static method

public static HasUsagesWithSimpleType ( BaseUsage usage ) : bool
usage BaseUsage
return bool
        public static bool HasUsagesWithSimpleType(BaseUsage usage)
        {
            if (usage is MetadataPackageUsage)
            {
                MetadataPackageUsage mpu = (MetadataPackageUsage)usage;

                foreach (BaseUsage childUsage in mpu.MetadataPackage.MetadataAttributeUsages)
                {
                    if(IsSimple(childUsage)) return true;
                }
            }

            if (usage is MetadataAttributeUsage)
            {
                MetadataAttributeUsage mau = (MetadataAttributeUsage)usage;
                if (mau.MetadataAttribute.Self is MetadataCompoundAttribute)
                {
                    foreach (BaseUsage childUsage in ((MetadataCompoundAttribute)mau.MetadataAttribute.Self).MetadataNestedAttributeUsages)
                    {
                       if(IsSimple(childUsage)) return true;
                    }
                }
            }

            if (usage is MetadataNestedAttributeUsage)
            {
                MetadataNestedAttributeUsage mnau = (MetadataNestedAttributeUsage)usage;
                if (mnau.Member.Self is MetadataCompoundAttribute)
                {
                    foreach (BaseUsage childUsage in ((MetadataCompoundAttribute)mnau.Member.Self).MetadataNestedAttributeUsages)
                    {
                        if (IsSimple(childUsage)) return true;
                    }
                }
            }

            return false;
        }