Octane API Client
Loading...
Searching...
No Matches
Public Member Functions | List of all members
octane::internal::ApiBridge Class Reference

#include <api_bridge.h>

Public Member Functions

 ApiBridge (FetchBase *fetch)
 Construct a new Api Bridge object. More...
 
Result< _, ErrorResponseinit ()
 Initialize. More...
 
Result< HealthResult, ErrorResponsehealthGet ()
 use get method for /health More...
 
Result< RoomId, ErrorResponseroomPost (std::string_view name)
 use post method for /room More...
 
Result< RoomStatus, ErrorResponseroomIdGet (std::uint64_t id)
 use get method for /room/{id} More...
 
Result< _, ErrorResponseroomIdDelete (std::uint64_t id)
 use delete method for /room/{id} More...
 
Result< _, ErrorResponseroomIdPost (std::uint64_t id, std::string_view name, std::string_view request)
 use post method for /room/{id} More...
 
Result< std::vector< std::uint8_t >, ErrorResponseroomIdContentGet (std::uint64_t id)
 use get method for /room/{id}/content More...
 
Result< _, ErrorResponseroomIdContentDelete (std::uint64_t id)
 use delete method for /room/{id}/content More...
 
Result< _, ErrorResponseroomIdContentPut (std::uint64_t id, const std::variant< std::string, std::vector< std::uint8_t > > &contentData, std::string_view mime)
 use put method for /room/{id}/content More...
 
Result< std::pair< ContentStatus, std::string >, ErrorResponseroomIdStatusGet (std::uint64_t id)
 use get method for /room/{id}/status More...
 
Result< _, ErrorResponseroomIdStatusDelete (std::uint64_t id)
 use delete method for /room/{id}/status More...
 
Result< _, ErrorResponseroomIdStatusPut (std::uint64_t id, const ContentStatus &contentStatus, std::string_view hash)
 use put method for /room/{id}/status More...
 
std::optional< error_t< ErrorResponse > > checkStatusCode (const internal::FetchResponse &response)
 check if the given status code is 2xx More...
 

Constructor & Destructor Documentation

◆ ApiBridge()

octane::internal::ApiBridge::ApiBridge ( FetchBase fetch)

Construct a new Api Bridge object.

fetch のコンストラクタに以下の引数を渡す。

Parameters
[in]fetch通信に使用するfetchインスタンス

Member Function Documentation

◆ checkStatusCode()

std::optional< error_t< ErrorResponse > > octane::internal::ApiBridge::checkStatusCode ( const internal::FetchResponse response)

check if the given status code is 2xx

このメソッドはfetchしてきたレスポンスのステータスコードが2xxであるかどうかを確認する。 ステータスコードが2xxでない場合は、エラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。

Parameters
responsefetchのレスポンス
Returns
std::optional<error_t<ErrorResponse>> ステータスコードが2xxである場合には何も返さず、そうでない場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ healthGet()

Result< HealthResult, ErrorResponse > octane::internal::ApiBridge::healthGet ( )

use get method for /health

このメソッドは/healthにGETリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_JSON_PARSE_FAILED: レスポンスのContent-Typeがapplication/jsonであったにもかかわらず正常なJSONデータがAPIから返却されなかったとき
  • ERR_INVALID_RESPONSE: レスポンスにエラーがあるとき
  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Returns
    Result<HealthResult, ErrorResponse> 成功した場合はサーバの状態HealthResultを返し、失敗した場合は上記のエラーレスポンスを返す。
Here is the call graph for this function:

◆ init()

Result< _, ErrorResponse > octane::internal::ApiBridge::init ( )

Initialize.

このメソッドはインスタンス一つにつき一度だけ呼び出すことができる。 また、インスタンスを作成した直後に呼び出さなければならない。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_INITIALIZATION_FAILED: CURLの初期化に失敗したとき
Returns
Result<std::optional<std::string>, ErrorResponse> 成功した場合は何も返さず、失敗した場合は上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdContentDelete()

Result< _, ErrorResponse > octane::internal::ApiBridge::roomIdContentDelete ( std::uint64_t  id)

use delete method for /room/{id}/content

このメソッドは/room/{id}/contentにDELETEリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき。 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    Returns
    Result<_, ErrorResponse> 成功した場合には何も返さず、失敗した場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdContentGet()

Result< std::vector< std::uint8_t >, ErrorResponse > octane::internal::ApiBridge::roomIdContentGet ( std::uint64_t  id)

use get method for /room/{id}/content

このメソッドは/room/{id}/contentにGETリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_INVALID_RESPONSE: レスポンスにエラーがあるとき
  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき。 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    Returns
    Result<std::vector<std::uint8_t>>, ErrorResponse> 成功した場合にはルーム内にあるバイナリデータを返し、失敗した場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdContentPut()

