1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     boss_Result.h
4 
5   Copyright (C)2009 Nintendo Co., Ltd.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   $Rev: 31623 $
14  *---------------------------------------------------------------------------*/
15 
16 #ifndef NN_BOSS_BOSS_RESULT_H_
17 #define NN_BOSS_BOSS_RESULT_H_
18 
19 #include <nn/Result.h>
20 #include <nn/assert.h>
21 
22 #ifdef __cplusplus
23 
24 /*! @file
25     @brief      BOSS ライブラリの Result 群です。
26 */
27 
28 namespace nn {
29 namespace boss {
30 
31     /*!
32      * @brief  APIの結果コード。boss::Resultのdescriptionとして設定され、boss APIの戻り値として使用される。
33     */
34     enum ResultCode
35     {
36         ER_NONE                         = 0     ,//!< エラー無し
37 
38     // Boss libraries Argument Error
39 
40         //ポインタNULLエラー
41         ER_INVALID_POLICY                       ,//!< ポリシィ情報のポインタがNULLです。
42         ER_INVALID_ACTION                       ,//!< タスクアクションのポインタがNULLです。
43         ER_INVALID_OPTION                       ,//!< タスクオプションのポインタがNULL,またはoptionコードが範囲外です。
44         ER_INVALID_APPIDLIST                    ,//!< アプリケーション一覧取得用のポインタがNULLです。
45         ER_INVALID_TASKID_LIST                  ,//!< タスクID一覧取得用のポインタがNULLです。
46         ER_INVALID_STEPID_LIST                  ,//!< ステップID一覧取得用のポインタがNULLです。
47         ER_INVALID_NSDATA_IDLIST                ,//!< NSデータリスト情報のポインタがNULLです。
48         ER_INVALID_TASKSTATUS                   ,//!< タスクステータスのポインタがNULLです。
49         ER_INVALID_PROPERTYVALUE                ,//!< プロパティ値のポインタがNULLです。
50         ER_INVALID_NEWARRIVAL_EVENT             ,//!< 新着イベントのポインタがNULLです。
51         ER_INVALID_NEWARRIVAL_FLAG              ,//!< 新着フラグのポインタがNULLです。
52         ER_INVALID_OPTOUT_FLAG                  ,//!< OPTOUTフラグのポインタがNULLです。
53         ER_INVALID_TASKERROR                    ,//!< タスクエラー情報のポインタがNULLです。
54         ER_INVALID_NSDATA_VALUE                 ,//!< NSDATA格納領域のポインタがNULLです。
55         ER_INVALID_NSDATA_INFO                  ,//!< NSDATA追加情報を格納するポインタがNULLです。
56         ER_INVALID_NSDATA_READFLAG              ,//!< NSDATAリードフラグの格納領域のポインタがNULLです。
57         ER_INVALID_NSDATA_TIME                  ,//!< NSDATAのUPDATEタイムの格納領域のポインタがNULLです。
58         ER_INVALID_NEXTEXECUTETIME              ,//!< NEXT EXECUTE TIME のMinutesのポインタがNULLです。
59         ER_HTTP_REQUEST_HEADER_POINTER_NULL     ,//!< HTTPリクエストヘッダのポインタがNULLです。
60         ER_INVALID_POLICYLIST_AVAILABILITY      ,//!< ポリシィリスト使用可能情報のポインタがNULLです。
61         ER_INVALID_TESTMODE_AVAILABILITY        ,//!< テストモード使用可能情報のポインタがNULLです。
62         ER_INVALID_CONFIG_PARENTAL_CONTROL      ,//!< ペアレンタルコントロール設定情報のポインタがNULLです。
63         ER_INVALID_CONFIG_EULA_AGREEMENT        ,//!< EULA同意済設定情報のポインタがNULLです。
64         ER_INVALID_POLICYLIST_ENV_ID            ,//!< ポリシィリストの環境IDのポインタがNULLです。
65         ER_INVALID_POLICYLIST_URL               ,//!< ポリシィリストのURL情報のポインタがNULLです。
66 
67         //パラメータ範囲チェックエラー
68         ER_INVALID_TASK_ID                      ,//!< タスクIDのポインタがNULLまたは0文字列です。
69         ER_INVALID_TASK_STEP                    ,//!< タスク登録でカレントステップIDが指定されました。
70         ER_INVALID_PROPERTYTYPE                 ,//!< プロパティタイプがサポート外です。
71         ER_INVALID_URL                          ,//!< URL文字列のポインタがNULLまたは0文字列です。
72         ER_INVALID_FILEPATH                     ,//!< ファイルパス文字列のポインタがNULLまたは0文字列です。
73         ER_INVALID_TASK_PRIORITY                ,//!< タスクプライオリティの指定が範囲外です。
74         ER_INVALID_TASK_TARGETDURATION          ,//!< タスク継続時間が範囲外です。
75         ER_ACTIONCODE_OUT_OF_RANGE              ,//!< タスクアクションコードが範囲外です。
76         ER_INVALID_NSDATA_SEEK_POSITION         ,//!< NSDATAのシーク位置がデータサイズを超えています。
77         ER_INVALID_MAX_HTTP_REQUEST_HEADER      ,//!< HTTPリクエストヘッダの登録数が最大数を超えました。
78         ER_INVALID_MAX_CLIENT_CERT              ,//!< ClientCertの最大設定数を超えました。
79         ER_INVALID_MAX_ROOT_CA                  ,//!< ルートCAの最大設定数を超えました。
80         ER_SCHEDULING_POLICY_OUT_OF_RANGE       ,//!< スケジュールポリシィが範囲外です
81         ER_APINFOTYPE_OUT_OF_RANGE              ,//!< AP情報タイプが範囲外です。
82         ER_TASK_PERMISSION_OUT_OF_RANGE         ,//!< タスク許可情報が範囲外です。
83 
84         // Boss lib Execute Error
85         ER_WAITFINISH_TIMEOUT                   ,//!< WaitFinish関数でタイムアウトになりました。
86         ER_WAITFINISH_TASK_NOT_DONE             ,//!< WaitFinish関数で対象タスクの終了結果がTASK_DONE以外で終了しました。
87 
88         // Boss lib/Process Execute Error
89         ER_IPC_NOT_SESSION_INITIALIZED          ,//!< IPCのセッションが初期化されていないか、権限不適合です。
90         ER_IPC_PROPERTY_SIZE_ERROR              ,//!< IPC内部処理においてプロパティサイズがエラーが発生しました。
91         ER_IPC_TOO_MANY_REQUESTS                ,//!< IPCのリクエストの数が多すぎます。(将来的な拡張用ですので使用できません)
92         ER_ALREADY_INITIALIZED                  ,//!< IPCは、すでに初期化済みです。
93 
94         // Boss Process Execute Error
95         ER_OUT_OF_MEMORY                        ,//!< メモリの不足しています。
96         ER_INVALID_NUMBER_OF_NSD                ,//!< NSA内のNSD数が最大数を超えました。
97         ER_NSDATA_INVALID_FORMAT                ,//!< NS Data フォーマット異常が検出されました。
98 
99         ER_APLI_NOT_EXIST                       ,//!< 指定されたアプリIDが見つかりません。
100         ER_TASK_NOT_EXIST                       ,//!< 指定されたタスクIDが見つかりません。
101         ER_TASK_STEP_NOT_EXIST                  ,//!< 指定されたタスクステップが見つかりません。
102         ER_APLI_ID_ALREADY_EXIST                ,//!< 既に同名アプリが登録されています。
103         ER_TASK_ID_ALREADY_EXIST                ,//!< 既に同名タスクが登録されています。
104         ER_TASK_STEP_ALREADY_EXIST              ,//!< 既に同名タスクステップが登録されています。
105         ER_INVALID_SEQUENCE                     ,//!< シーケンスエラー(タスク実行中のタスクのスタートなど)が検出されました。
106         ER_DATABASE_FULL                        ,//!< アプリID・タスク登録数が上限に達し、ストレージ登録やタスク登録ができません。
107         ER_CANT_UNREGISTER_TASK                 ,//!< タスク状態(たとえば、実行中・スケジュール済み)により、タスクの削除ができません。
108         ER_TASK_NOT_REGISTERED                  ,//!< データベースファイル中に登録されているはずのタスクが見つかりません。
109         ER_INVALID_FILEHANDLE                   ,//!< 不正なファイルハンドルです。
110         ER_INVALID_TASK_SCHEDULING_POLICY       ,//!< スケジュールポリシィリスト中に不正なキーワードが検出されました。
111         ER_INVALID_HTTP_REQUEST_HEADER          ,//!< オプションのHTTPリクエストヘッダ数が上限を超えて指定されました。
112         ER_INVALID_HEADTYPE                     ,//!< GetHeaderInfo関数で不正なヘッダタイプが指定されました。
113         ER_STORAGE_ACCESSPERMISSION             ,//!< ストレージのアクセス権がありません。
114         ER_STORAGE_INSUFFICIENCY                ,//!< ストレージの容量が不足しました。
115         ER_INVALID_APPID_STORAGE_NOTFOUND       ,//!< 該当のアプリIDに対応したストレージ登録がされていません。
116         ER_NSDATA_NOTFOUND                      ,//!< 指定されたNSDのDataが見つかりません。
117         ER_INVALID_NSDATA_GETHEAD_SIZE          ,//!< GetHeaderInfo関数で指定したヘッダタイプに対応するサイズが一致しません。
118         ER_NSDATA_LIST_SIZE_SHORTAGE            ,//!< NsDataIdListのサイズ不足(すべてのNSDシリアルIDを格納できなかった)
119         ER_NSDATA_LIST_UPDATED                  ,//!< 前回のリスト取得時以降に、BOSSストレージの対象NSD群が更新されました。
120         ER_NOT_CONNECT_AP_WITH_LOCATION         ,//!< アクセスポイントに接続されていません。
121         ER_NOT_CONNECT_NETWORK                  ,//!< ネットワークに接続されていません。
122         ER_INVALID_FRIENDCODE                   ,//!< Friendコード異常時のエラー。
123         ER_FILE_ACCESS                          ,//!< ファイルアクセスに失敗しました。内部で使用しているデータベースおよび、設定情報のアクセス時にシステムセーブデータの異常が発生しました。通常は起こりえません。システムセーブデータの初期化によって発生しなくなる可能性がありますが、初期化によってタスク情報がすべて(他アプリケーションが登録した情報も含め)削除されます。
124         ER_TASK_ALREADY_PAUSED                  ,//!< すでに停止(ポーズ中)されていた
125         ER_TASK_ALREADY_RESUMED                 ,//!< すでに再開(リジューム済み)されていた
126         ER_UNEXPECT                             ,//!< 予期しないエラーが発生しました。
127 
128         RESULT_CODE_LAST                        ,//!< この値は使用されません。
129         RESULT_CODE_MAX_VALUE = (0x1u << 10)
130 
131     };
132 
133     NN_DEFINE_RESULT_FUNC_LM(MakePermanentResult, Result::LEVEL_PERMANENT, Result::MODULE_NN_BOSS);
134     NN_DEFINE_RESULT_FUNC_LSM(MakeInternalResult, Result::LEVEL_STATUS, Result::SUMMARY_INTERNAL, Result::MODULE_NN_BOSS);
135     NN_DEFINE_RESULT_FUNC_LSM(MakeOutOfResourceResult, Result::LEVEL_PERMANENT, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_BOSS);
136     NN_DEFINE_RESULT_FUNC_LSM(MakeInvalidStateResult, Result::LEVEL_STATUS, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_BOSS);
137     NN_DEFINE_RESULT_FUNC_LSM(MakeCancelledResult, Result::LEVEL_STATUS, Result::SUMMARY_CANCELLED, Result::MODULE_NN_BOSS);
138     NN_DEFINE_RESULT_FUNC_LSM(MakeInvalidArgumentResult, Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_BOSS);
139     NN_DEFINE_RESULT_FUNC_LSM(MakeNothingHappenedResult, Result::LEVEL_PERMANENT, Result::SUMMARY_NOTHING_HAPPENED, Result::MODULE_NN_BOSS);
140     NN_DEFINE_RESULT_FUNC_LSM(MakeWouldBlockResult, Result::LEVEL_PERMANENT, Result::SUMMARY_WOULD_BLOCK, Result::MODULE_NN_BOSS);
141 
142 /*!
143   @name   Result 値
144   @{
145 */
146 
147 /*!
148     :category   Result
149     @class nn::boss::ResultInvalidPolicy
150     @brief ポリシィ情報のポインタがNULLです。
151 */
152     NN_DEFINE_RESULT_CONST_LSM(
153         ResultInvalidPolicy,
154         MakeInvalidArgumentResult, ER_INVALID_POLICY
155     );
156 
157 /*!
158     :category   Result
159     @class nn::boss::ResultInvalidAction
160     @brief タスクアクションのポインタがNULLです。
161 */
162     NN_DEFINE_RESULT_CONST_LSM(
163         ResultInvalidAction,
164         MakeInvalidArgumentResult, ER_INVALID_ACTION
165     );
166 
167 /*!
168     :category   Result
169     @class nn::boss::ResultInvalidOption
170     @brief タスクオプションのポインタがNULL,またはoptionコードが範囲外です。
171 */
172     NN_DEFINE_RESULT_CONST_LSM(
173         ResultInvalidOption,
174         MakeInvalidArgumentResult, ER_INVALID_OPTION
175     );
176 
177 /*!
178     :category   Result
179     @class nn::boss::ResultInvalidAppIdList
180     @brief アプリケーション一覧取得用のポインタがNULLです。
181 */
182     NN_DEFINE_RESULT_CONST_LSM(
183         ResultInvalidAppIdList,
184         MakeInvalidArgumentResult, ER_INVALID_APPIDLIST
185     );
186 
187 /*!
188     :category   Result
189     @class nn::boss::ResultInvalidTaskIdList
190     @brief タスクID一覧取得用のポインタがNULLです。
191 */
192     NN_DEFINE_RESULT_CONST_LSM(
193         ResultInvalidTaskIdList,
194         MakeInvalidArgumentResult, ER_INVALID_TASKID_LIST
195     );
196 
197 /*!
198     :category   Result
199     @class nn::boss::ResultInvalidStepIdList
200     @brief ステップID一覧取得用のポインタがNULLです。
201 */
202     NN_DEFINE_RESULT_CONST_LSM(
203         ResultInvalidStepIdList,
204         MakeInvalidArgumentResult, ER_INVALID_STEPID_LIST
205     );
206 
207 /*!
208     :category   Result
209     @class nn::boss::ResultInvalidNsDataIdList
210     @brief NSデータリスト情報のポインタがNULLです。
211 */
212     NN_DEFINE_RESULT_CONST_LSM(
213         ResultInvalidNsDataIdList,
214         MakeInvalidArgumentResult, ER_INVALID_NSDATA_IDLIST
215     );
216 
217 /*!
218     :category   Result
219     @class nn::boss::ResultInvalidTaskStatus
220     @brief タスクステータスのポインタがNULLです。
221 */
222     NN_DEFINE_RESULT_CONST_LSM(
223         ResultInvalidTaskStatus,
224         MakeInvalidStateResult, ER_INVALID_TASKSTATUS
225     );
226 
227 /*!
228     :category   Result
229     @class nn::boss::ResultInvalidPropertyValue
230     @brief プロパティ値のポインタがNULLです。
231 */
232     NN_DEFINE_RESULT_CONST_LSM(
233         ResultInvalidPropertyValue,
234         MakeInvalidArgumentResult, ER_INVALID_PROPERTYVALUE
235     );
236 
237 /*!
238     :category   Result
239     @class nn::boss::ResultInvalidNewArrivalEvent
240     @brief 新着イベントのポインタがNULLです。
241 */
242     NN_DEFINE_RESULT_CONST_LSM(
243         ResultInvalidNewArrivalEvent,
244         MakeInvalidArgumentResult, ER_INVALID_NEWARRIVAL_EVENT
245     );
246 
247 /*!
248     :category   Result
249     @class nn::boss::ResultInvalidNewArrivalFlag
250     @brief 新着フラグのポインタがNULLです。
251 */
252     NN_DEFINE_RESULT_CONST_LSM(
253         ResultInvalidNewArrivalFlag,
254         MakeInvalidArgumentResult, ER_INVALID_NEWARRIVAL_FLAG
255     );
256 
257 /*!
258     :category   Result
259     @class nn::boss::ResultInvalidOptoutFlag
260     @brief OPTOUTフラグのポインタがNULLです。
261 */
262     NN_DEFINE_RESULT_CONST_LSM(
263         ResultInvalidOptoutFlag,
264         MakeInvalidArgumentResult, ER_INVALID_OPTOUT_FLAG
265     );
266 
267 /*!
268     :category   Result
269     @class nn::boss::ResultInvalidTaskError
270     @brief タスクエラー情報のポインタがNULLです。
271 */
272     NN_DEFINE_RESULT_CONST_LSM(
273         ResultInvalidTaskError,
274         MakeInvalidStateResult, ER_INVALID_TASKERROR
275     );
276 
277 /*!
278     :category   Result
279     @class nn::boss::ResultInvalidNsDataValue
280     @brief NSDATA格納領域のポインタがNULLです。
281 */
282     NN_DEFINE_RESULT_CONST_LSM(
283         ResultInvalidNsDataValue,
284         MakeInvalidArgumentResult, ER_INVALID_NSDATA_VALUE
285     );
286 
287 /*!
288     :category   Result
289     @class nn::boss::ResultInvalidNsDataInfo
290     @brief NSDATA追加情報を格納するポインタがNULLです。
291 */
292     NN_DEFINE_RESULT_CONST_LSM(
293         ResultInvalidNsDataInfo,
294         MakeInvalidArgumentResult, ER_INVALID_NSDATA_INFO
295     );
296 
297 /*!
298     :category   Result
299     @class nn::boss::ResultInvalidNsDataReadFlag
300     @brief NSDATAリードフラグの格納領域のポインタがNULLです。
301 */
302     NN_DEFINE_RESULT_CONST_LSM(
303         ResultInvalidNsDataReadFlag,
304         MakeInvalidArgumentResult, ER_INVALID_NSDATA_READFLAG
305     );
306 
307 /*!
308     :category   Result
309     @class nn::boss::ResultInvalidNsDataTime
310     @brief NSDATAのUPDATEタイムの格納領域のポインタがNULLです。
311 */
312     NN_DEFINE_RESULT_CONST_LSM(
313         ResultInvalidNsDataTime,
314         MakeInvalidArgumentResult, ER_INVALID_NSDATA_TIME
315     );
316 
317 /*!
318     :category   Result
319     @class nn::boss::ResultInvalidNextExecuteTime
320     @brief NEXT EXECUTE TIME のMinutesのポインタがNULLです。
321 */
322     NN_DEFINE_RESULT_CONST_LSM(
323         ResultInvalidNextExecuteTime,
324         MakeInvalidArgumentResult, ER_INVALID_NEXTEXECUTETIME
325     );
326 
327 /*!
328     :category   Result
329     @class nn::boss::ResultHttpRequestHeaderPointerNull
330     @brief HTTPリクエストヘッダのポインタがNULLです。
331 */
332     NN_DEFINE_RESULT_CONST_LSM(
333         ResultHttpRequestHeaderPointerNull,
334         MakeInvalidArgumentResult, ER_HTTP_REQUEST_HEADER_POINTER_NULL
335     );
336 
337 /*!
338     :category   Result
339     @class nn::boss::ResultInvalidPolicyListAvailability
340     @brief ポリシィリスト使用可能情報のポインタがNULLです。
341 */
342     NN_DEFINE_RESULT_CONST_LSM(
343         ResultInvalidPolicyListAvailability,
344         MakeInvalidArgumentResult, ER_INVALID_POLICYLIST_AVAILABILITY
345     );
346 
347 /*!
348     :category   Result
349     @class nn::boss::ResultInvalidTestModeAvailability
350     @brief テストモード使用可能情報のポインタがNULLです。
351 */
352     NN_DEFINE_RESULT_CONST_LSM(
353         ResultInvalidTestModeAvailability,
354         MakeInvalidArgumentResult, ER_INVALID_TESTMODE_AVAILABILITY
355     );
356 
357 /*!
358     :category   Result
359     @class nn::boss::ResultInvalidConfigParentalControl
360     @brief ペアレンタルコントロール設定情報のポインタがNULLです。
361 */
362     NN_DEFINE_RESULT_CONST_LSM(
363         ResultInvalidConfigParentalControl,
364         MakeInvalidArgumentResult, ER_INVALID_CONFIG_PARENTAL_CONTROL
365     );
366 
367 /*!
368     :category   Result
369     @class nn::boss::ResultInvalidConfigEulaAgreement
370     @brief EULA同意済設定情報のポインタがNULLです。
371 */
372     NN_DEFINE_RESULT_CONST_LSM(
373         ResultInvalidConfigEulaAgreement,
374         MakeInvalidArgumentResult, ER_INVALID_CONFIG_EULA_AGREEMENT
375     );
376 
377 /*!
378     :category   Result
379     @class nn::boss::ResultInvalidPolicyListEnvId
380     @brief ポリシィリストの環境IDのポインタがNULLです。
381 */
382     NN_DEFINE_RESULT_CONST_LSM(
383         ResultInvalidPolicyListEnvId,
384         MakeInvalidArgumentResult, ER_INVALID_POLICYLIST_ENV_ID
385     );
386 
387 /*!
388     :category   Result
389     @class nn::boss::ResultInvalidPolicyListUrl
390     @brief ポリシィリストのURL情報のポインタがNULLです。
391 */
392     NN_DEFINE_RESULT_CONST_LSM(
393         ResultInvalidPolicyListUrl,
394         MakeInvalidArgumentResult, ER_INVALID_POLICYLIST_URL
395     );
396 
397 /*!
398     :category   Result
399     @class nn::boss::ResultInvalidTaskId
400     @brief タスクIDのポインタがNULLまたは0文字列です。
401 */
402     NN_DEFINE_RESULT_CONST_LSM(
403         ResultInvalidTaskId,
404         MakeInvalidArgumentResult, ER_INVALID_TASK_ID
405     );
406 
407 /*!
408     :category   Result
409     @class nn::boss::ResultInvalidTaskStep
410     @brief タスク登録でカレントステップIDが指定されました。
411 */
412     NN_DEFINE_RESULT_CONST_LSM(
413         ResultInvalidTaskStep,
414         MakeInvalidArgumentResult, ER_INVALID_TASK_STEP
415     );
416 
417 /*!
418     :category   Result
419     @class nn::boss::ResultInvalidPropertyType
420     @brief プロパティタイプがサポート外です。
421 */
422     NN_DEFINE_RESULT_CONST_LSM(
423         ResultInvalidPropertyType,
424         MakeInvalidArgumentResult, ER_INVALID_PROPERTYTYPE
425     );
426 
427 /*!
428     :category   Result
429     @class nn::boss::ResultInvalidUrl
430     @brief URL文字列のポインタがNULLまたは0文字列です。
431 */
432     NN_DEFINE_RESULT_CONST_LSM(
433         ResultInvalidUrl,
434         MakeInvalidArgumentResult, ER_INVALID_URL
435     );
436 
437 /*!
438     :category   Result
439     @class nn::boss::ResultInvalidFilePath
440     @brief ファイルパス文字列のポインタがNULLまたは0文字列です。
441 */
442     NN_DEFINE_RESULT_CONST_LSM(
443         ResultInvalidFilePath,
444         MakeInvalidArgumentResult, ER_INVALID_FILEPATH
445     );
446 
447 /*!
448     :category   Result
449     @class nn::boss::ResultInvalidTaskPriority
450     @brief タスクプライオリティの指定が範囲外です。
451 */
452     NN_DEFINE_RESULT_CONST_LSM(
453         ResultInvalidTaskPriority,
454         MakeInvalidArgumentResult, ER_INVALID_TASK_PRIORITY
455     );
456 
457 /*!
458     :category   Result
459     @class nn::boss::ResultInvalidTaskTargetDuration
460     @brief タスク継続時間が範囲外です。
461 */
462     NN_DEFINE_RESULT_CONST_LSM(
463         ResultInvalidTaskTargetDuration,
464         MakeInvalidArgumentResult, ER_INVALID_TASK_TARGETDURATION
465     );
466 
467 /*!
468     :category   Result
469     @class nn::boss::ResultActionCodeOutOfRange
470     @brief タスクアクションコードが範囲外です。
471 */
472     NN_DEFINE_RESULT_CONST_LSM(
473         ResultActionCodeOutOfRange,
474         MakeInvalidArgumentResult, ER_ACTIONCODE_OUT_OF_RANGE
475     );
476 
477 /*!
478     :category   Result
479     @class nn::boss::ResultInvalidNsDataSeekPosition
480     @brief NSDATAのシーク位置がデータサイズを超えています。
481 */
482     NN_DEFINE_RESULT_CONST_LSM(
483         ResultInvalidNsDataSeekPosition,
484         MakeInvalidArgumentResult, ER_INVALID_NSDATA_SEEK_POSITION
485     );
486 
487 /*!
488     :category   Result
489     @class nn::boss::ResultInvalidMaxHttpRequestHeader
490     @brief HTTPリクエストヘッダの登録数が最大設定数を超えました。
491 */
492     NN_DEFINE_RESULT_CONST_LSM(
493         ResultInvalidMaxHttpRequestHeader,
494         MakeOutOfResourceResult, ER_INVALID_MAX_HTTP_REQUEST_HEADER
495     );
496 
497 /*!
498     :category   Result
499     @class nn::boss::ResultInvalidMaxClientCert
500     @brief ClientCertの最大設定数を超えました。
501 */
502     NN_DEFINE_RESULT_CONST_LSM(
503         ResultInvalidMaxClientCert,
504         MakeOutOfResourceResult, ER_INVALID_MAX_CLIENT_CERT
505     );
506 
507 /*!
508     :category   Result
509     @class nn::boss::ResultInvalidMaxRootCa
510     @brief ルートCAの最大設定数を超えました。
511 */
512     NN_DEFINE_RESULT_CONST_LSM(
513         ResultInvalidMaxRootCa,
514         MakeOutOfResourceResult, ER_INVALID_MAX_ROOT_CA
515     );
516 
517 /*!
518     :category   Result
519     @class nn::boss::ResultSchedulingPolicyOutOfRange
520     @brief スケジュールポリシィが範囲外です。
521 */
522     NN_DEFINE_RESULT_CONST_LSM(
523         ResultSchedulingPolicyOutOfRange,
524         MakeInvalidArgumentResult, ER_SCHEDULING_POLICY_OUT_OF_RANGE
525     );
526 
527 /*!
528     :category   Result
529     @class nn::boss::ResultApInfoTypeOutOfRange
530     @brief AP情報タイプが範囲外です。
531 */
532     NN_DEFINE_RESULT_CONST_LSM(
533         ResultApInfoTypeOutOfRange,
534         MakeInvalidArgumentResult, ER_APINFOTYPE_OUT_OF_RANGE
535     );
536 
537 /*!
538     :category   Result
539     @class nn::boss::ResultTaskPermissionOutOfRange
540     @brief タスク許可情報が範囲外です。
541 */
542     NN_DEFINE_RESULT_CONST_LSM(
543         ResultTaskPermissionOutOfRange,
544         MakeInvalidArgumentResult, ER_TASK_PERMISSION_OUT_OF_RANGE
545     );
546 
547 /*!
548     :category   Result
549     @class nn::boss::ResultWaitFinishTimeout
550     @brief WAITFINISHタイムアウト。
551 */
552     NN_DEFINE_RESULT_CONST_LSM(
553         ResultWaitFinishTimeout,
554         MakeWouldBlockResult, ER_WAITFINISH_TIMEOUT
555     );
556 
557 /*!
558     :category   Result
559     @class nn::boss::ResultWaitFinishTaskNotDone
560     @brief WAITFINISHタスクがDONE以外で終了。
561 */
562     NN_DEFINE_RESULT_CONST_LSM(
563         ResultWaitFinishTaskNotDone,
564         MakeWouldBlockResult, ER_WAITFINISH_TASK_NOT_DONE
565     );
566 
567 /*!
568     :category   Result
569     @class nn::boss::ResultIpcNotSessionInitialized
570     @brief IPCのセッションが初期化されていない。
571 */
572     NN_DEFINE_RESULT_CONST_LSM(
573         ResultIpcNotSessionInitialized,
574         MakeInvalidStateResult, ER_IPC_NOT_SESSION_INITIALIZED
575     );
576 
577 /*!
578     :category   Result
579     @class nn::boss::ResultIpcPropertySizeError
580     @brief IPCのプロパティサイズがエラー。
581 */
582     NN_DEFINE_RESULT_CONST_LSM(
583         ResultIpcPropertySizeError,
584         MakeOutOfResourceResult, ER_IPC_PROPERTY_SIZE_ERROR
585     );
586 
587 /*!
588     :category   Result
589     @class nn::boss::ResultIpcTooManyRequests
590     @brief IPCのリクエストの数が多すぎる。
591 */
592     NN_DEFINE_RESULT_CONST_LSM(
593         ResultIpcTooManyRequests,
594         MakeOutOfResourceResult, ER_IPC_TOO_MANY_REQUESTS
595     );
596 
597 /*!
598     :category   Result
599     @class nn::boss::ResultAlreadyInitialized
600     @brief 初期化済み。
601 */
602     NN_DEFINE_RESULT_CONST_LSM(
603         ResultAlreadyInitialized,
604         MakeInvalidStateResult, ER_ALREADY_INITIALIZED
605     );
606 
607 /*!
608     :category   Result
609     @class nn::boss::ResultOutOfMemory
610     @brief メモリの不足。
611 */
612     NN_DEFINE_RESULT_CONST_LSM(
613         ResultOutOfMemory,
614         MakeOutOfResourceResult, ER_OUT_OF_MEMORY
615     );
616 
617 /*!
618     :category   Result
619     @class nn::boss::ResultInvalidNumberOfNsd
620     @brief NSA内のNSD数が最大数を超えた。
621 */
622     NN_DEFINE_RESULT_CONST_LSM(
623         ResultInvalidNumberOfNsd,
624         MakeOutOfResourceResult, ER_INVALID_NUMBER_OF_NSD
625     );
626 
627 /*!
628     :category   Result
629     @class nn::boss::ResultNsDataInvalidFormat
630     @brief NS Data フォーマット異常。
631 */
632     NN_DEFINE_RESULT_CONST_LSM(
633         ResultNsDataInvalidFormat,
634         MakeOutOfResourceResult, ER_NSDATA_INVALID_FORMAT
635     );
636 
637 /*!
638     :category   Result
639     @class nn::boss::ResultAppNotExist
640     @brief 指定されたアプリIDが見つからない。
641 */
642     NN_DEFINE_RESULT_CONST_LSM(
643         ResultAppNotExist,
644         MakeInvalidStateResult, ER_APLI_NOT_EXIST
645     );
646 
647 /*!
648     :category   Result
649     @class nn::boss::ResultTaskNotExist
650     @brief 指定されたタスクIDが見つからない。
651 */
652     NN_DEFINE_RESULT_CONST_LSM(
653         ResultTaskNotExist,
654         MakeInvalidStateResult, ER_TASK_NOT_EXIST
655     );
656 
657 /*!
658     :category   Result
659     @class nn::boss::ResultTaskStepNotExist
660     @brief 指定されたタスクステップが見つからない。
661 */
662     NN_DEFINE_RESULT_CONST_LSM(
663         ResultTaskStepNotExist,
664         MakeInvalidStateResult, ER_TASK_STEP_NOT_EXIST
665     );
666 
667 /*!
668     :category   Result
669     @class nn::boss::ResultApliIdAlreadyExist
670     @brief 既に同名アプリが登録されています。
671 */
672     NN_DEFINE_RESULT_CONST_LSM(
673         ResultApliIdAlreadyExist,
674         MakeInvalidStateResult, ER_APLI_ID_ALREADY_EXIST
675     );
676 
677 /*!
678     :category   Result
679     @class nn::boss::ResultTaskIdAlreadyExist
680     @brief 既に同名タスクが登録されています。
681 */
682     NN_DEFINE_RESULT_CONST_LSM(
683         ResultTaskIdAlreadyExist,
684         MakeInvalidStateResult, ER_TASK_ID_ALREADY_EXIST
685     );
686 
687 /*!
688     :category   Result
689     @class nn::boss::ResultTaskStepAlreadyExist
690     @brief 既に同名タスクステップが登録されています。
691 */
692     NN_DEFINE_RESULT_CONST_LSM(
693         ResultTaskStepAlreadyExist,
694         MakeInvalidStateResult, ER_TASK_STEP_ALREADY_EXIST
695     );
696 
697 /*!
698     :category   Result
699     @class nn::boss::ResultInvalidSequence
700     @brief シーケンスエラー(run 中のタスクのスタートなど)。
701 */
702     NN_DEFINE_RESULT_CONST_LSM(
703         ResultInvalidSequence,
704         MakeInvalidStateResult, ER_INVALID_SEQUENCE
705     );
706 
707 /*!
708     :category   Result
709     @class nn::boss::ResultDatabaseFull
710     @brief SDB情報が削除出来ない。
711 */
712     NN_DEFINE_RESULT_CONST_LSM(
713         ResultDatabaseFull,
714         MakeInvalidStateResult, ER_DATABASE_FULL
715     );
716 
717 /*!
718     :category   Result
719     @class nn::boss::ResultCantUnregisterTask
720     @brief タスク状態により、UnregisterTask 出来ない。
721 */
722     NN_DEFINE_RESULT_CONST_LSM(
723         ResultCantUnregisterTask,
724         MakeInvalidStateResult, ER_CANT_UNREGISTER_TASK
725     );
726 
727 /*!
728     :category   Result
729     @class nn::boss::ResultTaskNotRegistered
730     @brief SDBにタスク(ステップ)が全く登録されていない。
731 */
732     NN_DEFINE_RESULT_CONST_LSM(
733         ResultTaskNotRegistered,
734         MakeInvalidStateResult, ER_TASK_NOT_REGISTERED
735     );
736 
737 /*!
738     :category   Result
739     @class nn::boss::ResultInvalidFileHandle
740     @brief 不正なファイルハンドル。
741 */
742     NN_DEFINE_RESULT_CONST_LSM(
743         ResultInvalidFileHandle,
744         MakeInvalidStateResult, ER_INVALID_FILEHANDLE
745     );
746 
747 /*!
748     :category   Result
749     @class nn::boss::ResultInvalidTaskSchedulingPolicy
750     @brief 不正なスケジュールポリシィ。
751 */
752     NN_DEFINE_RESULT_CONST_LSM(
753         ResultInvalidTaskSchedulingPolicy,
754         MakeInvalidStateResult, ER_INVALID_TASK_SCHEDULING_POLICY
755     );
756 
757 /*!
758     :category   Result
759     @class nn::boss::ResultInvalidHttpRequestHeader
760     @brief HTTPリクエストヘッダエラー。
761 */
762     NN_DEFINE_RESULT_CONST_LSM(
763         ResultInvalidHttpRequestHeader,
764         MakeInvalidStateResult, ER_INVALID_HTTP_REQUEST_HEADER
765     );
766 
767 /*!
768     :category   Result
769     @class nn::boss::ResultInvalidHeadType
770     @brief 不正なヘッドタイプ。
771 */
772     NN_DEFINE_RESULT_CONST_LSM(
773         ResultInvalidHeadType,
774         MakeInvalidStateResult, ER_INVALID_HEADTYPE
775     );
776 
777 /*!
778     :category   Result
779     @class nn::boss::ResultStorageAccessPermission
780     @brief ストレージのアクセス権なし。
781 */
782     NN_DEFINE_RESULT_CONST_LSM(
783         ResultStorageAccessPermission,
784         MakeInvalidStateResult, ER_STORAGE_ACCESSPERMISSION
785     );
786 
787 /*!
788     :category   Result
789     @class nn::boss::ResultStorageInsufficiency
790     @brief ストレージの容量不足。
791 */
792     NN_DEFINE_RESULT_CONST_LSM(
793         ResultStorageInsufficiency,
794         MakeInvalidStateResult, ER_STORAGE_INSUFFICIENCY
795     );
796 
797 /*!
798     :category   Result
799     @class nn::boss::ResultStorageNotFound
800     @brief APPIDに対応したストレージがない。
801 */
802     NN_DEFINE_RESULT_CONST_LSM(
803         ResultStorageNotFound,
804         MakeInvalidStateResult, ER_INVALID_APPID_STORAGE_NOTFOUND
805     );
806 
807 /*!
808     :category   Result
809     @class nn::boss::ResultNsDataNotFound
810     @brief NS Data なし。
811 */
812     NN_DEFINE_RESULT_CONST_LSM(
813         ResultNsDataNotFound,
814         MakeInvalidStateResult, ER_NSDATA_NOTFOUND
815     );
816 
817 /*!
818     :category   Result
819     @class nn::boss::ResultInvalidNsDataGetHeadSize
820     @brief 不正なNSDATAのSIZEパラメータ指定。
821 */
822     NN_DEFINE_RESULT_CONST_LSM(
823         ResultInvalidNsDataGetHeadSize,
824         MakeInternalResult, ER_INVALID_NSDATA_GETHEAD_SIZE
825     );
826 
827 /*!
828     :category   Result
829     @class nn::boss::ResultNsDataListSizeShortage
830     @brief NsDataIdListのサイズ不足(すべてのNSDシリアルIDを格納できなかった)。
831 */
832     NN_DEFINE_RESULT_CONST_LSM(
833         ResultNsDataListSizeShortage,
834         MakeWouldBlockResult, ER_NSDATA_LIST_SIZE_SHORTAGE
835     );
836 
837 /*!
838     :category   Result
839     @class nn::boss::ResultNsDataListUpdated
840     @brief 前回のリスト取得時以降に、BOSSストレージの対象NSD群が更新された。
841 */
842     NN_DEFINE_RESULT_CONST_LSM(
843         ResultNsDataListUpdated,
844         MakeWouldBlockResult, ER_NSDATA_LIST_UPDATED
845     );
846 
847 /*!
848     :category   Result
849     @class nn::boss::ResultNotConnectApWithLocation
850     @brief アクセスポイントに接続されていない。
851 */
852     NN_DEFINE_RESULT_CONST_LSM(
853         ResultNotConnectApWithLocation,
854         MakeInvalidStateResult, ER_NOT_CONNECT_AP_WITH_LOCATION
855     );
856 
857 /*!
858     :category   Result
859     @class nn::boss::ResultNotConnectNetwork
860     @brief ネットワークに接続されていない。
861 */
862     NN_DEFINE_RESULT_CONST_LSM(
863         ResultNotConnectNetwork,
864         MakeInvalidStateResult, ER_NOT_CONNECT_NETWORK
865     );
866 
867 /*!
868     :category   Result
869     @class nn::boss::ResultInvalidFriendcode
870     @brief Friendコード異常時のエラー。
871 */
872     NN_DEFINE_RESULT_CONST_LSM(
873         ResultInvalidFriendcode,
874         MakeInvalidStateResult, ER_INVALID_FRIENDCODE
875     );
876 
877 /*!
878     :category   Result
879     @class nn::boss::ResultFileAccess
880     @brief ファイルアクセスに失敗。
881 */
882     NN_DEFINE_RESULT_CONST_LSM(
883         ResultFileAccess,
884         MakeInternalResult, ER_FILE_ACCESS
885     );
886 
887 /*!
888     :category   Result
889     @class nn::boss::ResultTaskAlreadyPaused
890     @brief すでに停止されていた。
891 */
892     NN_DEFINE_RESULT_CONST_LSM(
893         ResultTaskAlreadyPaused,
894         MakeInternalResult, ER_TASK_ALREADY_PAUSED
895     );
896 
897 /*!
898     :category   Result
899     @class nn::boss::ResultTaskAlreadyResumed
900     @brief すでに再開されていた。
901 */
902     NN_DEFINE_RESULT_CONST_LSM(
903         ResultTaskAlreadyResumed,
904         MakeInternalResult, ER_TASK_ALREADY_RESUMED
905     );
906 
907 /*!
908     :category   Result
909     @class nn::boss::ResultUnexpect
910     @brief 予期しないエラー。
911 */
912     NN_DEFINE_RESULT_CONST_LSM(
913         ResultUnexpect,
914         MakeInternalResult, ER_UNEXPECT
915     );
916 /*!
917   @}
918 */
919 
920     namespace detail {
921         /**
922          * @brief  BOSSのPermanentエラーを表すResultを返す。
923          * @param summary エラーを表すResult::Summary値。
924          * @param errCode エラーコード(nn::http::ResultCode列挙体のいずれかの値)
925          * @return 引数に対応するPermanentエラーを表すResult。
926         */
MakePermanentResult(Result::Summary summary,s32 errCode)927         inline Result MakePermanentResult(Result::Summary summary, s32 errCode)
928         { return nn::MakePermanentResult(summary, Result::MODULE_NN_BOSS, errCode); }
929 
930         /**
931          * @brief  パラメータエラーに関するリターンコードに対して、それを表すResultを返す。
932          * @param returnCode リターンコード(nn::boss::ResultCode列挙体のいずれかの値)
933          * @return 引数の内容を表すResult。
934         */
ChangeBossRetCodeToResult(ResultCode returnCode)935         inline Result ChangeBossRetCodeToResult(ResultCode returnCode)
936         {
937             switch(returnCode)
938             {
939             case ER_NONE:
940                 return ResultSuccess();
941                 //break;
942             case ER_INVALID_POLICY:
943                 return ResultInvalidPolicy();
944                 //break;
945             case ER_INVALID_ACTION:
946                 return ResultInvalidAction();
947                 //break;
948             case ER_INVALID_OPTION:
949                 return ResultInvalidOption();
950                 //break;
951             case ER_INVALID_APPIDLIST:
952                 return ResultInvalidAppIdList();
953                 //break;
954             case ER_INVALID_TASKID_LIST:
955                 return ResultInvalidTaskIdList();
956                 //break;
957             case ER_INVALID_STEPID_LIST:
958                 return ResultInvalidStepIdList();
959                 //break;
960             case ER_INVALID_NSDATA_IDLIST:
961                 return ResultInvalidNsDataIdList();
962                 //break;
963             case ER_INVALID_TASKSTATUS:
964                 return ResultInvalidTaskStatus();
965                 //break;
966             case ER_INVALID_PROPERTYVALUE:
967                 return ResultInvalidPropertyValue();
968                 //break;
969             case ER_INVALID_NEWARRIVAL_EVENT:
970                 return ResultInvalidNewArrivalEvent();
971                 //break;
972             case ER_INVALID_NEWARRIVAL_FLAG:
973                 return ResultInvalidNewArrivalFlag();
974                 //break;
975             case ER_INVALID_OPTOUT_FLAG:
976                 return ResultInvalidOptoutFlag();
977                 //break;
978             case ER_INVALID_TASKERROR:
979                 return ResultInvalidTaskError();
980                 //break;
981             case ER_INVALID_NSDATA_VALUE:
982                 return ResultInvalidNsDataValue();
983                 //break;
984             case ER_INVALID_NSDATA_INFO:
985                 return ResultInvalidNsDataInfo();
986                 //break;
987             case ER_INVALID_NSDATA_READFLAG:
988                 return ResultInvalidNsDataReadFlag();
989                 //break;
990             case ER_INVALID_NSDATA_TIME:
991                 return ResultInvalidNsDataTime();
992                 //break;
993             case ER_INVALID_NEXTEXECUTETIME:
994                 return ResultInvalidNextExecuteTime();
995                 //break;
996             case ER_HTTP_REQUEST_HEADER_POINTER_NULL:
997                 return ResultHttpRequestHeaderPointerNull();
998                 //break;
999             case ER_INVALID_POLICYLIST_AVAILABILITY:
1000                 return ResultInvalidPolicyListAvailability();
1001                 //break;
1002             case ER_INVALID_TESTMODE_AVAILABILITY:
1003                 return ResultInvalidTestModeAvailability();
1004                 //break;
1005             case ER_INVALID_TASK_ID:
1006                 return ResultInvalidTaskId();
1007                 //break;
1008             case ER_INVALID_TASK_STEP:
1009                 return ResultInvalidTaskStep();
1010                 //break;
1011             case ER_INVALID_PROPERTYTYPE:
1012                 return ResultInvalidPropertyType();
1013                 //break;
1014             case ER_INVALID_URL:
1015                 return ResultInvalidUrl();
1016                 //break;
1017             case ER_INVALID_FILEPATH:
1018                 return ResultInvalidFilePath();
1019                 //break;
1020             case ER_INVALID_TASK_PRIORITY:
1021                 return ResultInvalidTaskPriority();
1022                 //break;
1023             case ER_INVALID_TASK_TARGETDURATION:
1024                 return ResultInvalidTaskTargetDuration();
1025                 //break;
1026             case ER_ACTIONCODE_OUT_OF_RANGE:
1027                 return ResultActionCodeOutOfRange();
1028                 //break;
1029             case ER_INVALID_NSDATA_SEEK_POSITION:
1030                 return ResultInvalidNsDataSeekPosition();
1031                 //break;
1032             case ER_INVALID_MAX_HTTP_REQUEST_HEADER:
1033                 return ResultInvalidMaxHttpRequestHeader();
1034                 //break;
1035             case ER_INVALID_MAX_CLIENT_CERT:
1036                 return ResultInvalidMaxClientCert();
1037                 //break;
1038             case ER_INVALID_MAX_ROOT_CA:
1039                 return ResultInvalidMaxRootCa();
1040                 //break;
1041             case ER_SCHEDULING_POLICY_OUT_OF_RANGE:
1042                 return ResultSchedulingPolicyOutOfRange();
1043                 //break;
1044             case ER_APINFOTYPE_OUT_OF_RANGE:
1045                 return ResultApInfoTypeOutOfRange();
1046                 //break;
1047             case ER_TASK_PERMISSION_OUT_OF_RANGE:
1048                 return ResultTaskPermissionOutOfRange();
1049                 //break;
1050             case ER_WAITFINISH_TIMEOUT:
1051                 return ResultWaitFinishTimeout();
1052                 //break;
1053             case ER_WAITFINISH_TASK_NOT_DONE:
1054                 return ResultWaitFinishTaskNotDone();
1055                 //break;
1056             case ER_IPC_NOT_SESSION_INITIALIZED:
1057                 return ResultIpcNotSessionInitialized();
1058                 //break;
1059             case ER_IPC_PROPERTY_SIZE_ERROR:
1060                 return ResultIpcPropertySizeError();
1061                 //break;
1062             case ER_IPC_TOO_MANY_REQUESTS:
1063                 return ResultIpcTooManyRequests();
1064                 //break;
1065             case ER_ALREADY_INITIALIZED:
1066                 return ResultAlreadyInitialized();
1067                 //break;
1068             case ER_OUT_OF_MEMORY:
1069                 return ResultOutOfMemory();
1070                 //break;
1071             case ER_INVALID_NUMBER_OF_NSD:
1072                 return ResultInvalidNumberOfNsd();
1073                 //break;
1074             case ER_NSDATA_INVALID_FORMAT:
1075                 return ResultNsDataInvalidFormat();
1076                 //break;
1077             case ER_APLI_NOT_EXIST:
1078                 return ResultAppNotExist();
1079                 //break;
1080             case ER_TASK_NOT_EXIST:
1081                 return ResultTaskNotExist();
1082                 //break;
1083             case ER_TASK_STEP_NOT_EXIST:
1084                 return ResultTaskStepNotExist();
1085                 //break;
1086             case ER_APLI_ID_ALREADY_EXIST:
1087                 return ResultApliIdAlreadyExist();
1088                 //break;
1089             case ER_TASK_ID_ALREADY_EXIST:
1090                 return ResultTaskIdAlreadyExist();
1091                 //break;
1092             case ER_TASK_STEP_ALREADY_EXIST:
1093                 return ResultTaskStepAlreadyExist();
1094                 //break;
1095             case ER_INVALID_SEQUENCE:
1096                 return ResultInvalidSequence();
1097                 //break;
1098             case ER_DATABASE_FULL:
1099                 return ResultDatabaseFull();
1100                 //break;
1101             case ER_CANT_UNREGISTER_TASK:
1102                 return ResultCantUnregisterTask();
1103                 //break;
1104             case ER_TASK_NOT_REGISTERED:
1105                 return ResultTaskNotRegistered();
1106                 //break;
1107             case ER_INVALID_FILEHANDLE:
1108                 return ResultInvalidFileHandle();
1109                 //break;
1110             case ER_INVALID_TASK_SCHEDULING_POLICY:
1111                 return ResultInvalidTaskSchedulingPolicy();
1112                 //break;
1113             case ER_INVALID_HTTP_REQUEST_HEADER:
1114                 return ResultInvalidHttpRequestHeader();
1115                 //break;
1116             case ER_INVALID_HEADTYPE:
1117                 return ResultInvalidHeadType();
1118                 //break;
1119             case ER_STORAGE_ACCESSPERMISSION:
1120                 return ResultStorageAccessPermission();
1121                 //break;
1122             case ER_STORAGE_INSUFFICIENCY:
1123                 return ResultStorageInsufficiency();
1124                 //break;
1125             case ER_INVALID_APPID_STORAGE_NOTFOUND:
1126                 return ResultStorageNotFound();
1127                 //break;
1128             case ER_NSDATA_NOTFOUND:
1129                 return ResultNsDataNotFound();
1130                 //break;
1131             case ER_INVALID_NSDATA_GETHEAD_SIZE:
1132                 return ResultInvalidNsDataGetHeadSize();
1133             case ER_NSDATA_LIST_SIZE_SHORTAGE:
1134                 return ResultNsDataListSizeShortage();
1135                 //break;
1136             case ER_NSDATA_LIST_UPDATED:
1137                 return ResultNsDataListUpdated();
1138                 //break;
1139             case ER_NOT_CONNECT_AP_WITH_LOCATION:
1140                 return ResultNotConnectApWithLocation();
1141                 //break;
1142             case ER_NOT_CONNECT_NETWORK:
1143                 return ResultNotConnectNetwork();
1144                 //break;
1145             case ER_INVALID_FRIENDCODE:
1146                 return ResultInvalidFriendcode();
1147                 //break;
1148             case ER_FILE_ACCESS:
1149                 return ResultFileAccess();
1150                 //break;
1151 			case ER_TASK_ALREADY_PAUSED:
1152                 return ResultTaskAlreadyPaused();
1153                 //break;
1154 			case ER_TASK_ALREADY_RESUMED:
1155                 return ResultTaskAlreadyResumed();
1156                 //break;
1157             case ER_UNEXPECT:
1158                 return ResultUnexpect();
1159                 //break;
1160 
1161             default:
1162                 return ResultUnexpect();
1163                 //break;
1164             }
1165         }
1166     }
1167 }
1168 }
1169 #endif // __cplusplus
1170 
1171 #endif /* NN_BOSS_BOSS_RESULT_H_ */
1172