-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathAPILinterTestAndDemo.mdsl
107 lines (95 loc) · 4.34 KB
/
APILinterTestAndDemo.mdsl
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
API description APILinterDemoAPI
data type SampleDTO {"key":ID<int>, "value":D<bool>?}
data type NestedDTO {"counter":MD<int>, "links":L*, "values":SampleDTO+, IncompleteBaseTypeDesign, "baseTypeTest": AllBaseTypes, "pfTest":ParameterForest}
data type AllBaseTypes {D<int>, D<long>, D<double>, D<string>, "raw":D<raw>, "aVoid": D<void>}
data type ParameterForest ["pt1":{D}; {{"pt2":D}}; {"apl":(ID, L, MD, D)}]
data type IncompleteBaseTypeDesign {P, "idOnly", "id":P, D}
data type ImpreciseBaseTypeDesign {"aVoid":D<void>}
data type InappropriateBaseTypeCombinations {ID<bool>, L<raw>, ID, MD<raw>}
endpoint type APILinterDemoPort
exposes
operation sayHello
expecting payload "in": D
delivering payload SampleDTO
operation sayHelloMultipleTimes
expecting payload "in": D+
delivering payload SampleDTO*
operation sayHelloNested
expecting payload "in":SampleDTO?
delivering payload NestedDTO*
operation sayHelloGenericParameters
expecting payload D<string>
delivering payload "tbd":ID
endpoint type MessageExchangePatternDemoPort
exposes
operation testRequestReply in REQUEST_REPLY conversation
expecting payload D<string>
delivering payload SampleDTO
operation testOneWay in ONE_WAY conversation
expecting payload D<string>
operation testNotification in NOTIFICATION conversation
delivering payload SampleDTO
operation testNoOp in "ToBeContinued" conversation
// incomplete specification, does not make much sense at runtime
operation invalidOperationDesignForRequestReply in REQUEST_REPLY conversation
// expecting payload D<string>
// delivering payload SampleDTO
operation invalidOperationDesignForOneWay in ONE_WAY conversation
// expecting payload D<string>
delivering payload SampleDTO
operation invalidOperationDesignForNotification in NOTIFICATION conversation
expecting payload D<string>
// delivering payload SampleDTO
endpoint type MAPDecoratorValidationDemoPort1 serves as PROCESSING_RESOURCE
exposes
operation createSomething with responsibility STATE_CREATION_OPERATION
expecting payload SampleDTO
delivering payload D<string>
endpoint type MAPDecoratorValidationDemoPort2 serves as INFORMATION_HOLDER_RESOURCE
exposes
operation computeSomething with responsibility COMPUTATION_FUNCTION
expecting payload {"p1", "p2"}
delivering payload "p3": D<int>
operation createSomething with responsibility STATE_CREATION_OPERATION
expecting payload SampleDTO
delivering payload D<string>
operation updateSomething with responsibility STATE_TRANSITION_OPERATION
expecting payload SampleDTO
delivering payload D<string>
operation searchSomething with responsibility RETRIEVAL_OPERATION
expecting payload SampleDTO
delivering payload D<string>
// endpoint type MAPDecoratorValidationDemoPort3 serves as MASTER_DATA_HOLDER
endpoint type MAPDecoratorValidationDemoPort3 serves as REFERENCE_DATA_HOLDER
// endpoint type MAPDecoratorValidationDemoPort3 serves as DATA_TRANSFER_RESOURCE
// endpoint type MAPDecoratorValidationDemoPort3 serves as LINK_LOOKUP_RESOURCE
exposes
operation computeSomethingMore with responsibility COMPUTATION_FUNCTION
expecting payload {"p1", "p2"}
delivering payload "p3": D<int>
operation createSomething with responsibility STATE_CREATION_OPERATION
expecting payload SampleDTO
delivering payload D<string>
operation updateSomething with responsibility STATE_TRANSITION_OPERATION
expecting payload SampleDTO
delivering payload D<string>
operation searchSomething with responsibility RETRIEVAL_OPERATION
expecting payload SampleDTO
delivering payload D<string>
API provider APILinterDemoAdapter1a
offers APILinterDemoPort
at endpoint location "http://tbc.tbc.tbc"
via protocol HTTP binding
resource Home
operation unboundOperation to GET
API provider APILinterDemoAdapter2
offers APILinterDemoPort
at endpoint location "http://tbc.tbc.tbc2" via protocol Java
API provider APILinterDemoAdapter3
offers APILinterDemoPort
at endpoint location "http://tbc.tbc.tbc3" via protocol gRPC
API provider APILinterDemoAdapter4
offers APILinterDemoPort
at endpoint location "http://tbc.tbc.tbc4" via protocol "SomeOtherProtocol"
API client HelloWorldAPIClient1
consumes APILinterDemoPort