private void DoProcessConfigurationClass(ConfigurationClass configurationClass)
        {
            Attribute[] importAttributes = Attribute.GetCustomAttributes(configurationClass.ConfigurationClassType, typeof(ImportAttribute));

            if (importAttributes.Length > 0)
            {
                foreach (Attribute importAttribute in importAttributes)
                {
                    ImportAttribute attrib = importAttribute as ImportAttribute;

                    if (null != attrib)
                    {
                        ProcessImport(configurationClass, attrib.Types);
                    }
                }
            }

            Attribute[] importResourceAttributes = Attribute.GetCustomAttributes(configurationClass.ConfigurationClassType, typeof(ImportResourceAttribute));

            if (importResourceAttributes.Length > 0)
            {
                foreach (Attribute importResourceAttribute in importResourceAttributes)
                {
                    ImportResourceAttribute attrib = importResourceAttribute as ImportResourceAttribute;

                    if (null != attrib)
                    {
                        foreach (string resource in attrib.Resources)
                        {
                            configurationClass.AddImportedResource(resource, attrib.DefinitionReader);
                        }
                    }
                }
            }

            Collections.Generic.ISet <MethodInfo> definitionMethods = GetAllMethodsWithCustomAttributeForClass(configurationClass.ConfigurationClassType, typeof(ObjectDefAttribute));
            foreach (MethodInfo definitionMethod in definitionMethods)
            {
                configurationClass.Methods.Add(new ConfigurationClassMethod(definitionMethod, configurationClass));
            }
        }
        private void DoProcessConfigurationClass(ConfigurationClass configurationClass)
        {

            Attribute[] importAttributes = Attribute.GetCustomAttributes(configurationClass.ConfigurationClassType, typeof(ImportAttribute));

            if (importAttributes.Length > 0)
            {
                foreach (Attribute importAttribute in importAttributes)
                {
                    ImportAttribute attrib = importAttribute as ImportAttribute;

                    if (null != attrib)
                    {
                        ProcessImport(configurationClass, attrib.Types);
                    }
                }
            }

            Attribute[] importResourceAttributes = Attribute.GetCustomAttributes(configurationClass.ConfigurationClassType, typeof(ImportResourceAttribute));

            if (importResourceAttributes.Length > 0)
            {
                foreach (Attribute importResourceAttribute in importResourceAttributes)
                {
                    ImportResourceAttribute attrib = importResourceAttribute as ImportResourceAttribute;

                    if (null != attrib)
                    {
                        foreach (string resource in attrib.Resources)
                        {
                            configurationClass.AddImportedResource(resource, attrib.DefinitionReader);
                        }
                    }
                }
            }

            Collections.Generic.ISet<MethodInfo> definitionMethods = GetAllMethodsWithCustomAttributeForClass(configurationClass.ConfigurationClassType, typeof(ObjectDefAttribute));
            foreach (MethodInfo definitionMethod in definitionMethods)
            {
                configurationClass.Methods.Add(new ConfigurationClassMethod(definitionMethod, configurationClass));

            }
        }
        private void DoProcessConfigurationClass(ConfigurationClass configurationClass)
        {
            if (Attribute.GetCustomAttribute(configurationClass.ConfigurationClassType, typeof(ImportAttribute)) != null)
            {
                ImportAttribute attrib = Attribute.GetCustomAttribute(configurationClass.ConfigurationClassType, typeof(ImportAttribute)) as ImportAttribute;
                ProcessImport(configurationClass, attrib.Types);
            }

            if (Attribute.GetCustomAttribute(configurationClass.ConfigurationClassType, typeof(ImportResourceAttribute)) != null)
            {
                ImportResourceAttribute attrib = Attribute.GetCustomAttribute(configurationClass.ConfigurationClassType, typeof(ImportResourceAttribute)) as ImportResourceAttribute;

                foreach (string resource in attrib.Resources)
                {
                    configurationClass.AddImportedResource(resource, attrib.DefinitionReader);
                }
            }

            Collections.Generic.ISet<MethodInfo> definitionMethods = GetAllMethodsWithCustomAttributeForClass(configurationClass.ConfigurationClassType, typeof(DefinitionAttribute));
            foreach (MethodInfo definitionMethod in definitionMethods)
            {
                configurationClass.Methods.Add(new ConfigurationClassMethod(definitionMethod, configurationClass));

            }
        }