Itop design: added an intermediate root node above 'classes'

SVN:trunk[1936]
This commit is contained in:
Romain Quetiez
2012-04-03 10:09:52 +00:00
parent 7ef5c8ddd7
commit 009a91ab59
10 changed files with 8997 additions and 8974 deletions

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Attachment" category="addon,bizmodel" parent="DBObject" abstract="false" key_type="autoincrement" db_table="attachment" db_key_field="id" db_final_class_field=""> <class name="Attachment" category="addon,bizmodel" parent="DBObject" abstract="false" key_type="autoincrement" db_table="attachment" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -149,4 +150,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Change" category="bizmodel,searchable,changemgmt" parent="Ticket" abstract="true" key_type="autoincrement" db_table="change" db_key_field="id" db_final_class_field=""> <class name="Change" category="bizmodel,searchable,changemgmt" parent="Ticket" abstract="true" key_type="autoincrement" db_table="change" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -2956,4 +2957,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Organization" category="bizmodel,searchable,structure" parent="cmdbAbstractObject" abstract="false" key_type="autoincrement" db_table="organization" db_key_field="id" db_final_class_field=""> <class name="Organization" category="bizmodel,searchable,structure" parent="cmdbAbstractObject" abstract="false" key_type="autoincrement" db_table="organization" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -2893,4 +2894,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Incident" category="bizmodel,searchable,incidentmgmt" parent="ResponseTicket" abstract="false" key_type="autoincrement" db_table="ticket_incident" db_key_field="id" db_final_class_field=""> <class name="Incident" category="bizmodel,searchable,incidentmgmt" parent="ResponseTicket" abstract="false" key_type="autoincrement" db_table="ticket_incident" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -705,4 +706,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="KnownError" category="bizmodel,searchable,knownerrormgmt" parent="cmdbAbstractObject" abstract="false" key_type="autoincrement" db_table="known_error" db_key_field="id" db_final_class_field=""> <class name="KnownError" category="bizmodel,searchable,knownerrormgmt" parent="cmdbAbstractObject" abstract="false" key_type="autoincrement" db_table="known_error" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -178,4 +179,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Problem" category="bizmodel,searchable,problemmgmt" parent="Ticket" abstract="false" key_type="autoincrement" db_table="ticket_problem" db_key_field="id" db_final_class_field=""> <class name="Problem" category="bizmodel,searchable,problemmgmt" parent="Ticket" abstract="false" key_type="autoincrement" db_table="ticket_problem" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -430,4 +431,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="UserRequest" category="bizmodel,searchable,requestmgmt" parent="ResponseTicket" abstract="false" key_type="autoincrement" db_table="ticket_request" db_key_field="id" db_final_class_field=""> <class name="UserRequest" category="bizmodel,searchable,requestmgmt" parent="ResponseTicket" abstract="false" key_type="autoincrement" db_table="ticket_request" db_key_field="id" db_final_class_field="">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -667,4 +668,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Contract" category="bizmodel,searchable,servicemgmt" parent="cmdbAbstractObject" abstract="true" key_type="autoincrement" db_table="contract" db_key_field="id" db_final_class_field="finalclass"> <class name="Contract" category="bizmodel,searchable,servicemgmt" parent="cmdbAbstractObject" abstract="true" key_type="autoincrement" db_table="contract" db_key_field="id" db_final_class_field="finalclass">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -962,4 +963,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<classes> <itop_design>
<classes>
<class name="Ticket" category="bizmodel,searchable" parent="cmdbAbstractObject" abstract="true" key_type="autoincrement" db_table="ticket" db_key_field="id" db_final_class_field="finalclass"> <class name="Ticket" category="bizmodel,searchable" parent="cmdbAbstractObject" abstract="true" key_type="autoincrement" db_table="ticket" db_key_field="id" db_final_class_field="finalclass">
<properties> <properties>
<comment><![CDATA[/** <comment><![CDATA[/**
@@ -999,4 +1000,5 @@
</list> </list>
</presentation> </presentation>
</class> </class>
</classes> </classes>
</itop_design>

View File

@@ -270,6 +270,7 @@ class ModelFactory
{ {
protected $sRootDir; protected $sRootDir;
protected $oDOMDocument; protected $oDOMDocument;
protected $oRoot;
protected $oClasses; protected $oClasses;
static protected $aLoadedClasses; static protected $aLoadedClasses;
static protected $aWellKnownParents = array('DBObject', 'CMDBObject','cmdbAbstractObject'); static protected $aWellKnownParents = array('DBObject', 'CMDBObject','cmdbAbstractObject');
@@ -280,8 +281,10 @@ class ModelFactory
{ {
$this->sRootDir = $sRootDir; $this->sRootDir = $sRootDir;
$this->oDOMDocument = new DOMDocument('1.0', 'UTF-8'); $this->oDOMDocument = new DOMDocument('1.0', 'UTF-8');
$this->oRoot = $this->oDOMDocument->CreateElement('itop_design');
$this->oDOMDocument->AppendChild($this->oRoot);
$this->oClasses = $this->oDOMDocument->CreateElement('classes'); $this->oClasses = $this->oDOMDocument->CreateElement('classes');
$this->oDOMDocument->AppendChild($this->oClasses); $this->oRoot->AppendChild($this->oClasses);
self::$aLoadedClasses = array(); self::$aLoadedClasses = array();
self::$aLoadedModules = array(); self::$aLoadedModules = array();
} }
@@ -315,7 +318,7 @@ class ModelFactory
$oNode->SetAttribute('_source', $sXmlFile); $oNode->SetAttribute('_source', $sXmlFile);
} }
$oXPath = new DOMXPath($oDocument); $oXPath = new DOMXPath($oDocument);
$oNodeList = $oXPath->query('//classes/class'); $oNodeList = $oXPath->query('/itop_design/classes/class');
foreach($oNodeList as $oNode) foreach($oNodeList as $oNode)
{ {
if ($oNode->hasAttribute('parent')) if ($oNode->hasAttribute('parent'))
@@ -1109,10 +1112,12 @@ EOF
public function GetDelta() public function GetDelta()
{ {
$oDelta = new DOMDocument('1.0', 'UTF-8'); $oDelta = new DOMDocument('1.0', 'UTF-8');
$oRootNode = $oDelta->createElement('classes'); $oRootNode = $oDelta->createElement('itop_design');
$oDelta->appendChild($oRootNode); $oDelta->appendChild($oRootNode);
$oClasses = $oDelta->createElement('classes');
$oRootNode->appendChild($oClasses);
$this->_priv_ImportModifiedChildren($oDelta, $oRootNode, $this->oDOMDocument->firstChild); $this->_priv_ImportModifiedChildren($oDelta, $oClasses, $this->oDOMDocument->firstChild);
//file_put_contents($sXMLDestPath, $oDelta->saveXML()); //file_put_contents($sXMLDestPath, $oDelta->saveXML());
return $oDelta->saveXML(); return $oDelta->saveXML();
} }