pub trait GatewayStore {
// Required methods
fn put_request(
&mut self,
id: ContentId,
request: GatewayRequest,
) -> Result<()>;
fn request(&self, id: &ContentId) -> Option<GatewayRequest>;
fn put_run(&mut self, id: ContentId, run: GatewayRun) -> Result<()>;
fn run(&self, id: &ContentId) -> Option<GatewayRun>;
fn put_event(&mut self, id: ContentId, event: GatewayEvent) -> Result<()>;
fn event(&self, id: &ContentId) -> Option<GatewayEvent>;
fn put_response(
&mut self,
id: ContentId,
response: GatewayResponse,
) -> Result<()>;
fn response(&self, id: &ContentId) -> Option<GatewayResponse>;
}Expand description
Content-addressed store for the gateway’s eval-pipeline records.
Each record is keyed by its ContentId, so writing the same value twice
is idempotent. Concrete backends implement this trait over in-memory maps
or SIM tables.
Required Methods§
Sourcefn put_request(&mut self, id: ContentId, request: GatewayRequest) -> Result<()>
fn put_request(&mut self, id: ContentId, request: GatewayRequest) -> Result<()>
Stores a request under its content id.
Sourcefn request(&self, id: &ContentId) -> Option<GatewayRequest>
fn request(&self, id: &ContentId) -> Option<GatewayRequest>
Returns the request stored under id, if present.
Sourcefn put_run(&mut self, id: ContentId, run: GatewayRun) -> Result<()>
fn put_run(&mut self, id: ContentId, run: GatewayRun) -> Result<()>
Stores a run under its content id.
Sourcefn run(&self, id: &ContentId) -> Option<GatewayRun>
fn run(&self, id: &ContentId) -> Option<GatewayRun>
Returns the run stored under id, if present.
Sourcefn put_event(&mut self, id: ContentId, event: GatewayEvent) -> Result<()>
fn put_event(&mut self, id: ContentId, event: GatewayEvent) -> Result<()>
Stores an event under its content id.
Sourcefn event(&self, id: &ContentId) -> Option<GatewayEvent>
fn event(&self, id: &ContentId) -> Option<GatewayEvent>
Returns the event stored under id, if present.
Sourcefn put_response(
&mut self,
id: ContentId,
response: GatewayResponse,
) -> Result<()>
fn put_response( &mut self, id: ContentId, response: GatewayResponse, ) -> Result<()>
Stores a response under its content id.
Sourcefn response(&self, id: &ContentId) -> Option<GatewayResponse>
fn response(&self, id: &ContentId) -> Option<GatewayResponse>
Returns the response stored under id, if present.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".