Package DE_EPAGES::Installer::API::CartridgesXMLFilePatcher
patch Cartridges.xml file use a delete and a import file.
@EXPORT_OK |
Functions
- CartridgeDependencyError
- GetCartridgeDependencies
- GetCartridgePositions
- ReadCartridgesXmlFile
- ReadCartridgesXmlStruct
- SetCartridgePositions
- SortCartridgesXmlStruct
- deleteElements
- importElements
- new
CartridgeDependencyError
dies because Cartridges.xml/Dependencies.xml is corrupt
Syntax |
CartridgeDependencyError($DependentCartridges); |
Input |
|
GetCartridgeDependencies
finds dependencies for cartridges in $hCartridgesXml according to $ENV{EPAGES_CARTRIDGES}/<Cartridge>/Database/XML/Dependencies.xml
Syntax |
my ($DependentCartridges, $IndependentCartridges) = GetCartridgeDependencies($hCartridgesXml); |
Input |
|
Return |
|
GetCartridgePositions
finds cartidge positions for sorting
Syntax |
my $hCartridgePosition = GetCartridgePositions($DependentCartridges, $IndependentCartridges, $hFlags); |
Input |
|
Return |
|
ReadCartridgesXmlFile
writes info from Cartridges.xml into $hCartridgesXml
Syntax |
$hCartridgesXml = ReadCartridgesXmlFile($CartridgesXmlFile); |
Input |
|
Return |
|
ReadCartridgesXmlStruct
writes info from $CartridgesXMLStruct into $hCartridgesXml
Syntax |
$hCartridgesXml = ReadCartridgesXmlStruct($CartridgesXMLStruct); |
Input |
|
Return |
|
SetCartridgePositions
returns reordered cartridges in $hCartridgesXml according to $hCartridgePosition and hash with database type positions
Syntax |
my ($hReorderedCartridgesXml, $hDatabaseTypePosition) = SetCartridgePositions($hCartridgesXml, $hCartridgePosition); |
Input |
|
Return |
|
SortCartridgesXmlStruct
sorts <DatabaseType/> and <Cartridge/> elements in $CartridgesXMLStruct
Syntax |
SortCartridgesXmlStruct($CartridgesXMLStruct, $hFlags); |
Example |
my $ImportHandler = DE_EPAGES::Object::API::XMLStructureImportHandler->new(); my $CartridgesXml = "$ENV{EPAGES_CARTRIDGES}/Cartridges.xml"; my $CartridgesXMLStruct = $ImportHandler->getXMLStructure($CartridgesXml, {'XML-Type' => 'epages_cartridges_xml'}); SortCartridgesXmlStruct($CartridgesXMLStruct); my $ExportDriver = DE_EPAGES::Object::API::XMLStructureExportDriver->new(); $ExportDriver->exportXML($CartridgesXml, $CartridgesXMLStruct); |
Input |
|
deleteElements
delete all elements from delete file that have the attribute delete="1"
Syntax |
deleteElements($DeleteFile); |
Example |
$CartridgesXMLFilePatcher->deleteElements('del_Cartridges.xml'); |
Input |
|
importElements
Adds all elements from import file if not exists or update elements. If no import file is given it just reorders Cartridges.xml.
Syntax |
importElements($ImportFile, $hFlags); |
Example |
$CartridgesXMLFilePatcher->importElements('imp_Cartridges.xml'); $CartridgesXMLFilePatcher->importElements(undef, {check_dependencies => 1}); |
Input |
|
new
creates a new CartridgesXMLFilePatcher object
Syntax |
my $CartridgesXMLFilePatcher = DE_EPAGES::Installer::API::CartridgesXMLFilePatcher->new($CartridgesXMLFile); |
Example |
my $CartridgesXMLFilePatcher = DE_EPAGES::Installer::API::CartridgesXMLFilePatcher->new('Cartridges.xml'); |
Input |
|
Return |
|