aboutsummaryrefslogtreecommitdiffstats
path: root/proto/warden_message.proto
blob: 50886a6db0c6d853459ef03d94da8d5b59975842 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
syntax = "proto3";

package message;

import "configuration/routing.proto";
import "configuration/typology.proto";
import "google/protobuf/timestamp.proto";
import "proto/iso20022/pacs_002_001_12.proto";
import "proto/iso20022/pacs_008_001_12.proto";

message Payload {
  oneof transaction {
    iso20022.pacs008.Pacs008Document pacs008 = 1;
    iso20022.pacs002.Pacs002Document pacs002 = 2;
  }
  DataCache data_cache = 3;
  string tx_tp = 4;
  configuration.routing.RoutingConfiguration routing = 5;
  RuleResult rule_result = 6;
  TypologyResult typology_result = 7;
  AggregationResult aggregation_result = 8;
}

message RuleResult {
  string id = 1;
  string version = 2;
  string sub_rule_ref = 3;
  string reason = 4;
  string desc = 5;
  double wght = 6;
}

message TypologyResult {
  string id = 1;
  string version = 2;
  string desc = 3;
  double result = 4;
  double threshold = 5;
  repeated RuleResult rule_results = 6;
  bool review = 7;
  configuration.typology.Workflow workflow = 8;
}


message DataCache {
  string cdtr_id = 1;
  string dbtr_id = 2;
  string dbtr_acct_id = 3;
  string cdtr_acct_id = 4;
  google.protobuf.Timestamp cre_dt_tm = 5;
  iso20022.pacs008.ActiveOrHistoricCurrencyAndAmount instd_amt = 6;
  iso20022.pacs008.ActiveCurrencyAndAmount intr_bk_sttlm_amt = 7;
  optional double xchg_rate = 8;
}

message AggregationResult {
  string id = 1;
  string version = 2;
  repeated TypologyResult typology_results = 3;
  bool review = 4;
}