Skip to main content

nominal_api/conjure/objects/ingest/manifest/
extractor_manifest.rs

1/// Manifest file produced by containerized extractors to describe their outputs.
2/// This is written as manifest.json in the OUTPUT_DIR by the container.
3#[derive(
4    Debug,
5    Clone,
6    conjure_object::serde::Serialize,
7    conjure_object::serde::Deserialize,
8    PartialEq,
9    Eq,
10    PartialOrd,
11    Ord,
12    Hash
13)]
14#[serde(crate = "conjure_object::serde")]
15#[conjure_object::private::staged_builder::staged_builder]
16#[builder(crate = conjure_object::private::staged_builder, update, inline)]
17pub struct ExtractorManifest {
18    #[builder(default, list(item(type = super::ManifestOutput)))]
19    #[serde(rename = "outputs", skip_serializing_if = "Vec::is_empty", default)]
20    outputs: Vec<super::ManifestOutput>,
21}
22impl ExtractorManifest {
23    /// Constructs a new instance of the type.
24    #[inline]
25    pub fn new() -> Self {
26        Self::builder().build()
27    }
28    /// List of output files produced by the extractor
29    #[inline]
30    pub fn outputs(&self) -> &[super::ManifestOutput] {
31        &*self.outputs
32    }
33}