/// <summary> /// Remove the resolvers for the given build key. /// </summary> /// <param name="policies">Policy list containing the build key.</param> /// <param name="buildKey">Build key.</param> public static void RemoveResolvers(IPolicyList policies, object buildKey) { IDependencyResolverTrackerPolicy tracker = policies.Get <IDependencyResolverTrackerPolicy>(buildKey); if (tracker != null) { tracker.RemoveResolvers(policies); } }
// Helper methods for adding and removing the tracker policy. /// <summary> /// Get an instance that implements <see cref="IDependencyResolverTrackerPolicy"/>, /// either the current one in the policy set or creating a new one if it doesn't /// exist. /// </summary> /// <param name="policies">Policy list to look up from.</param> /// <param name="buildKey">Build key to track.</param> /// <returns>The resolver tracker.</returns> public static IDependencyResolverTrackerPolicy GetTracker(IPolicyList policies, object buildKey) { IDependencyResolverTrackerPolicy tracker = policies.Get <IDependencyResolverTrackerPolicy>(buildKey); if (tracker == null) { tracker = new DependencyResolverTrackerPolicy(); policies.Set <IDependencyResolverTrackerPolicy>(tracker, buildKey); } return(tracker); }
/// <summary> /// Remove the resolvers for the given build key. /// </summary> /// <param name="policies">Policy list containing the build key.</param> /// <param name="buildKey">Build key.</param> public static void RemoveResolvers(IPolicyList policies, object buildKey) { IDependencyResolverTrackerPolicy tracker = GetTracker(policies, buildKey); tracker.RemoveResolvers(policies); }
/// <summary> /// Add a key to be tracked to the current tracker. /// </summary> /// <param name="policies">Policy list containing the resolvers and trackers.</param> /// <param name="buildKey">Build key for the resolvers being tracked.</param> /// <param name="resolverKey">Key for the resolver.</param> public static void TrackKey(IPolicyList policies, object buildKey, object resolverKey) { IDependencyResolverTrackerPolicy tracker = GetTracker(policies, buildKey); tracker.AddResolverKey(resolverKey); }