From f92a0cdd8ff2063317081b0c60607cf46e86e8d2 Mon Sep 17 00:00:00 2001 From: Nilesh Ghodekar Date: Thu, 30 Mar 2023 17:09:11 +0100 Subject: [PATCH 1/2] GitHub Issue #16 --- src/MIMConfigDocumenter/MetaverseDocumenter.cs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/MIMConfigDocumenter/MetaverseDocumenter.cs b/src/MIMConfigDocumenter/MetaverseDocumenter.cs index 6959059..60b1843 100644 --- a/src/MIMConfigDocumenter/MetaverseDocumenter.cs +++ b/src/MIMConfigDocumenter/MetaverseDocumenter.cs @@ -776,23 +776,25 @@ private void FillMetaverseObjectDeletionRuleDataSet(string objectType, bool pilo if (deletionRule != null) { var deletionRuleType = (string)deletionRule.Attribute("type") ?? string.Empty; + var deletionRuleTypeText = deletionRuleType; if (deletionRuleType.Equals("scripted", StringComparison.OrdinalIgnoreCase)) { - deletionRuleType = "Rules Extension"; + deletionRuleTypeText = "Rules Extension"; } else if (deletionRuleType.Equals("declared-any", StringComparison.OrdinalIgnoreCase)) { - deletionRuleType = "Delete the metaverse object when connector from any of the following management agents is disconnected"; + deletionRuleTypeText = "Delete the metaverse object when connector from any of the following management agents is disconnected"; } else if (deletionRuleType.Equals("declared-last", StringComparison.OrdinalIgnoreCase)) { - deletionRuleType = "Delete the metaverse object when the last connector is disconnected. Ignore from the following list of management agents"; + deletionRuleTypeText = "Delete the metaverse object when the last connector is disconnected. Ignore from the following list of management agents"; } - Documenter.AddRow(table, new object[] { objectType, deletionRuleType }); + Documenter.AddRow(table, new object[] { objectType, deletionRuleTypeText }); + var connectorList = deletionRuleType.Equals("declared-last") ? deletionRule.Elements("exclude-ma") : deletionRule.Elements("src-ma"); - foreach (var connector in deletionRule.Elements("src-ma")) + foreach (var connector in connectorList) { var connectorId = ((string)connector ?? string.Empty).ToUpperInvariant(); var connectorName = (string)config.XPathSelectElement(Documenter.GetConnectorXmlRootXPath(pilotConfig) + "/ma-data[translate(id, '" + Documenter.LowercaseLetters + "', '" + Documenter.UppercaseLetters + "') = '" + connectorId + "']/name"); From 15c9aeffabe48218ed23edd479d178714ad3cc01 Mon Sep 17 00:00:00 2001 From: Nilesh Ghodekar Date: Thu, 30 Mar 2023 17:09:21 +0100 Subject: [PATCH 2/2] GitHub Issue #20 --- src/MIMConfigDocumenter/ConnectorDocumenter.cs | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/MIMConfigDocumenter/ConnectorDocumenter.cs b/src/MIMConfigDocumenter/ConnectorDocumenter.cs index 9febb1b..7615eb3 100644 --- a/src/MIMConfigDocumenter/ConnectorDocumenter.cs +++ b/src/MIMConfigDocumenter/ConnectorDocumenter.cs @@ -1853,7 +1853,7 @@ orderby metaverseAttribute { var allImportFlowsXPath = Documenter.GetMetaverseXmlRootXPath(pilotConfig) + "/mv-data/import-attribute-flow/import-flow-set[@mv-object-type = '" + this.currentMetaverseObjectType + "']/import-flows[@mv-attribute = '" + metaverseAttribute + "']"; var precedenceType = config.XPathSelectElement(allImportFlowsXPath) != null ? (string)config.XPathSelectElement(allImportFlowsXPath).Attribute("type") : string.Empty; - var allImportFlows = config.XPathSelectElements(allImportFlowsXPath + "/import-flow"); + var allImportFlows = config.XPathSelectElements(allImportFlowsXPath + "/import-flow[@cd-object-type = '" + this.currentDataSourceObjectType + "' and " + connectorIdXPath + "]"); var importFlowRank = 0; var importFlowIndex = 0; @@ -1864,12 +1864,6 @@ orderby metaverseAttribute var importFlowConnectorId = ((string)importFlow.Attribute("src-ma") ?? string.Empty).ToUpperInvariant(); importFlowRank = precedenceType.Equals("ranked", StringComparison.OrdinalIgnoreCase) ? importFlowRank + 1 : 0; - - if (importFlowConnectorId != connectorId) - { - continue; - } - importFlowRuleIndex = metaverseAttribute == previousMetaverseAttribute ? importFlowRuleIndex + 1 : 0; previousMetaverseAttribute = metaverseAttribute;