use crate::model::record::PortRecord;
use crate::types::{Configuration, NodeId, RuntimeId};
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct SinkRecord {
pub id: NodeId,
pub uid: u32,
pub inputs: Vec<PortRecord>,
pub uri: Option<String>,
pub configuration: Option<Configuration>,
pub runtime: RuntimeId,
}
impl std::fmt::Display for SinkRecord {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
write!(f, "{} - Kind: Sink", self.id)
}
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct SourceRecord {
pub id: NodeId,
pub uid: u32,
pub outputs: Vec<PortRecord>,
pub uri: Option<String>,
pub configuration: Option<Configuration>,
pub runtime: RuntimeId,
}
impl std::fmt::Display for SourceRecord {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
write!(f, "{} - Kind: Source", self.id)
}
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct OperatorRecord {
pub id: NodeId,
pub uid: u32,
pub inputs: Vec<PortRecord>,
pub outputs: Vec<PortRecord>,
pub uri: Option<String>,
pub configuration: Option<Configuration>,
pub runtime: RuntimeId,
}
impl std::fmt::Display for OperatorRecord {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
write!(f, "{} - Kind: Operator", self.id)
}
}