pub trait ChangeArtifactMutationService: Send + Sync {
// Required methods
fn load_artifact(
&self,
target: &ChangeArtifactRef,
) -> Result<Option<String>, ChangeArtifactMutationError>;
fn write_artifact(
&self,
target: &ChangeArtifactRef,
content: &str,
) -> Result<ChangeArtifactMutationResult, ChangeArtifactMutationError>;
fn patch_artifact(
&self,
target: &ChangeArtifactRef,
patch: &str,
) -> Result<ChangeArtifactMutationResult, ChangeArtifactMutationError>;
}Expand description
Port for active-change artifact mutations.
Required Methods§
Sourcefn load_artifact(
&self,
target: &ChangeArtifactRef,
) -> Result<Option<String>, ChangeArtifactMutationError>
fn load_artifact( &self, target: &ChangeArtifactRef, ) -> Result<Option<String>, ChangeArtifactMutationError>
Load the current artifact contents, if available.
Sourcefn write_artifact(
&self,
target: &ChangeArtifactRef,
content: &str,
) -> Result<ChangeArtifactMutationResult, ChangeArtifactMutationError>
fn write_artifact( &self, target: &ChangeArtifactRef, content: &str, ) -> Result<ChangeArtifactMutationResult, ChangeArtifactMutationError>
Replace the artifact contents completely.
Sourcefn patch_artifact(
&self,
target: &ChangeArtifactRef,
patch: &str,
) -> Result<ChangeArtifactMutationResult, ChangeArtifactMutationError>
fn patch_artifact( &self, target: &ChangeArtifactRef, patch: &str, ) -> Result<ChangeArtifactMutationResult, ChangeArtifactMutationError>
Apply a targeted patch to the current artifact contents.