/*
         * public ProfileManager(List<IOASISStorage> OASISStorageProviders)
         * {
         *  this.OASISStorageProviders = OASISStorageProviders;
         *
         *  foreach (IOASISStorage provider in OASISStorageProviders)
         *  {
         *      provider.OnStorageProviderError += OASISStorageProvider_OnStorageProviderError;
         *      provider.ActivateProvider();
         *  }
         * }*/

        //TODO: In future more than one storage provider can be active at a time where each call can specify which provider to use.
        public ProfileManager(IOASISStorage OASISStorageProvider) : base(OASISStorageProvider)
        {
            //if (!ProviderManager.IsProviderRegistered(OASISStorageProvider))
            //    ProviderManager.RegisterProvider(OASISStorageProvider);

            //ProviderManager.SwitchCurrentStorageProvider(OASISStorageProvider.ProviderType);
        }
Esempio n. 2
0
        //public SearchManagerConfig Config
        //{
        //    get
        //    {
        //        if (_config == null)
        //        {
        //            _config = new SearchManagerConfig();
        //        }

        //        return _config;
        //    }
        //}

        //Events
        //public delegate void SearchManagerError(object sender, SearchManagerErrorEventArgs e);
        //public event SearchManagerError OnSearchManagerError;

        //public delegate void StorageProviderError(object sender, SearchManagerErrorEventArgs e);

        /*
         * public SearchManager(List<IOASISStorage> OASISStorageProviders)
         * {
         *  this.OASISStorageProviders = OASISStorageProviders;
         *
         *  foreach (IOASISStorage provider in OASISStorageProviders)
         *  {
         *      provider.OnStorageProviderError += OASISStorageProvider_OnStorageProviderError;
         *      provider.ActivateProvider();
         *  }
         * }*/

        //TODO: In future more than one storage provider can be active at a time where each call can specify which provider to use.
        public SearchManager(IOASISStorage OASISStorageProvider) : base(OASISStorageProvider)
        {
            if (!ProviderManager.IsProviderRegistered(OASISStorageProvider))
            {
                ProviderManager.RegisterProvider(OASISStorageProvider);
            }

            ProviderManager.SwitchCurrentStorageProvider(OASISStorageProvider.ProviderType);
        }
        /*
         * public ProfileManager(List<IOASISStorage> OASISStorageProviders)
         * {
         *  this.OASISStorageProviders = OASISStorageProviders;
         *
         *  foreach (IOASISStorage provider in OASISStorageProviders)
         *  {
         *      provider.OnStorageProviderError += OASISStorageProvider_OnStorageProviderError;
         *      provider.ActivateProvider();
         *  }
         * }*/

        //TODO: In future more than one storage provider can be active at a time where each call can specify which provider to use.
        public ReplicatorManager(IOASISStorage OASISStorageProvider) : base(OASISStorageProvider)
        {
            //if (!ProviderManager.IsProviderRegistered(OASISStorageProvider))
            //    ProviderManager.RegisterProvider(OASISStorageProvider);

            //ProviderManager.SwitchCurrentStorageProvider(OASISStorageProvider.ProviderType);

            //   return null;
        }
        //TODO: In future more than one StorageProvider will be active at a time so we need to work out how to handle this...
        public static void SwitchCurrentStorageProvider(ProviderType providerType)
        {
            IOASISProvider provider = _registeredProviders.FirstOrDefault(x => x.ProviderType == providerType);

            if (provider != null && (provider.ProviderCategory == ProviderCategory.Storage || provider.ProviderCategory == ProviderCategory.StorageAndNetwork))
            {
                ProviderManager.CurrentStorageProviderType = providerType;
                ProviderManager.CurrentStorageProvider     = (IOASISStorage)provider;
                ProviderManager.CurrentStorageProvider.ActivateProvider();
            }
        }