@@ 64-85 (lines=22) @@ | ||
61 | /** |
|
62 | * {@inheritdoc} |
|
63 | */ |
|
64 | public function execute() |
|
65 | { |
|
66 | // sanity check |
|
67 | if ($this->bindingDescriptor->isLoaded()) { |
|
68 | return; |
|
69 | } |
|
70 | ||
71 | $typeName = $this->bindingDescriptor->getTypeName(); |
|
72 | $typeDescriptor = $this->typeDescriptors->contains($typeName) |
|
73 | ? $this->typeDescriptors->getFirst($typeName) |
|
74 | : null; |
|
75 | ||
76 | $this->bindingDescriptor->load($this->containingPackage, $typeDescriptor); |
|
77 | ||
78 | $uuid = $this->bindingDescriptor->getUuid(); |
|
79 | ||
80 | if ($this->bindingDescriptors->contains($uuid)) { |
|
81 | $this->previousDescriptor = $this->bindingDescriptors->get($uuid); |
|
82 | } |
|
83 | ||
84 | $this->bindingDescriptors->add($this->bindingDescriptor); |
|
85 | } |
|
86 | ||
87 | /** |
|
88 | * {@inheritdoc} |
@@ 56-78 (lines=23) @@ | ||
53 | /** |
|
54 | * {@inheritdoc} |
|
55 | */ |
|
56 | public function execute() |
|
57 | { |
|
58 | // sanity check |
|
59 | if (!$this->typeDescriptor->isLoaded()) { |
|
60 | return; |
|
61 | } |
|
62 | ||
63 | // never fails with the check before |
|
64 | $this->containingPackage = $this->typeDescriptor->getContainingPackage(); |
|
65 | ||
66 | $typeName = $this->typeDescriptor->getTypeName(); |
|
67 | $packageName = $this->containingPackage->getName(); |
|
68 | ||
69 | // never fails with the check before |
|
70 | $this->typeDescriptor->unload(); |
|
71 | ||
72 | if ($this->typeDescriptors->contains($typeName, $packageName) |
|
73 | && $this->typeDescriptor === $this->typeDescriptors->get($typeName, $packageName)) { |
|
74 | // never fails |
|
75 | $this->typeDescriptors->remove($typeName, $packageName); |
|
76 | $this->wasRemoved = true; |
|
77 | } |
|
78 | } |
|
79 | ||
80 | /** |
|
81 | * {@inheritdoc} |