add strings for user interfaces
authorDuncan Mac-Vicar P <dmacvicar@suse.de>
Wed, 13 Aug 2008 16:27:28 +0000 (16:27 +0000)
committerDuncan Mac-Vicar P <dmacvicar@suse.de>
Wed, 13 Aug 2008 16:27:28 +0000 (16:27 +0000)
zypp/VendorSupportOptions.cc
zypp/VendorSupportOptions.h

index 4da465b..8839906 100644 (file)
@@ -1,9 +1,61 @@
 
 #include "zypp/VendorSupportOptions.h"
+#include "zypp/base/Gettext.h"
 
 namespace zypp
 {
     
+std::string
+asUserString( VendorSupportOption opt )
+{
+    switch (opt)
+    {
+    case VendorSupportUnknown:
+        return _("unknown");
+        break;
+    case VendorSupportUnsupported:
+        return _("unsupported");
+        break;        
+    case VendorSupportLevel1:
+        return _("Level 1");
+        break;
+    case VendorSupportLevel2:
+        return _("Level 2");
+        break;
+    case VendorSupportLevel3:
+        return _("Level 3");
+        break;
+    case VendorSupportACC:
+        return _("Additional Customer Contract Necessary");
+    }
+    return _("invalid");
+}
+    
+std::string asUserStringDescription( VendorSupportOption opt )
+{
+    switch (opt)
+    {
+    case VendorSupportUnknown:
+        return _("The level of support is unspecified");
+        break;
+    case VendorSupportUnsupported:
+        return _("The vendor does not provide support.");
+        break;        
+    case VendorSupportLevel1:
+        return _("Problem determination, which means technical support designed to provide compatibility information, installation assistance, usage support, on-going maintenance and basic troubleshooting. Level 1 Support is not intended to correct product defect errors.");
+        break;
+    case VendorSupportLevel2:
+        return _("Problem isolation, which means technical support designed to duplicate customer problems, isolate problem area and provide resolution for problems not resolved by Level 1 Support.");
+        break;
+    case VendorSupportLevel3:
+        return _("Problem resolution, which means technical support designed to resolve complex problems by engaging engineering in resolution of product defects which have been identified by Level 2 Support.");
+        break;
+    case VendorSupportACC:
+        return _("An additional customer contract is necessary for getting support.");
+    }
+    return _("Unknown support option. Description not available");
+}
+    
+}
 
 
-}
index a922f2f..7233af7 100644 (file)
@@ -12,6 +12,7 @@
 #ifndef ZYPP_VendorSupportOptions_H
 #define ZYPP_VendorSupportOptions_H
 
+#include <string>
 #include "zypp/base/Flags.h"
 
 namespace zypp
@@ -52,12 +53,35 @@ namespace zypp
        *
        * May have different semantics for different organizations.
        */              
-      VendorSupportLevel3      = 0x0004
+      VendorSupportLevel3      = 0x0004,
+      /**
+       * Additional Customer Contract necessary
+       */
+      VendorSupportACC         = 0x0008
     };
 
     // Make a flag set for this
     ZYPP_DECLARE_FLAGS(VendorSupportOptions,VendorSupportOption);
     ZYPP_DECLARE_OPERATORS_FOR_FLAGS(VendorSupportOptions)
+
+    /**
+     * converts the support option to a name intended to be printed
+     * to the user.
+     *
+     * Note the description is based in the way Novell defines the support
+     * levels, and the semantics may be different for other vendors.
+     */
+    std::string asUserString( VendorSupportOption );
+
+    /**
+     * converts the support option to a description intended to be printed
+     * to the user.
+     *
+     * Note the description is based in the way Novell defines the support
+     * levels, and the semantics may be different for other vendors.
+     */
+    std::string asUserStringDescription( VendorSupportOption );
+
 }
 
 #endif