private static void RegistryOnRegistered([CanBeNull] object sender, [NotNull] ComponentRegisteredEventArgs args) { if (UnitOfWorkHelper.IsConventionalUowClass(args.ComponentRegistration.Activator.LimitType) || UnitOfWorkHelper.HasUnitOfWorkAttribute(args.ComponentRegistration.Activator.LimitType)) { UnitOfWorkRegistrar(args); } }
private static bool RequiresDbConnection(MethodInfo methodInfo) { if (UnitOfWorkHelper.HasUnitOfWorkAttribute(methodInfo)) { return(true); } if (UnitOfWorkHelper.IsRepositoryMethod(methodInfo)) { return(true); } return(false); }
public static void RegisterUnitOfWorkInterceptor(string key, IHandler handler) { foreach (var method in handler.ComponentModel.Implementation.GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic)) { if (UnitOfWorkHelper.HasUnitOfWorkAttribute(method)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UnitOfWorkInterceptor))); return; } } if (UnitOfWorkHelper.IsRepositoryClass(handler.ComponentModel.Implementation)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UnitOfWorkInterceptor))); return; } }
void Kernel_ComponentRegistered(string key, IHandler handler) { if (UnitOfWorkHelper.IsRepositoryClass(handler.ComponentModel.Implementation)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UoWInterceptor))); } foreach (var method in handler.ComponentModel.Implementation.GetMethods()) { if (UnitOfWorkHelper.HasUnitOfWorkAttribute(method)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UoWInterceptor))); return; } } }
private static void Kernel_ComponentRegistered(string key, IHandler handler) { if (UnitOfWorkHelper.IsRepositoryClass(handler.ComponentModel.Implementation)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(NHUnitOfWorkInterceptor))); } if ( !handler.ComponentModel.Implementation.GetMethods() .Any(method => UnitOfWorkHelper.HasUnitOfWorkAttribute(method))) { return; } handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(NHUnitOfWorkInterceptor))); }
static void Kernel_ComponentRegistered(string key, Castle.MicroKernel.IHandler handler) { //Intercept all methods of all repositories. if (UnitOfWorkHelper.IsRepositoryClass(handler.ComponentModel.Implementation)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UnitOfWorkInterceptor))); } //Intercept all methods of classes those have at least one method that has UnitOfWork attribute. foreach (var method in handler.ComponentModel.Implementation.GetMethods()) { if (UnitOfWorkHelper.HasUnitOfWorkAttribute(method)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UnitOfWorkInterceptor))); return; } } }
//TODO private void Kernel_ComponentRegistered(string key, IHandler handler) { if (UnitOfWorkHelper.IsServiceClass(handler.ComponentModel.Implementation)) { //handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(NhUnitOfWorkInterceptor))); //handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(NotificationOfUnitOfWorkInterceptor))); } //Intercept all methods of classes those have at least one method that has UnitOfWork attribute. foreach (var method in handler.ComponentModel.Implementation.GetMethods()) { if (UnitOfWorkHelper.HasUnitOfWorkAttribute(method)) { handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(UnitOfWorkInterceptor))); // handler.ComponentModel.Interceptors.Add(new InterceptorReference(typeof(NotificationOfUnitOfWorkInterceptor))); return; } } }
public static bool RequiresDbConnection(MethodInfo methodInfo) { return(UnitOfWorkHelper.HasUnitOfWorkAttribute(methodInfo) || UnitOfWorkHelper.IsServiceMethod(methodInfo)); }
private static bool IsUnitOfWorkType(TypeInfo implementationType) { return(UnitOfWorkHelper.HasUnitOfWorkAttribute(implementationType)); }