osaf/tools/safimm/immcfg/imm_import.cc     |  5 ++++-
 osaf/tools/safimm/immdump/imm_xmlw_dump.cc |  9 +++++++++
 osaf/tools/safimm/immlist/imm_list.c       |  6 ++++++
 3 files changed, 19 insertions(+), 1 deletions(-)


Add support for strong default to IMM tools.

diff --git a/osaf/tools/safimm/immcfg/imm_import.cc 
b/osaf/tools/safimm/immcfg/imm_import.cc
--- a/osaf/tools/safimm/immcfg/imm_import.cc
+++ b/osaf/tools/safimm/immcfg/imm_import.cc
@@ -1384,7 +1384,8 @@ static bool loadXsd(const xmlChar** attr
                     strcmp(value, "SA_INITIALIZED") && strcmp(value, 
"SA_PERSISTENT") &&
                     strcmp(value, "SA_CACHED") && strcmp(value, "SA_NOTIFY") &&
                     strcmp(value, "SA_NO_DUPLICATES") && strcmp(value, 
"SA_NO_DANGLING") &&
-                    strcmp(value, "SA_DN") && strcmp(value, 
"SA_DEFAULT_REMOVED")) {
+                    strcmp(value, "SA_DN") && strcmp(value, 
"SA_DEFAULT_REMOVED") &&
+                    strcmp(value, "SA_STRONG_DEFAULT")) {
                 attrFlagSet.insert(value);
             }
         }
@@ -2062,6 +2063,8 @@ static SaImmAttrFlagsT charsToFlagsHelpe
                return SA_IMM_ATTR_DN;
        } else if (len == strlen("SA_DEFAULT_REMOVED") && strncmp((const 
char*)str, "SA_DEFAULT_REMOVED", len) == 0) {
                return SA_IMM_ATTR_DEFAULT_REMOVED;
+       } else if (len == strlen("SA_STRONG_DEFAULT") && strncmp((const 
char*)str, "SA_STRONG_DEFAULT", len) == 0) {
+               return SA_IMM_ATTR_STRONG_DEFAULT;
        }
 
        std::string flag((char *)str, len);
diff --git a/osaf/tools/safimm/immdump/imm_xmlw_dump.cc 
b/osaf/tools/safimm/immdump/imm_xmlw_dump.cc
--- a/osaf/tools/safimm/immdump/imm_xmlw_dump.cc
+++ b/osaf/tools/safimm/immdump/imm_xmlw_dump.cc
@@ -825,6 +825,15 @@ void flagsToXMLw(SaImmAttrDefinitionT_2*
         }
     }
 
+    if (flags & SA_IMM_ATTR_STRONG_DEFAULT)
+    {
+        if(xmlTextWriterWriteElement(writer, (xmlChar*) "flag",
+           (xmlChar*) "SA_STRONG_DEFAULT") < 0 ) {
+            std::cout << "Error at xmlTextWriterWriteElement (flag - 
SA_STRONG_DEFAULT)" << std::endl;
+            exit(1);
+        }
+    }
+
 }
 
 void typeToXMLw(SaImmAttrDefinitionT_2* p, xmlTextWriterPtr writer)
diff --git a/osaf/tools/safimm/immlist/imm_list.c 
b/osaf/tools/safimm/immlist/imm_list.c
--- a/osaf/tools/safimm/immlist/imm_list.c
+++ b/osaf/tools/safimm/immlist/imm_list.c
@@ -333,6 +333,9 @@ static void display_class_definition(con
                        if (attrDefinition->attrFlags & 
SA_IMM_ATTR_DEFAULT_REMOVED)
                                printf(", DEFAULT_REMOVED");
 
+                       if (attrDefinition->attrFlags & 
SA_IMM_ATTR_STRONG_DEFAULT)
+                               printf(", STRONG_DEFAULT");
+
                } else if (attrDefinition->attrFlags & SA_IMM_ATTR_RUNTIME) {
                        if (attrDefinition->attrDefaultValue != NULL) {
                                printf(" = ");
@@ -366,6 +369,9 @@ static void display_class_definition(con
 
                        if (attrDefinition->attrFlags & 
SA_IMM_ATTR_DEFAULT_REMOVED)
                                printf(", DEFAULT_REMOVED");
+
+                       if (attrDefinition->attrFlags & 
SA_IMM_ATTR_STRONG_DEFAULT)
+                               printf(", STRONG_DEFAULT");
                }
 
                printf("}\n");

------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to