56 return $this->packageManager->isPackageActive($offset);
69 $package = $this->packageManager->getPackage($offset);
70 $packageKey = $package->getPackageKey();
71 if (!isset($this->loadedExtensionArrayElementCache[$packageKey])) {
74 return $this->loadedExtensionArrayElementCache[$packageKey];
87 throw new \InvalidArgumentException(
'The array $GLOBALS[\'TYPO3_LOADED_EXT\'] may not be modified.', 1361915596);
99 throw new \InvalidArgumentException(
'The array $GLOBALS[\'TYPO3_LOADED_EXT\'] may not be modified.', 1361915610);
110 return serialize($this->loadedExtensionArrayElementCache);
122 $this->loadedExtensionArrayElementCache =
unserialize($serialized);
133 return count($this->packageManager->getActivePackages());
144 return $this->
offsetGet($this->iteratorPosition);
152 public function next()
154 $packageKeys = array_keys($this->packageManager->getActivePackages());
155 $position = array_search($this->iteratorPosition, $packageKeys);
156 if (isset($packageKeys[$position + 1])) {
157 $this->iteratorPosition = $packageKeys[$position + 1];
159 $this->iteratorPosition =
null;
169 public function key()
192 $keys = array_keys($this->packageManager->getActivePackages());
193 $this->iteratorPosition = array_shift($keys);
201 $this->loadedExtensionArrayElementCache = [];
212 return $this->packageManager !==
null;
221 function ($loadedExtElement) {
222 return $loadedExtElement->toArray();
224 iterator_to_array($this)