Beispiel #1
0
        public void Initialize()
        {
            if (IsInitialized)
            {
                throw new ArtemisCoreException("Cannot initialize the core as it is already initialized.");
            }

            AssemblyInformationalVersionAttribute?versionAttribute = typeof(CoreService).Assembly.GetCustomAttribute <AssemblyInformationalVersionAttribute>();

            _logger.Information("Initializing Artemis Core version {version}", versionAttribute?.InformationalVersion);
            ApplyLoggingLevel();

            DeserializationLogger.Initialize(Kernel);

            // Initialize the services
            _pluginService.CopyBuiltInPlugins();
            _pluginService.LoadPlugins(StartupArguments.Contains("--ignore-plugin-lock"));

            ArtemisSurface surfaceConfig = _surfaceService.ActiveSurface;

            if (surfaceConfig != null)
            {
                _logger.Information("Initialized with active surface entity {surfaceConfig}-{guid}", surfaceConfig.Name, surfaceConfig.EntityId);
            }
            else
            {
                _logger.Information("Initialized without an active surface entity");
            }

            PlayIntroAnimation();
            OnInitialized();
        }
Beispiel #2
0
        public static Task Initialize(IWebHost host)
        {
            Host = host;
            var env = Container.Resolve <IHostingEnvironment>();

            if (env.IsDevelopment())
            {
                ONLINE_BASE_ADDRESS = Core.NGROK_SERVER;
            }
            else
            {
                ONLINE_BASE_ADDRESS = Host.ServerFeatures.Get <IServerAddressesFeature>().Addresses.FirstOrDefault();
            }

            InitializeData().Wait();

            if (StartupArguments.Length > 0)
            {
                if (StartupArguments.Contains("--seed"))
                {
                    SeedUsers().Wait();
                }
                else if (StartupArguments.Contains("--transactionFix"))
                {
                    FixTransactionBugs().Wait();
                }
            }


            Core.Log.Debug($"{PRODUCT_NAME} has successfully been initialized.");
            return(Task.CompletedTask);
        }