Octane API Client
Loading...
Searching...
No Matches
api_bridge.h
Go to the documentation of this file.
1
11#ifndef OCTANE_API_CLIENT_INTERNAL_API_BRIDGE_H_
12#define OCTANE_API_CLIENT_INTERNAL_API_BRIDGE_H_
13
17#include "include/result.h"
18
19namespace octane::internal {
20 class ApiBridge {
21 FetchBase* fetch;
22
23 public:
31 ApiBridge(FetchBase* fetch);
76 Result<RoomId, ErrorResponse> roomPost(std::string_view name);
104 Result<_, ErrorResponse> roomIdDelete(std::uint64_t id);
118 Result<_, ErrorResponse> roomIdPost(std::uint64_t id,
119 std::string_view name,
120 std::string_view request);
135 std::uint64_t id);
162 std::uint64_t id,
163 const std::variant<std::string, std::vector<std::uint8_t>>& contentData,
164 std::string_view mime);
206 const ContentStatus& contentStatus,
207 std::string_view hash);
217 std::optional<error_t<ErrorResponse>> checkStatusCode(
218 const internal::FetchResponse& response);
219 };
220} // namespace octane::internal
221#endif // OCTANE_API_CLIENT_INTERNAL_API_BRIDGE_H_
Types which are used to return values in api client.
Wrapper class that bifurcates the values indicated by normal and quasi-normal states.
Definition: result.h:38
Definition: api_bridge.h:20
Result< _, ErrorResponse > roomIdStatusPut(std::uint64_t id, const ContentStatus &contentStatus, std::string_view hash)
use put method for /room/{id}/status
Definition: api_bridge.cpp:287
Result< std::pair< ContentStatus, std::string >, ErrorResponse > roomIdStatusGet(std::uint64_t id)
use get method for /room/{id}/status
Definition: api_bridge.cpp:235
Result< RoomId, ErrorResponse > roomPost(std::string_view name)
use post method for /room
Definition: api_bridge.cpp:94
Result< _, ErrorResponse > 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
Definition: api_bridge.cpp:208
Result< _, ErrorResponse > roomIdStatusDelete(std::uint64_t id)
use delete method for /room/{id}/status
Definition: api_bridge.cpp:276
Result< HealthResult, ErrorResponse > healthGet()
use get method for /health
Definition: api_bridge.cpp:63
Result< _, ErrorResponse > roomIdContentDelete(std::uint64_t id)
use delete method for /room/{id}/content
Definition: api_bridge.cpp:197
Result< std::vector< std::uint8_t >, ErrorResponse > roomIdContentGet(std::uint64_t id)
use get method for /room/{id}/content
Definition: api_bridge.cpp:180
Result< _, ErrorResponse > roomIdDelete(std::uint64_t id)
use delete method for /room/{id}
Definition: api_bridge.cpp:149
std::optional< error_t< ErrorResponse > > checkStatusCode(const internal::FetchResponse &response)
check if the given status code is 2xx
Definition: api_bridge.cpp:332
Result< _, ErrorResponse > roomIdPost(std::uint64_t id, std::string_view name, std::string_view request)
use post method for /room/{id}
Definition: api_bridge.cpp:160
Result< _, ErrorResponse > init()
Initialize.
Definition: api_bridge.cpp:60
Result< RoomStatus, ErrorResponse > roomIdGet(std::uint64_t id)
use get method for /room/{id}
Definition: api_bridge.cpp:118
HttpClientクラスを通じてHTTP通信を行うインタフェース。
Definition: fetch.h:55
Error response.
fetch.hの実装
Definition: api_bridge.cpp:25
Define type to represent the result, inspired by Rust's "Result".
Structure used in Content, has the status of Content.
Definition: api_result_types.h:105
General stucture to represent the error.
Definition: error_response.h:24
Fetchのレスポンスを表す構造体。
Definition: fetch.h:34