Result< _, ErrorResponse > octane::internal::ApiBridge::roomIdContentPut ( std::uint64_t  id,
const std::variant< std::string, std::vector< std::uint8_t > > &  contentData,
std::string_view  mime 
)

use put method for /room/{id}/content

このメソッドは/room/{id}/contentにPUTリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき。 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    [in]contentDataルームにアップロードするコンテンツのデータ
    [in]mimeルームにアップロードするコンテンツのMIME
    Returns
    Result<_, ErrorResponse> 成功した場合には何も返さず、失敗した場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdDelete()

Result< _, ErrorResponse > octane::internal::ApiBridge::roomIdDelete ( std::uint64_t  id)

use delete method for /room/{id}

このメソッドは/room/{id}にDELETEリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    Returns
    Result<_, ErrorResponse> 成功した場合には何も返さず、失敗した場合は上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdGet()

Result< RoomStatus, ErrorResponse > octane::internal::ApiBridge::roomIdGet ( std::uint64_t  id)

use get method for /room/{id}

このメソッドは/room/{id}にGETリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_JSON_PARSE_FAILED: レスポンスのContent-Typeがapplication/jsonであったにもかかわらず正常なJSONデータがAPIから返却されなかったとき
  • ERR_INVALID_RESPONSE: レスポンスにエラーがあるとき
  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]id ルームのid
    Returns
    Result<RoomStatus, ErrorResponse> 成功した場合はルームのステータスRoomStatusを返し、失敗した場合は上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdPost()

Result< _, ErrorResponse > octane::internal::ApiBridge::roomIdPost ( std::uint64_t  id,
std::string_view  name,
std::string_view  request 
)

use post method for /room/{id}

このメソッドは/room/{id}にPOSTリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    [in]nameルームに接続する/接続解除するデバイスの名前
    [in]requestルームに接続するか否か
    Returns
    Result<_, ErrorResponse> 成功した場合には何も返さず、失敗した場合は上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdStatusDelete()

Result< _, ErrorResponse > octane::internal::ApiBridge::roomIdStatusDelete ( std::uint64_t  id)

use delete method for /room/{id}/status

このメソッドは/room/{id}/statusにDELETEリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき。 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    Returns
    Result<_, ErrorResponse> 成功した場合には何も返さず、失敗した場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:

◆ roomIdStatusGet()

Result< std::pair< ContentStatus, std::string >, ErrorResponse > octane::internal::ApiBridge::roomIdStatusGet ( std::uint64_t  id)

use get method for /room/{id}/status

このメソッドは/room/{id}/statusにGETリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_JSON_PARSE_FAILED: レスポンスのContent-Typeがapplication/jsonであったにもかかわらず正常なJSONデータがAPIから返却されなかったとき
  • ERR_INVALID_RESPONSE: レスポンスにエラーがあるとき
  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき。 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    Returns
    Result<std::pair<ContentStatus,std::string>, ErrorResponse> 成功した場合にはコンテンツの状態ContentStatusとハッシュ値のpairを返し、失敗した場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomIdStatusPut()

Result< _, ErrorResponse > octane::internal::ApiBridge::roomIdStatusPut ( std::uint64_t  id,
const ContentStatus contentStatus,
std::string_view  hash 
)

use put method for /room/{id}/status

このメソッドは/room/{id}/statusにDELETEリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗したとき。 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]idルームのid
    [in]contentStatusルームにアップロードされているコンテンツの状態
    Returns
    Result<_, ErrorResponse> 成功した場合には何も返さず、失敗した場合には上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

◆ roomPost()

Result< RoomId, ErrorResponse > octane::internal::ApiBridge::roomPost ( std::string_view  name)

use post method for /room

このメソッドは/roomにPOSTリクエストを発行する。 失敗した場合は次のエラーレスポンスを返す。

  • ERR_JSON_PARSE_FAILED: レスポンスのContent-Typeがapplication/jsonであったにもかかわらず正常なJSONデータがAPIから返却されなかったとき
  • ERR_INVALID_RESPONSE: レスポンスにエラーがある時
  • ERR_CURL_CONNECTION_FAILED: CURLの接続に失敗した時 また、2xx以外のレスポンスが返された時には、同様のエラーレスポンスの形式でサーバから渡ってきたエラーをそのまま返す。
    Parameters
    [in]nameルームの名前
    Returns
    Result<RoomId, ErrorResponse> 成功した場合はルームのidRoomIdを返し、失敗した場合は上記のエラーレスポンスを返す。
Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: