AM Daemon ライブラリリファレンス
Auth.h
[詳解]
1 /// @file
2 /// @brief ALL.Net認証情報を提供するMonostateクラス Auth のヘッダ。
3 ///
4 /// Copyright(C)SEGA
5 
6 #ifndef AMDAEMON_ALLNET_AUTH_H
7 #define AMDAEMON_ALLNET_AUTH_H
8 
9 #include "amdaemon/env.h"
11 
12 #include <cstdint>
13 #include <cstddef>
14 
15 namespace amdaemon
16 {
17 namespace allnet
18 {
19 /// @addtogroup g_allnet
20 /// @{
21 
22  /// @brief ALL.Net認証情報を提供するMonostateクラス。
23  ///
24  /// Core クラスのメンバ関数 Core#execute 呼び出しによって内容が更新される。
25  ///
26  /// 取得した認証レスポンスを画面表示する際は、
27  /// ALL.Net Programmer's Manual の「ゲーム画面に表示する際の注意事項」を確認すること。
28  ///
29  /// @ingroup g_common
30  class Auth
31  {
32  public:
33  /// @brief 店舗ニックネームのパート数を取得する。
34  /// @return 店舗ニックネームのパート数。固定値 2 。
35  static std::size_t getLocationNicknamePartCount();
36 
37  /// @brief 地域名のパート数を取得する。
38  /// @return 地域名のパート数。固定値 4 。
39  static std::size_t getRegionNamePartCount();
40 
41  public:
42  // 下記は暗黙の定義を用いる。
43  //Auth() = default;
44  //‾Auth() = default;
45  //Auth(const Auth&) = default;
46  //Auth& operator=(const Auth&) = default;
47 
48  /// @brief ALL.Net認証機能を利用可能であるか否かを取得する。
49  /// @retval true 利用可能である場合。
50  /// @retval false 機能が無効である場合。
51  ///
52  /// Daemonプロセスの設定ファイルでALL.Net認証設定を有効にしている場合であっても、
53  /// キーチップのALL.Net認証フラグが無効である場合は false を返す。
54  bool isAvailable() const;
55 
56  /// @brief 認証が成功済みであるか否かを取得する。
57  /// @retval true 成功済みである場合。
58  /// @retval false 未成功である場合。未試行の場合や認証機能が無効である場合も含む。
59  bool isGood() const;
60 
61  /// @brief 開発店舗であるか否かを取得する。
62  /// @retval true 開発店舗である場合。
63  /// @retval false 開発店舗ではないか、認証未成功の場合。
64  ///
65  /// 認証が成功済みであれば有効な値を返す。
66  ///
67  /// ALL.Net ID を用いて判定を行っている。
68  /// ALL.Net委員会の方針上、 ALL.Net ID は返さないため、
69  /// ロケーションの判定には店舗IDを用いること。
70  bool isDevelop() const;
71 
72  /// @brief 回線種別を取得する。
73  /// @return 回線種別。
74  /// @see isGood
75  ///
76  /// 認証が成功済みであれば有効な値を返す。
77  LineType getLineType() const;
78 
79  /// @brief 認証レスポンスのゲームサーバURIを取得する。
80  /// @return ゲームサーバURI。認証未成功の場合は不定値。
81  /// @see isGood
82  ///
83  /// 認証が成功済みであれば有効な値を返す。
84  const wchar_t* getGameServerUri() const;
85 
86  /// @brief 認証レスポンスのゲームサーバホスト名を取得する。
87  /// @return ゲームサーバホスト名。認証未成功の場合は不定値。
88  /// @see isGood
89  ///
90  /// 認証が成功済みであれば有効な値を返す。
91  const wchar_t* getGameServerHost() const;
92 
93  /// @brief 認証レスポンスの店舗IDを取得する。
94  /// @return 店舗ID。認証未成功の場合は不定値。
95  /// @see isGood
96  ///
97  /// 認証が成功済みであれば有効な値を返す。
98  std::uint32_t getLocationId() const;
99 
100  /// @brief 認証レスポンスの店舗名を取得する。
101  /// @return 店舗名。認証未成功の場合は不定値。
102  /// @see isGood
103  ///
104  /// 認証が成功済みであれば有効な値を返す。
105  const wchar_t* getLocationName() const;
106 
107  /// @brief 認証レスポンスの店舗ニックネームを取得する。
108  /// @param[in] partIndex パートインデックス。 0 以上パート数未満。
109  /// @return 店舗ニックネーム。認証未成功の場合は不定値。
110  /// @see isGood
111  ///
112  /// @exception Exception
113  /// 引数 partIndex にパート数以上の値を指定した場合。
114  /// パート数は静的メンバ関数 #getLocationNicknamePartCount で取得できる。
115  ///
116  /// 認証が成功済みであれば有効な値を返す。
117  ///
118  /// 画面表示の際は、2行で表示するか、連結して1行で表示すること。
119  /// 連結する場合、間に文字を挟んではならない。(半角スペース等も不可)
120  const wchar_t* getLocationNickname(std::size_t partIndex) const;
121 
122  /// @brief 認証レスポンスの地域コードを取得する。
123  /// @return 地域コード。認証未成功の場合は不定値。
124  /// @see isGood
125  ///
126  /// 認証が成功済みであれば有効な値を返す。
127  std::int32_t getRegionCode() const;
128 
129  /// @brief 認証レスポンスの地域名を取得する。
130  /// @param[in] partIndex パートインデックス。 0 以上パート数未満。
131  /// @return 地域名。認証未成功の場合は不定値。
132  /// @see isGood
133  ///
134  /// @exception Exception
135  /// 引数 partIndex にパート数以上の値を指定した場合。
136  /// パート数は静的メンバ関数 #getRegionNamePartCount で取得できる。
137  ///
138  /// 認証が成功済みであれば有効な値を返す。
139  const wchar_t* getRegionName(std::size_t partIndex) const;
140 
141  /// @brief 認証レスポンスの国コードを取得する。
142  /// @return 国コード。認証未成功の場合は不定値。
143  /// @see isGood
144  ///
145  /// 認証が成功済みであれば有効な値を返す。
146  const wchar_t* getCountryCode() const;
147  };
148 
149 /// @}
150 } // namespace allnet
151 } // namespace amdaemon
152 
153 #endif // AMDAEMON_ALLNET_AUTH_H
154 
std::uint32_t getLocationId() const
認証レスポンスの店舗IDを取得する。
bool isAvailable() const
ALL.Net認証機能を利用可能であるか否かを取得する。
std::int32_t getRegionCode() const
認証レスポンスの地域コードを取得する。
Daemonライブラリの環境定義を行うヘッダ。
AM Daemon ライブラリクラス群の基底名前空間。
Definition: Log.h:13
bool isDevelop() const
開発店舗であるか否かを取得する。
const wchar_t * getLocationNickname(std::size_t partIndex) const
認証レスポンスの店舗ニックネームを取得する。
const wchar_t * getCountryCode() const
認証レスポンスの国コードを取得する。
LineType getLineType() const
回線種別を取得する。
ALL.Net認証情報を提供するMonostateクラス。
Definition: Auth.h:30
static std::size_t getLocationNicknamePartCount()
店舗ニックネームのパート数を取得する。
const wchar_t * getRegionName(std::size_t partIndex) const
認証レスポンスの地域名を取得する。
const wchar_t * getGameServerUri() const
認証レスポンスのゲームサーバURIを取得する。
bool isGood() const
認証が成功済みであるか否かを取得する。
const wchar_t * getLocationName() const
認証レスポンスの店舗名を取得する。
static std::size_t getRegionNamePartCount()
地域名のパート数を取得する。
const wchar_t * getGameServerHost() const
認証レスポンスのゲームサーバホスト名を取得する。
ALL.Net回線種別列挙 LineType のヘッダ。
LineType
ALL.Net回線種別列挙。
Definition: LineType.h:19