OnDestroyComponentDescriptor<S>
public class OnDestroyComponentDescriptor<S> : IComponentModelDescriptor, IMetaComponentModelDescriptor
using Castle.Core;
using Castle.MicroKernel.LifecycleConcerns;
namespace Castle.MicroKernel.ModelBuilder.Descriptors
{
public class OnDestroyComponentDescriptor<S> : IComponentModelDescriptor, IMetaComponentModelDescriptor where S : class
{
private readonly LifecycleActionDelegate<S> action;
public OnDestroyComponentDescriptor(LifecycleActionDelegate<S> action)
{
this.action = action;
}
public void BuildComponentModel(IKernel kernel, ComponentModel model)
{
}
public void ConfigureComponentModel(IKernel kernel, ComponentModel model)
{
model.Lifecycle.AddFirst(new OnDestroyConcern<S>(action, kernel));
}
}
}