(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           const MI_Char* Result_ToString(MI_Result result)
 29           {
 30               size_t i;
 31               struct Pair
 32               {
 33                   MI_Result result;
 34                   const MI_Char* str;
 35               };
 36               static struct Pair _pairs[] =
 37               {
 38                   {
 39                       MI_RESULT_OK,
 40                       MI_T("MI_RESULT_OK")
 41                   },
 42                   {
 43 mike  1.1             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                       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 mike  1.1             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                   },
 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 mike  1.1         },
 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                   {
 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 mike  1.1         {
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                       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 mike  1.1             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                       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 mike  1.1             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                   },
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 mike  1.1     {
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