Class EnableFeatureUsageTrackingExtensions
- Namespace
- Splat.ApplicationPerformanceMonitoring
- Assembly
- Splat.dll
Extensions for the IEnableFeatureUsageTracking interface. This is a similar design to IEnableLogger, to allow easy use and extension of classes such as ViewModels.
public static class EnableFeatureUsageTrackingExtensions
- Inheritance
-
EnableFeatureUsageTrackingExtensions
Methods
FeatureUsageTrackingSession(IEnableFeatureUsageTracking, string)
Creates a session for tracking usage of a specified feature on the given instance.
public static IFeatureUsageTrackingSession FeatureUsageTrackingSession(this IEnableFeatureUsageTracking instance, string featureName)
Parameters
instanceIEnableFeatureUsageTrackingThe object that enables feature usage tracking. Must not be null.
featureNamestringThe name of the feature to track. Cannot be null or empty.
Returns
- IFeatureUsageTrackingSession
An IFeatureUsageTrackingSession instance for tracking usage of the specified feature.
Exceptions
- InvalidOperationException
Thrown if the feature usage tracking manager service is not available.
WithFeatureUsageTrackingSession(IEnableFeatureUsageTracking, string, Action<IFeatureUsageTrackingSession>)
Helper for wrapping an action with a Feature Usage Tracking Session.
public static void WithFeatureUsageTrackingSession(this IEnableFeatureUsageTracking instance, string featureName, Action<IFeatureUsageTrackingSession> action)
Parameters
instanceIEnableFeatureUsageTrackinginstance of class that uses IEnableFeatureUsageTracking.
featureNamestringName of the feature.
actionAction<IFeatureUsageTrackingSession>Action to carry out.
WithSubFeatureUsageTrackingSession(IFeatureUsageTrackingSession, string, Action<IFeatureUsageTrackingSession>)
Helper for wrapping an action with a sub-feature Usage Tracking Session.
public static void WithSubFeatureUsageTrackingSession(this IFeatureUsageTrackingSession instance, string featureName, Action<IFeatureUsageTrackingSession> action)
Parameters
instanceIFeatureUsageTrackingSessioninstance of class that uses IEnableFeatureUsageTracking.
featureNamestringName of the feature.
actionAction<IFeatureUsageTrackingSession>Action to carry out.