Arachne 1.0
Arachne - the perpetual stitcher of Wikidata entities.
Loading...
Searching...
No Matches
arachne::pheidippides::fetch_request_v1 Struct Reference

#include <include/pheidippides/transport.hpp>

Collaboration diagram for arachne::pheidippides::fetch_request_v1:

Public Attributes

std::string contract = "fetch_request_v1"
std::uint32_t format_version = 1
std::string request_id
std::string door_id
std::string endpoint_id
transport_operation operation = transport_operation::point_lookup
freshness_policy freshness = freshness_policy::fresh_required
std::string idempotency_key
http_method method = http_method::get
std::string url
std::vector< http_headerheaders
std::string body
std::optional< body_artifact_referencebody_artifact
std::optional< body_artifact_referenceresume_artifact
std::string target_artifact_ref
std::chrono::milliseconds timeout { 30'000 }
std::chrono::milliseconds connect_timeout { 10'000 }
std::chrono::milliseconds read_timeout { 30'000 }
std::chrono::milliseconds write_timeout { 30'000 }
std::uint64_t max_bytes = 64U * 1024U * 1024U
std::size_t maximum_attempts = 1
std::chrono::milliseconds initial_retry_delay { 250 }
std::chrono::milliseconds maximum_retry_delay { 10'000 }
std::chrono::milliseconds total_retry_delay_budget { 30'000 }
bool respect_retry_after = true
std::optional< std::string > expected_sha256
redirect_policy redirects

Detailed Description

Concrete, domain-blind transport instruction from Arachne.

Definition at line 67 of file transport.hpp.

Member Data Documentation

◆ body

std::string arachne::pheidippides::fetch_request_v1::body

Definition at line 79 of file transport.hpp.

Referenced by arachne::pheidippides::transport::execute().

◆ body_artifact

std::optional<body_artifact_reference> arachne::pheidippides::fetch_request_v1::body_artifact

Definition at line 80 of file transport.hpp.

◆ connect_timeout

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::connect_timeout { 10'000 }

Definition at line 84 of file transport.hpp.

84{ 10'000 };

◆ contract

std::string arachne::pheidippides::fetch_request_v1::contract = "fetch_request_v1"

Definition at line 68 of file transport.hpp.

◆ door_id

◆ endpoint_id

std::string arachne::pheidippides::fetch_request_v1::endpoint_id

◆ expected_sha256

std::optional<std::string> arachne::pheidippides::fetch_request_v1::expected_sha256

Definition at line 93 of file transport.hpp.

◆ format_version

std::uint32_t arachne::pheidippides::fetch_request_v1::format_version = 1

◆ freshness

◆ headers

std::vector<http_header> arachne::pheidippides::fetch_request_v1::headers

Definition at line 78 of file transport.hpp.

◆ idempotency_key

std::string arachne::pheidippides::fetch_request_v1::idempotency_key

◆ initial_retry_delay

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::initial_retry_delay { 250 }

Definition at line 89 of file transport.hpp.

89{ 250 };

◆ max_bytes

std::uint64_t arachne::pheidippides::fetch_request_v1::max_bytes = 64U * 1024U * 1024U

◆ maximum_attempts

std::size_t arachne::pheidippides::fetch_request_v1::maximum_attempts = 1

◆ maximum_retry_delay

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::maximum_retry_delay { 10'000 }

Definition at line 90 of file transport.hpp.

90{ 10'000 };

◆ method

◆ operation

◆ read_timeout

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::read_timeout { 30'000 }

Definition at line 85 of file transport.hpp.

85{ 30'000 };

◆ redirects

redirect_policy arachne::pheidippides::fetch_request_v1::redirects

Definition at line 94 of file transport.hpp.

◆ request_id

◆ respect_retry_after

◆ resume_artifact

std::optional<body_artifact_reference> arachne::pheidippides::fetch_request_v1::resume_artifact

Definition at line 81 of file transport.hpp.

◆ target_artifact_ref

std::string arachne::pheidippides::fetch_request_v1::target_artifact_ref

◆ timeout

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::timeout { 30'000 }

Definition at line 83 of file transport.hpp.

83{ 30'000 };

◆ total_retry_delay_budget

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::total_retry_delay_budget { 30'000 }

Definition at line 91 of file transport.hpp.

91{ 30'000 };

◆ url

◆ write_timeout

std::chrono::milliseconds arachne::pheidippides::fetch_request_v1::write_timeout { 30'000 }

Definition at line 86 of file transport.hpp.

86{ 30'000 };

The documentation for this struct was generated from the following file: