メインコンテンツまでスキップ

Momento LeaderboardsのMomento APIからのレスポンスオブジェクト

Momento レスポンスオブジェクトは親クラスから拡張され、SuccessError といった子の型を持ち、パターンマッチによってアクセスできるように設計されています。(ある言語ではこの概念を「シールドクラス」と呼び、別の言語では「代数的データ型」と呼びます。これは、ポリモーフィズムの一種です)。コードはレスポンスが SuccessError かをチェックし、それに応じて分岐します。この方法を使うと、型安全なレスポンスオブジェクトを得ることができ、それを使ってさらに情報を得ることができます。


Error

Momento Leaderboards サービスの呼び出しで発生したエラーは、例外のスローではなく、呼び出しの戻り値の一部として開発者に表示されます。これは、実行時にアプリケーションがクラッシュしないようにし、コードを書いているときにエラーをより見やすくし、気になるエラーを確実に処理するために IDE がより役立つようにします。この点に関する私たちの考え方については、ブログ記事「なぜ[例外はバグ]なのか」(https://www.gomomento.com/blog/exceptions-are-bugs)をご覧ください。また、ご意見があればお寄せください!

利用可能な方法

  • message(): 文字列 - 人間が読めるメッセージ
  • innerException(): 例外 - 元の例外の内容。
  • errorCode(): MomentoErrorCode - InvalidArgument や BadRequest などの Momento 独自のエラー。Standards And Practices - Error Handlingを参照ください。
  • toString(): 文字列 - message() のエイリアス。

Success

追加のメソッドを持たない、リクエストの成功を示す汎用レスポンスオブジェクト。

成功の・レスポンス・オブジェクトのバリエーションには次のようなものがあります:

LeaderboardFetch

フェッチ要求に成功したことを示す。利用可能なメソッドは以下の通りです:

values(): リスト - フィールド idscorerank を含むレコードのリストを返します。

LeaderboardLength

lengthのリクエストに成功したことを示す。利用可能なメソッドは以下の通りです:

  • length(): 整数 - 指定されたリーダーボードの要素数を返します。