brokkr-broker::dal::rendered_deployment_objects
Rust
Data Access Layer for Rendered Deployment Object operations.
This module provides functionality to interact with the rendered_deployment_objects table in the database, tracking the provenance of deployment objects created from templates.
Structs
Section titled “Structs”struct RenderedDeploymentObjectsDAL<'a>
Section titled “struct RenderedDeploymentObjectsDAL<'a>”pub
Handles database operations for RenderedDeploymentObject entities.
Fields
Section titled “Fields”| Name | Type | Description |
|---|---|---|
dal |
&'a DAL |
Reference to the main DAL instance. |
Methods
Section titled “Methods”create
Section titled “create”pub
fn create( &self, new_record: &NewRenderedDeploymentObject,) -> Result<RenderedDeploymentObject, diesel::result::Error>Creates a new rendered deployment object provenance record in the database.
Parameters:
| Name | Type | Description |
|---|---|---|
new_record |
&NewRenderedDeploymentObject |
The new provenance record details to be inserted. |
Returns:
The created RenderedDeploymentObject on success, or a diesel::result::Error on failure.
Source
pub fn create( &self, new_record: &NewRenderedDeploymentObject, ) -> Result<RenderedDeploymentObject, diesel::result::Error> { let conn = &mut self.dal.conn()?; diesel::insert_into(rendered_deployment_objects::table) .values(new_record) .get_result(conn) }pub
fn get( &self, record_id: Uuid,) -> Result<Option<RenderedDeploymentObject>, diesel::result::Error>Retrieves a rendered deployment object provenance record by its ID.
Parameters:
| Name | Type | Description |
|---|---|---|
record_id |
Uuid |
The UUID of the record to retrieve. |
Returns:
An Option<RenderedDeploymentObject> if found, or a diesel::result::Error on failure.
Source
pub fn get( &self, record_id: Uuid, ) -> Result<Option<RenderedDeploymentObject>, diesel::result::Error> { let conn = &mut self.dal.conn()?; rendered_deployment_objects::table .filter(rendered_deployment_objects::id.eq(record_id)) .first(conn) .optional() }get_by_deployment_object
Section titled “get_by_deployment_object”pub
fn get_by_deployment_object( &self, deployment_object_id: Uuid,) -> Result<Option<RenderedDeploymentObject>, diesel::result::Error>Retrieves the provenance record for a specific deployment object.
Parameters:
| Name | Type | Description |
|---|---|---|
deployment_object_id |
Uuid |
The UUID of the deployment object. |
Returns:
An Option<RenderedDeploymentObject> if found, or a diesel::result::Error on failure.
Source
pub fn get_by_deployment_object( &self, deployment_object_id: Uuid, ) -> Result<Option<RenderedDeploymentObject>, diesel::result::Error> { let conn = &mut self.dal.conn()?; rendered_deployment_objects::table .filter(rendered_deployment_objects::deployment_object_id.eq(deployment_object_id)) .first(conn) .optional() }list_by_template
Section titled “list_by_template”pub
fn list_by_template( &self, template_id: Uuid, version: Option<i32>,) -> Result<Vec<RenderedDeploymentObject>, diesel::result::Error>Lists all provenance records for a specific template.
Parameters:
| Name | Type | Description |
|---|---|---|
template_id |
Uuid |
The UUID of the template. |
version |
Option<i32> |
Optional version filter. If provided, only returns records for that version. |
Returns:
A Vec<RenderedDeploymentObject> for the specified template, or a diesel::result::Error on failure.
Source
pub fn list_by_template( &self, template_id: Uuid, version: Option<i32>, ) -> Result<Vec<RenderedDeploymentObject>, diesel::result::Error> { let conn = &mut self.dal.conn()?;
let mut query = rendered_deployment_objects::table .filter(rendered_deployment_objects::template_id.eq(template_id)) .into_boxed();
if let Some(v) = version { query = query.filter(rendered_deployment_objects::template_version.eq(v)); }
query .order(rendered_deployment_objects::created_at.desc()) .load::<RenderedDeploymentObject>(conn) }pub
fn list( &self,) -> Result<Vec<RenderedDeploymentObject>, diesel::result::Error>Lists all provenance records from the database.
Returns:
A Vec<RenderedDeploymentObject> containing all records, or a diesel::result::Error on failure.
Source
pub fn list(&self) -> Result<Vec<RenderedDeploymentObject>, diesel::result::Error> { let conn = &mut self.dal.conn()?; rendered_deployment_objects::table .order(rendered_deployment_objects::created_at.desc()) .load::<RenderedDeploymentObject>(conn) }delete
Section titled “delete”pub
fn delete( &self, record_id: Uuid,) -> Result<usize, diesel::result::Error>Deletes a provenance record from the database.
Parameters:
| Name | Type | Description |
|---|---|---|
record_id |
Uuid |
The UUID of the record to delete. |
Returns:
The number of affected rows (0 or 1) on success, or a diesel::result::Error on failure.
Source
pub fn delete(&self, record_id: Uuid) -> Result<usize, diesel::result::Error> { let conn = &mut self.dal.conn()?; diesel::delete( rendered_deployment_objects::table .filter(rendered_deployment_objects::id.eq(record_id)), ) .execute(conn) }delete_for_deployment_object
Section titled “delete_for_deployment_object”pub
fn delete_for_deployment_object( &self, deployment_object_id: Uuid,) -> Result<usize, diesel::result::Error>Deletes all provenance records for a specific deployment object.
Parameters:
| Name | Type | Description |
|---|---|---|
deployment_object_id |
Uuid |
The UUID of the deployment object. |
Returns:
The number of affected rows on success, or a diesel::result::Error on failure.
Source
pub fn delete_for_deployment_object( &self, deployment_object_id: Uuid, ) -> Result<usize, diesel::result::Error> { let conn = &mut self.dal.conn()?; diesel::delete( rendered_deployment_objects::table .filter(rendered_deployment_objects::deployment_object_id.eq(deployment_object_id)), ) .execute(conn) }delete_for_template
Section titled “delete_for_template”pub
fn delete_for_template( &self, template_id: Uuid,) -> Result<usize, diesel::result::Error>Deletes all provenance records for a specific template.
Parameters:
| Name | Type | Description |
|---|---|---|
template_id |
Uuid |
The UUID of the template. |
Returns:
The number of affected rows on success, or a diesel::result::Error on failure.
Source
pub fn delete_for_template(&self, template_id: Uuid) -> Result<usize, diesel::result::Error> { let conn = &mut self.dal.conn()?; diesel::delete( rendered_deployment_objects::table .filter(rendered_deployment_objects::template_id.eq(template_id)), ) .execute(conn) }