Example #1
0
 /**
  * Gets a module DOM element from a module
  * @param zibo\library\xml\dom\Document $dom the document of the new element
  * @param zibo\admin\model\Module $module The module for the DOM element
  * @param string $elementName Name of the new module DOM element
  * @return DOMElement DOM element representing the provided module
  */
 private function getModuleElementFromModule(Document $dom, Module $module, $elementName)
 {
     $element = $dom->createElementNS(self::XML_NAMESPACE, $elementName);
     $element->setAttribute(self::ATTRIBUTE_NAMESPACE, $module->getNamespace());
     $element->setAttribute(self::ATTRIBUTE_NAME, $module->getName());
     $element->setAttribute(self::ATTRIBUTE_VERSION, $module->getVersion());
     $ziboVersion = $module->getZiboVersion();
     if (!empty($ziboVersion)) {
         $element->setAttribute(self::ATTRIBUTE_VERSION_ZIBO, $ziboVersion);
     }
     $path = $module->getPath();
     if (!empty($path)) {
         $element->setAttribute(self::ATTRIBUTE_PATH, $path->getPath());
     }
     $dependencies = $module->getDependencies();
     foreach ($dependencies as $dependency) {
         $dependencyElement = $this->getModuleElementFromModule($dom, $dependency, self::TAG_DEPENDENCY);
         $element->appendChild($dependencyElement);
     }
     return $element;
 }
Example #2
0
 /**
  * Removes the usage of the provided module from all the module's dependencies
  * @param Module $module
  * @return null
  */
 private function removeUsage(Module $module)
 {
     $moduleDependencies = $module->getDependencies();
     foreach ($moduleDependencies as $moduleDependency) {
         $installedDependency = $this->getModule($moduleDependency->getNamespace(), $moduleDependency->getName());
         $installedDependency->removeUsage($module);
     }
 }
Example #3
0
 /**
  * Gets an array with the full module information
  * @param zibo\admin\module\Module $module The module information
  * @return array Array with the attributes of the module
  */
 private function getFullModuleArray(Module $module)
 {
     $dependencies = $this->getDependencyArray($module->getDependencies());
     $versions = $this->getVersionArray($module->getVersions());
     $array = $this->getModuleArray($module);
     if ($dependencies) {
         $array[RepositoryModule::TAG_DEPENDENCY] = $dependencies;
     }
     if ($versions) {
         $array[RepositoryModule::TAG_VERSIONS] = $versions;
     }
     return $array;
 }