Open sandboxFocus

Class AggregatableClientAttribute

Base class for aspects that consume functionalities from the AggregatableAttribute aspect. This class provides functionalities to advise and unadvise children.

Namespace: PostSharp.Patterns.Model
Assembly: PostSharp.Patterns.Aggregation.dll
Syntax
[MulticastAttributeUsage(MulticastTargets.Class, TargetTypeAttributes = MulticastAttributes.UserGenerated)]
[AspectTypeDependency(AspectDependencyAction.Order, AspectDependencyPosition.After, typeof(AggregatableAttribute))]
[Serializer(typeof(AggregatableClientAttribute.Serializer))]
public abstract class AggregatableClientAttribute : InstanceLevelAspect, ITypeLevelAspect, ITypeLevelAspectBuildSemantics, IAspectBuildSemantics, IValidableAnnotation, ICloneAwareAspect, IInstanceScopedAspect, IAspectProvider, IService, IAdviceProvider, IAspect

Constructors

Name Description
AggregatableClientAttribute()
AggregatableClientAttribute(PortableFormatterConstructorContext)

Properties

Name Description
AppliedToCurrentType

Determines if the current custom attribute instance has been applied to the type of the target instance. This value is false if the custom attribute has been applied to a base type.

InitializationStatus

Gets the current AggregatableClientAttribute.AspectInitializationStatus of the current aspect.

Methods

Name Description
Advise(object)

Injects the advice into the child object.

CompileTimeInitialize(Type, AspectInfo)

Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked before any other build-time method.

IsEligibleChild(object, ChildInfo)

Determines if an object is eligible to be a child of the target instance of the current aspect.

OnAdviseChildFailed(object)

Method invoked when a child is assigned to a parent and the advices of the parent cannot be added to the child. Implementations can choose to throw an exception (thread-aware attributes do this) or ignore the situation (DisposableAttribute does this).

OnInstanceConstructed()

Executed when the target instance gets fully initialized, i.e. just after all constructors have completed.