瀏覽代碼

New option for MFNodes: define_if_not_exists !!

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@2402 a333f486-631f-4898-b8df-5754b55c2be0
dflaven 12 年之前
父節點
當前提交
f789fe6990
共有 1 個文件被更改,包括 14 次插入0 次删除
  1. 14 0
      setup/modelfactory.class.inc.php

+ 14 - 0
setup/modelfactory.class.inc.php

@@ -248,6 +248,20 @@ class ModelFactory
 			}			
 			break;
 
+		case 'define_if_not_exists':
+			$oExistingNode = $oTargetParentNode->FindExistingChildNode($oSourceNode);
+			if ($oExistingNode == null)
+			{
+				// Same as 'define' below
+				$oTargetNode = $oTarget->ImportNode($oSourceNode, true);
+				$oTargetParentNode->AddChildNode($oTargetNode);	
+			}
+			else
+			{
+				$oTargetNode = $oExistingNode;
+			}
+			break;
+			
 		case 'define':
 			// New node - copy child nodes as well
 			$oTargetNode = $oTarget->ImportNode($oSourceNode, true);