pub struct GatewayProjects<'a>(pub &'a dyn GatewayApi);Expand description
ProjectGateway over the real gateway client.
Tuple Fields§
§0: &'a dyn GatewayApiTrait Implementations§
Source§impl ProjectGateway for GatewayProjects<'_>
impl ProjectGateway for GatewayProjects<'_>
Source§fn projects<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ProjectRecord>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn projects<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ProjectRecord>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Every project the gateway lists (
limit=-1).Source§fn project_find<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<ProjectRecord>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn project_find<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<ProjectRecord>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
One project by name;
None when the gateway has no such project.Source§fn export_bytes<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn export_bytes<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
The project’s export zip, in memory.
Source§fn designers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<DesignerSeen>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn designers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<DesignerSeen>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
The open Designer sessions as
(user, project, host) (a read). The
pre-check before an import (25-14, D-14, D-15).Source§fn gateway_name<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn gateway_name<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
The gateway’s own name over REST (
gateway-info), or None when it
reports none or a blank one. Read before any write to prove the
gateway is the one the target names (25-14, T-25-44).Source§fn tag_provider_names<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn tag_provider_names<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
The names of the tag providers the gateway lists (a read), in the
order it lists them.
Source§fn tag_export<'life0, 'life1, 'async_trait>(
&'life0 self,
provider: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn tag_export<'life0, 'life1, 'async_trait>(
&'life0 self,
provider: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
The native export of one tag provider’s tree, as the gateway’s own
bytes (a read).
provider is a name tag_provider_names returned.Source§fn project_import<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
zip: Vec<u8>,
overwrite: bool,
) -> Pin<Box<dyn Future<Output = Result<ImportOutcome, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn project_import<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
zip: Vec<u8>,
overwrite: bool,
) -> Pin<Box<dyn Future<Output = Result<ImportOutcome, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Import
zip as project name: overwrite=true replaces the whole
project, overwrite=false creates it. The only write of the verb. A
200 answer carrying success: false is import_denied.Source§fn tag_import<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
provider: &'life1 str,
path: &'life2 str,
policy: CollisionPolicy,
body: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<TagImportAnswer, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn tag_import<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
provider: &'life1 str,
path: &'life2 str,
policy: CollisionPolicy,
body: Vec<u8>,
) -> Pin<Box<dyn Future<Output = Result<TagImportAnswer, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Import the native tag JSON
body ({"tags":[...]}) into provider
below the parent path (empty is the provider root) under policy.
A tag write: only the run path of later plans calls it, and --check
must never reach it. The answer is returned as read; the caller treats
a non-clean answer as a failed step.Source§fn tag_provider_record<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<TagProviderRecord>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn tag_provider_record<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<TagProviderRecord>, CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
One tag provider’s resource record (a read, 26-10), or
None when the
gateway has no provider of that name.Source§fn tag_provider_create<'life0, 'life1, 'async_trait>(
&'life0 self,
body: &'life1 [TagProviderCreate],
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn tag_provider_create<'life0, 'life1, 'async_trait>(
&'life0 self,
body: &'life1 [TagProviderCreate],
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Create the providers of
body (a provider-settings write, 26-10).
Only the run path calls it, for an owned provider the gateway lacks.Source§fn tag_provider_modify<'life0, 'life1, 'async_trait>(
&'life0 self,
body: &'life1 [TagProviderModify],
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn tag_provider_modify<'life0, 'life1, 'async_trait>(
&'life0 self,
body: &'life1 [TagProviderModify],
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Modify the providers of
body (a provider-settings write, 26-10),
each with the signature of a fresh read. Only the run path calls it,
for an owned provider whose settings differ from the repo’s.Source§fn tag_provider_delete<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
name: &'life1 str,
signature: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn tag_provider_delete<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
name: &'life1 str,
signature: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Delete one tag provider with the signature of a fresh read (26-11).
Only the rollback of a run that created the provider calls it: it is
the undo of that create, and it removes the tags the run put in it.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for GatewayProjects<'a>
impl<'a> !UnwindSafe for GatewayProjects<'a>
impl<'a> Forget for GatewayProjects<'a>
impl<'a> Freeze for GatewayProjects<'a>
impl<'a> Move for GatewayProjects<'a>
impl<'a> Send for GatewayProjects<'a>
impl<'a> Sync for GatewayProjects<'a>
impl<'a> Unpin for GatewayProjects<'a>
impl<'a> UnsafeUnpin for GatewayProjects<'a>
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