/// <summary>
        /// Registers the specified SharePointContextProvider instance as current.
        /// It should be called by Application_Start() in Global.asax.
        /// </summary>
        /// <param name="provider">The SharePointContextProvider to be set as current.</param>
        public static void Register(SharePointContextProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            SharePointContextProvider.current = provider;
        }
 /// <summary>
 /// Initializes the default SharePointContextProvider instance.
 /// </summary>
 static SharePointContextProvider()
 {
     if (!TokenHelper.IsHighTrustApp())
     {
         SharePointContextProvider.current = new SharePointAcsContextProvider();
     }
     else
     {
         SharePointContextProvider.current = new SharePointHighTrustContextProvider();
     }
 }