(file) Return to result.c CVS log (file) (dir) Up to [OMI] / omi / base

  1 mike  1.1 /*
  2           **==============================================================================
  3           **
  4           ** Open Management Infrastructure (OMI)
  5           **
  6           ** Copyright (c) Microsoft Corporation
  7           ** 
  8           ** Licensed under the Apache License, Version 2.0 (the "License"); you may not 
  9           ** use this file except in compliance with the License. You may obtain a copy 
 10           ** of the License at 
 11           **
 12           **     http://www.apache.org/licenses/LICENSE-2.0 
 13           **
 14           ** THIS CODE IS PROVIDED *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 15           ** KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED 
 16           ** WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, 
 17           ** MERCHANTABLITY OR NON-INFRINGEMENT. 
 18           **
 19           ** See the Apache 2 License for the specific language governing permissions 
 20           ** and limitations under the License.
 21           **
 22 mike  1.1 **==============================================================================
 23           */
 24           
 25           #include <stdarg.h>
 26           #include "result.h"
 27           
 28 krisbash 1.3 const ZChar* Result_ToString(MI_Result result)
 29 mike     1.1 {
 30                  size_t i;
 31                  struct Pair
 32                  {
 33                      MI_Result result;
 34 krisbash 1.3         const ZChar* str;
 35 mike     1.1     };
 36                  static struct Pair _pairs[] =
 37                  {
 38                      {
 39                          MI_RESULT_OK,
 40                          MI_T("MI_RESULT_OK")
 41                      },
 42                      {
 43                          MI_RESULT_FAILED,
 44                          MI_T("MI_RESULT_FAILED")
 45                      },
 46                      {
 47                          MI_RESULT_ACCESS_DENIED,
 48                          MI_T("MI_RESULT_ACCESS_DENIED")
 49                      },
 50                      {
 51                          MI_RESULT_INVALID_NAMESPACE,
 52                          MI_T("MI_RESULT_INVALID_NAMESPACE")
 53                      },
 54                      {
 55                          MI_RESULT_INVALID_PARAMETER,
 56 mike     1.1             MI_T("MI_RESULT_INVALID_PARAMETER")
 57                      },
 58                      {
 59                          MI_RESULT_INVALID_CLASS,
 60                          MI_T("MI_RESULT_INVALID_CLASS")
 61                      },
 62                      {
 63                          MI_RESULT_NOT_FOUND,
 64                          MI_T("MI_RESULT_NOT_FOUND")
 65                      },
 66                      {
 67                          MI_RESULT_NOT_SUPPORTED,
 68                          MI_T("MI_RESULT_NOT_SUPPORTED")
 69                      },
 70                      {
 71                          MI_RESULT_CLASS_HAS_CHILDREN,
 72                          MI_T("MI_RESULT_CLASS_HAS_CHILDREN")
 73                      },
 74                      {
 75                          MI_RESULT_CLASS_HAS_INSTANCES,
 76                          MI_T("MI_RESULT_CLASS_HAS_INSTANCES")
 77 mike     1.1         },
 78                      {
 79                          MI_RESULT_INVALID_SUPERCLASS,
 80                          MI_T("MI_RESULT_INVALID_SUPERCLASS")
 81                      },
 82                      {
 83                          MI_RESULT_ALREADY_EXISTS,
 84                          MI_T("MI_RESULT_ALREADY_EXISTS")
 85                      },
 86                      {
 87                          MI_RESULT_NO_SUCH_PROPERTY,
 88                          MI_T("MI_RESULT_NO_SUCH_PROPERTY")
 89                      },
 90                      {
 91                          MI_RESULT_TYPE_MISMATCH,
 92                          MI_T("MI_RESULT_TYPE_MISMATCH")
 93                      },
 94                      {
 95                          MI_RESULT_QUERY_LANGUAGE_NOT_SUPPORTED,
 96                          MI_T("MI_RESULT_QUERY_LANGUAGE_NOT_SUPPORTED")
 97                      },
 98 mike     1.1         {
 99                          MI_RESULT_INVALID_QUERY,
100                          MI_T("MI_RESULT_INVALID_QUERY")
101                      },
102                      {
103                          MI_RESULT_METHOD_NOT_AVAILABLE,
104                          MI_T("MI_RESULT_METHOD_NOT_AVAILABLE")
105                      },
106                      {
107                          MI_RESULT_METHOD_NOT_FOUND,
108                          MI_T("MI_RESULT_METHOD_NOT_FOUND")
109                      },
110                      {
111                          MI_RESULT_NAMESPACE_NOT_EMPTY,
112                          MI_T("MI_RESULT_NAMESPACE_NOT_EMPTY")
113                      },
114                      {
115                          MI_RESULT_INVALID_ENUMERATION_CONTEXT,
116                          MI_T("MI_RESULT_INVALID_ENUMERATION_CONTEXT")
117                      },
118                      {
119 mike     1.1             MI_RESULT_INVALID_OPERATION_TIMEOUT,
120                          MI_T("MI_RESULT_INVALID_OPERATION_TIMEOUT")
121                      },
122                      {
123                          MI_RESULT_PULL_HAS_BEEN_ABANDONED,
124                          MI_T("MI_RESULT_PULL_HAS_BEEN_ABANDONED")
125                      },
126                      {
127                          MI_RESULT_PULL_CANNOT_BE_ABANDONED,
128                          MI_T("MI_RESULT_PULL_CANNOT_BE_ABANDONED")
129                      },
130                      {
131                          MI_RESULT_FILTERED_ENUMERATION_NOT_SUPPORTED,
132                          MI_T("MI_RESULT_FILTERED_ENUMERATION_NOT_SUPPORTED")
133                      },
134                      {
135                          MI_RESULT_CONTINUATION_ON_ERROR_NOT_SUPPORTED,
136                          MI_T("MI_RESULT_CONTINUATION_ON_ERROR_NOT_SUPPORTED")
137                      },
138                      {
139                          MI_RESULT_SERVER_LIMITS_EXCEEDED,
140 mike     1.1             MI_T("MI_RESULT_SERVER_LIMITS_EXCEEDED")
141                      },
142                      {
143                          MI_RESULT_SERVER_IS_SHUTTING_DOWN,
144                          MI_T("MI_RESULT_SERVER_IS_SHUTTING_DOWN")
145                      },
146                      {
147                          MI_RESULT_CANCELED,
148                          MI_T("MI_RESULT_CANCELED")
149                      },
150                      {
151                          MI_RESULT_OPEN_FAILED,
152                          MI_T("MI_RESULT_OPEN_FAILED")
153                      },
154                      {
155                          MI_RESULT_INVALID_CLASS_HIERARCHY,
156                          MI_T("MI_RESULT_INVALID_CLASS_HIERARCHY")
157                      },
158                      {
159                          MI_RESULT_WOULD_BLOCK,
160                          MI_T("MI_RESULT_WOULD_BLOCK")
161 mike     1.1         },
162                      {
163                          MI_RESULT_TIME_OUT,
164                          MI_T("MI_RESULT_TIME_OUT")
165                      },
166                  };
167              
168                  for (i = 0; i < MI_COUNT(_pairs); i++)
169                  {
170                      if (result == _pairs[i].result)
171                          return _pairs[i].str;
172                  }
173              
174                  /* Not found! */
175                  return MI_T("");
176              }

ViewCVS 0.9.2