P?LEwyXLEȝLE8ΰ;ΰ'E Uc UBx_A@U!ΰ@EEu%ΰ1ʰʰFEE8ΰ;ΰ@/ʰ@/ʰḆAA@9ʰE Uc UB=eA;ΰ LExʰ3ʰP?LE{}xLE8ΰ;ΰ/E Uc UBx_A@U!ΰ@EEu%ΰ4ʰ`ʰFEE8ΰ;ΰ3ʰ3ʰḆAA:ʰE Uc UB=eA;ΰ0LE8 ТLEJʰX7ʰPLEP?LE`LE8ΰ;ΰ7E Uc UBx_A@U!ΰ@EEu%ΰ8ʰ8`ʰFEE8ΰ;ΰ6ʰ6ʰḆAAʰʰḆAABʰE Uc U@=eA;ΰLE0 LE`ʰX<ʰ0LE LEP?LE LE8ΰ;ΰGE Uc UBx_A@U!ΰ@EE(u%ΰ=ʰ`ʰFEE8ΰ;ΰ;ʰ;ʰḆAAEʰE Uc UB=eA;ΰpLEH.xml'); $loader->load('ApiClient/DependencyInjection/service.xml'); $loader->load('Config/DependencyInjection/controller.xml'); $loader->load('Config/DependencyInjection/service.xml'); $loader->load('DhlBcpConfigScraper/DependencyInjection/command.xml'); $loader->load('Installation/DependencyInjection/service.xml'); $loader->load('LocationFinder/DependencyInjection/controller.xml'); $loader->load('LocationFinder/DependencyInjection/service.xml'); $loader->load('PreferredDelivery/DependencyInjection/controller.xml'); $loader->load('PreferredDelivery/DependencyInjection/service.xml'); $loader->load('ReturnLabel/DependencyInjection/service.xml'); $loader->load('SalesChannelContext/DependencyInjection/model.xml'); $loader->load('SalesChannelContext/DependencyInjection/service.xml'); $containerBuilder->addCompilerPass(new CarrierAdapterRegistryCompilerPass()); } public function install(InstallContext $installContext): void { $this->loadDependenciesForSetup(); $this->executeMigrationsOfBundles(); BundleInstaller::createForContainerAndClass($this->container, self::class) ->install(self::ADDITIONAL_BUNDLES, $installContext); } public function update(UpdateContext $updateContext): void { $this->loadDependenciesForSetup(); $this->executeMigrationsOfBundles(); BundleInstaller::createForContainerAndClass($this->container, self::class) ->install(self::ADDITIONAL_BUNDLES, $updateContext); } private function executeMigrationsOfBundles(): void { // All the services required for migration execution are private in the DI-Container. As a workaround the // services are instantiated explicitly here. $db = $this->container->get(Connection::class); // See vendor/symfony/monolog-bundle/Resources/config/monolog.xml on how the logger is defined. $logger = new Logger('app'); $logger->useMicrosecondTimestamps($this->container->getParameter('monolog.use_microseconds')); $migrationCollectionLoader = new MigrationCollectionLoader($db, new MigrationRuntime($db, $logger)); $migrationSource = new MigrationSource('PickwareDhl'); foreach (self::ADDITIONAL_BUNDLES as $bundle) { $bundle::registerMigrations($migrationSource); } $migrationCollectionLoader->addSource($migrationSource); foreach ($migrationCollectionLoader->collectAll() as $migrationCollection) { $migrationCollection->sync(); $migrationCollection->migrateInPlace(); } } public function postInstall(InstallContext $installContext): void { PluginLifecycleErrorRecovery::createForContainer($this->container) ->recoverFromErrorsIn($this->handlePostInstall(...), $installContext); } private function handlePostInstall(InstallContext $installContext): void { PickwareDhlInstaller::initFromContainer($this->container)->postInstall($installContext); } public function postUpdate(UpdateContext $updateContext): void { PluginLifecycleErrorRecovery::createForContainer($this->container) ->recoverFromErrorsIn($this->handlePostUpdate(...), $updateContext); } private function handlePostUpdate(UpdateContext $updateContext): void { PickwareDhlInstaller::initFromContainer($this->container)->postUpdate($updateContext); if ($updateContext->getPlugin()->isActive()) { $this->container ->get('pickware_dhl.bundle_supporting_asset_service') ->copyAssetsFromBundle('PickwareShippingBundle'); BundleInstaller::createForContainerAndClass($this->container, self::class) ->onAfterActivate(self::ADDITIONAL_BUNDLES, $updateContext); } } public function uninstall(UninstallContext $uninstallContext): void { if ($uninstallContext->keepUserData()) { return; } $this->loadDependenciesForSetup(); DependencyAwareTableDropper::createForContainer($this->container)->dropTables([ 'pickware_dhl_sales_channel_api_context', // These are actually only tables from old plugin versions. We still remove them here just in case. 'pickware_dhl_carrier', 'pickware_dhl_document', 'pickware_dhl_document_page_format', 'pickware_dhl_document_shipment_mapping', 'pickware_dhl_document_tracking_code_mapping', 'pickware_dhl_document_type', 'pickware_dhl_shipment', 'pickware_dhl_shipment_order_delivery_mapping', 'pickware_dhl_shipment_order_mapping', 'pickware_dhl_shipping_method_config', 'pickware_dhl_tracking_code', ]); $this->container->get(Connection::class)->executeStatement( 'DELETE FROM system_config WHERE configuration_key LIKE :domain', ['domain' => DhlConfig::CONFIG_DOMAIN . '.%'], ); PickwareDhlInstaller::initFromContainer($this->container)->uninstall($uninstallContext); BundleInstaller::createForContainerAndClass($this->container, self::class)->uninstall($uninstallContext); } public function activate(ActivateContext $activateContext): void { $this->container->get('pickware_dhl.bundle_supporting_asset_service') ->copyAssetsFromBundle('PickwareShippingBundle'); BundleInstaller::createForContainerAndClass($this->container, self::class) ->onAfterActivate(self::ADDITIONAL_BUNDLES, $activateContext); } /** * Run the dependency loader for a setup step like install/update/uninstall * * When executing one of these steps but no Pickware plugin is activated, the dependency loader did never run until * the call of the corresponding method. You can trigger it with a call of this method. */ private function loadDependenciesForSetup(): void { if (isset($GLOBALS['PICKWARE_DEPENDENCY_LOADER'])) { $plugins = $this->container->get('kernel')->getPluginLoader()->getPluginInfos(); $projectDir = $this->container->getParameter('kernel.project_dir'); $GLOBALS['PICKWARE_DEPENDENCY_LOADER']->ensureLatestDependenciesOfPluginsLoaded($plugins, $projectDir); } } } An Error Occurred: Internal Server Error

Oops! An Error Occurred

The server returned a "500 Internal Server Error".

Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.