public override void CustomizeTypesInfo(ITypesInfo typesInfo) { base.CustomizeTypesInfo(typesInfo); var logicRuleTypes = typesInfo.DomainSealedInfos <IContextLogicRule>(); foreach (var logicRuleType in logicRuleTypes) { logicRuleType.AddAttribute(new NewObjectCreateGroupAttribute("Logic")); } }
public override void CustomizeTypesInfo(ITypesInfo typesInfo) { base.CustomizeTypesInfo(typesInfo); CurrentUserNameOperator.Instance.Register(); ApplySecurityOperations(typesInfo); var types = typesInfo.DomainSealedInfos <IModifier>(); foreach (var typeInfo in types) { typeInfo.AddAttribute(new NewObjectCreateGroupAttribute("SimpleModifer")); } }
private void ApplySecurityOperations(ITypesInfo typesInfo) { var securityOperationInfos = typesInfo.PersistentTypes.Where(info => info.FindAttribute <SecurityOperationsAttribute>() != null); var roleInfos = typesInfo.DomainSealedInfos <ISecurityRole>().ToArray(); foreach (var securityOperationInfo in securityOperationInfos) { var securityOperationsAttributes = securityOperationInfo.FindAttributes <SecurityOperationsAttribute>(); foreach (var securityOperationsAttribute in securityOperationsAttributes) { foreach (var roleInfo in roleInfos.Where(info => (!RuntimeMode || info.Type == RoleType) && !(((TypeInfo)info).Source is ReflectionTypeInfoSource))) { if (roleInfo.FindMember(securityOperationsAttribute.OperationProviderProperty) == null) { roleInfo.CreateMember(securityOperationsAttribute.OperationProviderProperty, typeof(SecurityOperationsEnum)); } if (!RuntimeMode) { CreateWeaklyTypedCollection(typesInfo, roleInfo.Type, securityOperationsAttribute.CollectionName); } } } } }
public static IEnumerable <ITypeInfo> DomainSealedInfos <T>(this ITypesInfo typesInfo) { return(typesInfo.DomainSealedInfos(typeof(T))); }