internal BindingSetPropertyInterceptionAspectWeaver(IPropertyAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings, FieldInfo weavedType) : base(aspectDefinition, aspectWeavingSettings, weavedType) { IMethodScopeWeaver finallyWeaver = null; argumentsWeavingSettings.BindingsDependency = weavedType; argumentsWeavingSettings.Parameters = new[] { aspectDefinition.Member.PropertyType }; finallyWeaver = new FinallyBindingPropertyAspectWeaver(aspectDefinition.Member, argumentsWeavingSettings, aspectWeavingSettings); argumentsWeaver = new BindingSetPropertyInterceptionArgumentsWeaver(aspectDefinition.Member, argumentsWeavingSettings, aspectWeavingSettings); weaver = new TryFinallyAspectWeaver(methodScopeWeavers, new[] { finallyWeaver }); }
internal BindingSetPropertyInterceptionAspectWeaver(IPropertyAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings, FieldInfo weavedType) : base(aspectDefinition, aspectWeavingSettings, weavedType) { IMethodScopeWeaver finallyWeaver = null; argumentsWeavingSettings.BindingsDependency = weavedType; argumentsWeavingSettings.Parameters = new[] { aspectDefinition.Member.PropertyType }; finallyWeaver = new FinallyBindingPropertyAspectWeaver(aspectDefinition.Member, argumentsWeavingSettings, aspectWeavingSettings); argumentsWeaver = new BindingSetPropertyInterceptionArgumentsWeaver(aspectDefinition.Member, argumentsWeavingSettings, aspectWeavingSettings); weaver = new TryFinallyAspectWeaver(methodScopeWeavers, new[] { finallyWeaver }); }