pub struct ConnectTransport<B, N, H> { /* private fields */ }Expand description
TransportService over a Pipeline. Each handler takes the
Authenticated that super::AuthInterceptor stored for existing RPCs;
GetServerInfo is deliberately unauthenticated. The M2 RPCs remain
explicit stubs until their implementing WPs land.
Implementations§
Trait Implementations§
Source§impl<B, N, H> Debug for ConnectTransport<B, N, H>
impl<B, N, H> Debug for ConnectTransport<B, N, H>
Source§impl<B, N, H> TransportService for ConnectTransport<B, N, H>
impl<B, N, H> TransportService for ConnectTransport<B, N, H>
Source§async fn list_repos(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, ListReposRequest>,
) -> ServiceResult<ListReposResponse>
async fn list_repos( &self, ctx: RequestContext, request: ServiceRequest<'_, ListReposRequest>, ) -> ServiceResult<ListReposResponse>
List readable repository names in a namespace (STC §7.10). Read more
Source§async fn list_refs(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, ListRefsRequest>,
) -> ServiceResult<ListRefsResponse>
async fn list_refs( &self, ctx: RequestContext, request: ServiceRequest<'_, ListRefsRequest>, ) -> ServiceResult<ListRefsResponse>
List refs whose full name starts with
prefix. Returned names have
prefix stripped, per SPEC-REFS §4. An empty prefix lists every ref. Read moreSource§async fn read_ref(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, ReadRefRequest>,
) -> ServiceResult<ReadRefResponse>
async fn read_ref( &self, ctx: RequestContext, request: ServiceRequest<'_, ReadRefRequest>, ) -> ServiceResult<ReadRefResponse>
Read a ref’s current value.
exists = false if absent. Read moreSource§async fn update_ref(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, UpdateRefRequest>,
) -> ServiceResult<UpdateRefResponse>
async fn update_ref( &self, ctx: RequestContext, request: ServiceRequest<'_, UpdateRefRequest>, ) -> ServiceResult<UpdateRefResponse>
CAS ref write. Connect code
failed_precondition on a CAS mismatch
(MISSING on an existing ref, or MATCH on a different current
value); invalid_argument on REF_EXPECTATION_UNSPECIFIED. See
SPEC-TRANSPORT-CONNECT §3 — the response never carries the current
ref value; a client that needs to disambiguate MUST follow up with
ReadRef. Read moreSource§async fn advance_refs(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, AdvanceRefsRequest>,
) -> ServiceResult<AdvanceRefsResponse>
async fn advance_refs( &self, ctx: RequestContext, request: ServiceRequest<'_, AdvanceRefsRequest>, ) -> ServiceResult<AdvanceRefsResponse>
Atomically advance a branch’s head ref and packmap ref together,
each under its own CAS precondition. See SPEC-TRANSPORT-CONNECT §4. Read more
Source§async fn pack_exists(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, PackExistsRequest>,
) -> ServiceResult<PackExistsResponse>
async fn pack_exists( &self, ctx: RequestContext, request: ServiceRequest<'_, PackExistsRequest>, ) -> ServiceResult<PackExistsResponse>
HEAD-check a pack by digest. Read more
Source§async fn upload_pack(
&self,
ctx: RequestContext,
requests: InboundStream<UploadPackRequest>,
) -> ServiceResult<UploadPackResponse>
async fn upload_pack( &self, ctx: RequestContext, requests: InboundStream<UploadPackRequest>, ) -> ServiceResult<UploadPackResponse>
Client-streaming pack upload. The first message on the stream MUST be
header; every subsequent message MUST be chunk, in ascending
contiguous offset order, ending with a chunk.last = true message.
The server MUST reject a stream whose received byte count does not
equal header.total_bytes or whose BLAKE3 does not equal
header.pack_id, and MUST NOT store partial bytes on rejection. See
SPEC-TRANSPORT-CONNECT §6. Read moreSource§async fn download_pack(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, DownloadPackRequest>,
) -> ServiceResult<ServiceStream<DownloadPackResponse>>
async fn download_pack( &self, ctx: RequestContext, request: ServiceRequest<'_, DownloadPackRequest>, ) -> ServiceResult<ServiceStream<DownloadPackResponse>>
Server-streaming pack download. The first message on the stream MUST
be
header; every subsequent message MUST be chunk, ending with a
chunk.last = true message. Connect code not_found (raised before
any message is sent) if the digest is absent. See
SPEC-TRANSPORT-CONNECT §6. Read moreSource§async fn get_server_info(
&self,
_ctx: RequestContext,
_request: ServiceRequest<'_, GetServerInfoRequest>,
) -> ServiceResult<GetServerInfoResponse>
async fn get_server_info( &self, _ctx: RequestContext, _request: ServiceRequest<'_, GetServerInfoRequest>, ) -> ServiceResult<GetServerInfoResponse>
Discover deployment capabilities without authentication (SPEC-TRANSPORT-CONNECT §2.1). Read more
Source§async fn get_receipt(
&self,
_ctx: RequestContext,
_request: ServiceRequest<'_, GetReceiptRequest>,
) -> ServiceResult<GetReceiptResponse>
async fn get_receipt( &self, _ctx: RequestContext, _request: ServiceRequest<'_, GetReceiptRequest>, ) -> ServiceResult<GetReceiptResponse>
Fetch a retained writer-view storage receipt (SPEC-SERVER §15). Read more
Source§async fn begin_upload(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, BeginUploadRequest>,
) -> ServiceResult<BeginUploadResponse>
async fn begin_upload( &self, ctx: RequestContext, request: ServiceRequest<'_, BeginUploadRequest>, ) -> ServiceResult<BeginUploadResponse>
Reserve an upload for a ref (SPEC-TRANSPORT-CONNECT §7.6). Read more
Source§async fn upload_part(
&self,
ctx: RequestContext,
requests: InboundStream<UploadPartRequest>,
) -> ServiceResult<UploadPartResponse>
async fn upload_part( &self, ctx: RequestContext, requests: InboundStream<UploadPartRequest>, ) -> ServiceResult<UploadPartResponse>
Stream one ticketed upload part (SPEC-TRANSPORT-CONNECT §7.6). Read more
Source§async fn complete_upload(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, CompleteUploadRequest>,
) -> ServiceResult<CompleteUploadResponse>
async fn complete_upload( &self, ctx: RequestContext, request: ServiceRequest<'_, CompleteUploadRequest>, ) -> ServiceResult<CompleteUploadResponse>
Complete a multipart upload using its receipts (SPEC-TRANSPORT-CONNECT §7.6). Read more
Source§async fn get_grant_epoch(
&self,
_ctx: RequestContext,
request: ServiceRequest<'_, GetGrantEpochRequest>,
) -> ServiceResult<GetGrantEpochResponse>
async fn get_grant_epoch( &self, _ctx: RequestContext, request: ServiceRequest<'_, GetGrantEpochRequest>, ) -> ServiceResult<GetGrantEpochResponse>
Namespace grant epoch RPCs (SPEC-WRITE-GRANTS §5.3). Read more
Source§async fn set_grant_epoch(
&self,
_ctx: RequestContext,
request: ServiceRequest<'_, SetGrantEpochRequest>,
) -> ServiceResult<SetGrantEpochResponse>
async fn set_grant_epoch( &self, _ctx: RequestContext, request: ServiceRequest<'_, SetGrantEpochRequest>, ) -> ServiceResult<SetGrantEpochResponse>
Handle the SetGrantEpoch RPC. Read more
Outside auth-v2; the setter verifies a deployment-authority statement. Read more
Handle the SetAuthorityGeneration RPC. Read more
Source§async fn set_repo_visibility(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, SetRepoVisibilityRequest>,
) -> ServiceResult<SetRepoVisibilityResponse>
async fn set_repo_visibility( &self, ctx: RequestContext, request: ServiceRequest<'_, SetRepoVisibilityRequest>, ) -> ServiceResult<SetRepoVisibilityResponse>
Repository visibility and URL tokens (SPEC-WRITE-GRANTS §9.1, §9.4). Read more
Source§async fn issue_object_url(
&self,
ctx: RequestContext,
request: ServiceRequest<'_, IssueObjectUrlRequest>,
) -> ServiceResult<IssueObjectUrlResponse>
async fn issue_object_url( &self, ctx: RequestContext, request: ServiceRequest<'_, IssueObjectUrlRequest>, ) -> ServiceResult<IssueObjectUrlResponse>
Handle the IssueObjectUrl RPC. Read more
Auto Trait Implementations§
impl<B, N, H> !RefUnwindSafe for ConnectTransport<B, N, H>
impl<B, N, H> !UnwindSafe for ConnectTransport<B, N, H>
impl<B, N, H> Freeze for ConnectTransport<B, N, H>
impl<B, N, H> Send for ConnectTransport<B, N, H>
impl<B, N, H> Sync for ConnectTransport<B, N, H>
impl<B, N, H> Unpin for ConnectTransport<B, N, H>
impl<B, N, H> UnsafeUnpin for ConnectTransport<B, N, H>where
Shared<Pipeline<B, N, H>>: UnsafeUnpin,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more