Universe.Services.DataService.LocalDataService.Initialize C# (CSharp) Method

Initialize() public method

public Initialize ( IConfigSource config, IRegistryCore registry ) : void
config IConfigSource
registry IRegistryCore
return void
        public void Initialize(IConfigSource config, IRegistryCore registry)
        {
            IConfig m_config = config.Configs["UniverseData"];
            if (m_config != null)
            {
                StorageProvider = m_config.GetString("StorageProvider", StorageProvider);
                ConnectionString = m_config.GetString("ConnectionString", ConnectionString);
            }

            IGenericData DataConnector = null;
            if (StorageProvider == "MySQL")
                //Allow for fallback when eData isn't set
            {
                MySQLDataLoader GenericData = new MySQLDataLoader();

                DataConnector = GenericData;
            }
            else if (StorageProvider == "SQLite")
                //Allow for fallback when Data isn't set
            {
                SQLiteLoader GenericData = new SQLiteLoader();

                // set default data directory in case it is needed
                var simBase = registry.RequestModuleInterface<ISimulationBase> ();
                GenericData.DefaultDataPath = simBase.DefaultDataPath;

                DataConnector = GenericData;
            }

            List<IUniverseDataPlugin> Plugins = UniverseModuleLoader.PickupModules<IUniverseDataPlugin>();
            foreach (IUniverseDataPlugin plugin in Plugins)
            {
                try
                {
                    plugin.Initialize(DataConnector == null ? null : DataConnector.Copy(), config, registry, ConnectionString);
                }
                catch (Exception ex)
                {
                    if (MainConsole.Instance != null)
                        MainConsole.Instance.Warn("[Data Service]: Exception occurred starting data plugin " + plugin.Name + ", " + ex);
                }
            }
        }

Same methods

LocalDataService::Initialize ( IConfigSource config, IRegistryCore registry, List types ) : void

Usage Example

 public void Initialize(ISimulationBase simBase)
 {
     LocalDataService service = new LocalDataService();
     service.Initialize(simBase.ConfigSource, simBase.ApplicationRegistry);
 }
All Usage Examples Of Universe.Services.DataService.LocalDataService::Initialize
LocalDataService