Files
iTop/datamodels/2.x/itop-bridge-virtualization-storage/datamodel.itop-bridge-virtualization-storage.xml
Romain Quetiez e64b6d1d98 XML Modelization of the relations: reworked toward an asymetric definition (downstream: A impacts B, upstream: B depends on A)
- The queries are developped at runtime (cache)
- More complex algorithm to take into account the legacy type of specification (GetRelationQueries)
- New dictionary naming convention (preserving backward compatibility): "VerbUp" to be replaced by "DownStream
- Temporary hacks to preserve the relation 'depends on', until we have a new GUI
- Special handling for the relation LogicalVolume impacts VirtualDevice which had to be implemented in the bridge module
- Improved the backward compatibility by leaving legacy methods GetRelationQueries returning an empty definition, allowing for an eventual XML redefinition

SVN:trunk[3542]
2015-04-10 10:09:22 +00:00

106 lines
3.2 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2">
<classes>
<class id="lnkVirtualDeviceToVolume" _delta="define">
<parent>cmdbAbstractObject</parent>
<properties>
<is_link>1</is_link>
<category>bizmodel,configmgmt</category>
<abstract>false</abstract>
<key_type>autoincrement</key_type>
<db_table>lnkvirtualdevicetovolume</db_table>
<db_key_field>id</db_key_field>
<db_final_class_field/>
<naming>
<attributes>
<attribute id="volume_id"/>
</attributes>
</naming>
<display_template/>
<icon/>
<reconciliation>
<attributes>
</attributes>
</reconciliation>
</properties>
<fields>
<field id="volume_id" xsi:type="AttributeExternalKey">
<sql>volume_id</sql>
<target_class>LogicalVolume</target_class>
<is_null_allowed>false</is_null_allowed>
<on_target_delete>DEL_AUTO</on_target_delete>
</field>
<field id="volume_name" xsi:type="AttributeExternalField">
<extkey_attcode>volume_id</extkey_attcode>
<target_attcode>name</target_attcode>
</field>
<field id="virtualdevice_id" xsi:type="AttributeExternalKey">
<sql>virtualdevice_id</sql>
<target_class>VirtualDevice</target_class>
<is_null_allowed>false</is_null_allowed>
<on_target_delete>DEL_AUTO</on_target_delete>
</field>
<field id="virtualdevice_name" xsi:type="AttributeExternalField">
<extkey_attcode>virtualdevice_id</extkey_attcode>
<target_attcode>name</target_attcode>
</field>
<field id="size_used" xsi:type="AttributeString">
<sql>size_used</sql>
<default_value/>
<is_null_allowed>true</is_null_allowed>
</field>
</fields>
<methods/>
<presentation>
<details>
<items>
<item id="volume_id">
<rank>10</rank>
</item>
<item id="virtualdevice_id">
<rank>20</rank>
</item>
<item id="size_used">
<rank>30</rank>
</item>
</items>
</details>
<search>
<items>
<item id="volume_id">
<rank>10</rank>
</item>
<item id="virtualdevice_id">
<rank>20</rank>
</item>
</items>
</search>
<list>
<items>
<item id="volume_id">
<rank>10</rank>
</item>
<item id="virtualdevice_id">
<rank>20</rank>
</item>
<item id="size_used">
<rank>30</rank>
</item>
</items>
</list>
</presentation>
</class>
<class id="LogicalVolume">
<relations>
<relation id="impacts">
<neighbours>
<neighbour id="VirtualDevice" _delta="define">
<attribute>virtualdevices_list</attribute>
</neighbour>
</neighbours>
</relation>
</relations>
</class>
</classes>
</itop_design>