aboutsummaryrefslogtreecommitdiffstats
path: root/lib/warden-core/src/iso20022.rs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/warden-core/src/iso20022.rs')
-rw-r--r--lib/warden-core/src/iso20022.rs32
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/warden-core/src/iso20022.rs b/lib/warden-core/src/iso20022.rs
new file mode 100644
index 0000000..e9e4a24
--- /dev/null
+++ b/lib/warden-core/src/iso20022.rs
@@ -0,0 +1,32 @@
+#[derive(Debug)]
+pub enum TransactionType {
+ PACS008,
+ PACS002,
+}
+
+impl std::fmt::Display for TransactionType {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(
+ f,
+ "{}",
+ match self {
+ TransactionType::PACS002 => "pacs.002.001.12",
+ TransactionType::PACS008 => "pacs.008.001.12",
+ }
+ )
+ }
+}
+
+/// Pacs008 file descriptor
+pub const ISO20022_FILE_DESCRIPTOR_SET: &[u8] =
+ tonic::include_file_descriptor_set!("iso20022_descriptor");
+
+/// pacs.008.001.12
+pub mod pacs008 {
+ tonic::include_proto!("iso20022.pacs008");
+}
+
+/// pacs.002.001.12
+pub mod pacs002 {
+ tonic::include_proto!("iso20022.pacs002");
+}