/** * {@inheritdoc} */ public function execute() { // sanity check if (!$this->bindingDescriptor->isLoaded()) { return; } $this->containingPackage = $this->bindingDescriptor->getContainingPackage(); $this->typeDescriptor = $this->bindingDescriptor->getTypeDescriptor(); $uuid = $this->bindingDescriptor->getUuid(); // never fails with the check in the beginning $this->bindingDescriptor->unload(); if ($this->bindingDescriptors->contains($uuid) && $this->bindingDescriptor === $this->bindingDescriptors->get($uuid)) { // never fails $this->bindingDescriptors->remove($uuid); $this->wasRemoved = true; } }