Class FuncFeatureUsageTrackingManager
- Namespace
- Splat.ApplicationPerformanceMonitoring
- Assembly
- Splat.dll
Provides a feature usage tracking manager that creates tracking sessions using a supplied factory function.
public class FuncFeatureUsageTrackingManager : IFeatureUsageTrackingManager
- Inheritance
-
FuncFeatureUsageTrackingManager
- Implements
- Derived
- Extension Methods
Remarks
This implementation allows customization of feature usage tracking session creation by accepting a factory delegate. It is useful when session instantiation logic needs to be injected or varied at runtime.
Constructors
FuncFeatureUsageTrackingManager(Func<string, IFeatureUsageTrackingSession>)
Initializes a new instance of the FuncFeatureUsageTrackingManager class.
public FuncFeatureUsageTrackingManager(Func<string, IFeatureUsageTrackingSession> featureUsageTrackingSessionFunc)
Parameters
featureUsageTrackingSessionFuncFunc<string, IFeatureUsageTrackingSession>Factory function for a Feature Usage Tracking Session.
Methods
GetFeatureUsageTrackingSession(string)
Creates a new session for tracking usage of the specified feature.
public IFeatureUsageTrackingSession GetFeatureUsageTrackingSession(string featureName)
Parameters
featureNamestringThe name of the feature to track. Cannot be null or empty.
Returns
- IFeatureUsageTrackingSession
An object representing the feature usage tracking session. The caller is responsible for disposing the session when tracking is complete.
Remarks
Use the returned session to record feature usage events. Disposing the session typically finalizes and submits the usage data. Multiple sessions can be created for different features as needed.