ContextDataProviderAttribute
This attribute is used to specify the Type of class that implements
            IContextDataProvider interface in the specified assembly. This 
            attribute can be used only once at assembly level. Having this attribute
            saves the cost of reflection on each exported types to find the type
            that implements IContextDataProvider interface.
            
Checks if this type can capture data interactively
            
Type implementing IContextDataProvider interface.
            
Constructor to construct this attribute with a delegate to check
            whether this data provider captures data.
            
Constructor
            
            