private static void BuildInitializedMember(List<InitializedMember> members, ICustomAttributeProvider attributeProvider, InitializedMemberFactory factory) { var finders = (ComponentFinderAttribute[]) attributeProvider.GetCustomAttributes(typeof(ComponentFinderAttribute), true); if (finders.Length == 0) return; if (finders.Length > 1) throw new InvalidOperationException(string.Format("Member '{0}' has more than one ComponentFinderAttribute.", attributeProvider)); var finder = finders[0]; var decorators = (ComponentDecoratorAttribute[])attributeProvider.GetCustomAttributes(typeof(ComponentDecoratorAttribute), true); InitializedMember member = factory(finder, decorators); members.Add(member); }
private static void BuildInitializedMember(List <InitializedMember> members, ICustomAttributeProvider attributeProvider, InitializedMemberFactory factory) { var finders = (ComponentFinderAttribute[])attributeProvider.GetCustomAttributes(typeof(ComponentFinderAttribute), true); if (finders.Length == 0) { return; } if (finders.Length > 1) { throw new InvalidOperationException(string.Format("Member '{0}' has more than one ComponentFinderAttribute.", attributeProvider)); } var finder = finders[0]; var decorators = (ComponentDecoratorAttribute[])attributeProvider.GetCustomAttributes(typeof(ComponentDecoratorAttribute), true); InitializedMember member = factory(finder, decorators); members.Add(member); }