internal void RegisterDataLoadingListener(IDataStatusListener listener)
        {
            if (!this.registeredDataLoadingListeners.Contains(listener))
            {
                this.registeredDataLoadingListeners.Add(listener);
            }

            listener.OnDataStatusChanged(this.dataStatus);
        }
 internal void UnregisterDataLoadingListener(IDataStatusListener listener)
 {
     this.registeredDataLoadingListeners.Remove(listener);
     listener.OnDataStatusChanged(DataProviderStatus.Uninitialized);
 }