-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathAdvancedServiceContractConcepts2.mdsl
52 lines (42 loc) · 2.01 KB
/
AdvancedServiceContractConcepts2.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
API description AdvancedServiceConceptsPreview
version "5.3"
overview "This service contract features error reporting, state transitions, compensation, and event emission/reception"
data type SampleDTOOpaque "location":P // not specified here but in an external JSON Schema
data type SampleDTO {ID, D} // these two incomplete specifications can be quick fixed in the plugin
data type Placeholder P // this incomplete specifications can be quick fixed in the plugin
data type Placeholder2 "nameOnly" // this incomplete specifications can be quick fixed in the plugin
data type Placeholder3 "name":P // this incomplete specifications can be quick fixed in the plugin
event type SomethingHasHappened {"when":D<string>, "what":D<string>}
event type ServerSideProcessingComplete
event type FailureMessage
command type doSomethingOnServerSide, undoSomethingOnServerSide
endpoint type HelloWorldEndpoint
exposes
operation doSomethingOnServerSide with responsibility STATE_TRANSITION_OPERATION
expecting payload D<string>
delivering payload SampleDTO
reporting error FailureMessage
transitions from "ReadyToWork" to "Done"
emitting event ServerSideProcessingComplete
compensated by undoSomethingOnServerSide
operation undoSomethingOnServerSide with responsibility STATE_TRANSITION_OPERATION
expecting payload D<string>
delivering payload SampleDTOOpaque structured as JSON_SCHEMA
transitions from "Done" to "ReadyToWork"
receives
event SomethingHasHappened
API provider HelloWorldAPIProvider
offers HelloWorldEndpoint
API client HelloWorldAPIClient
consumes HelloWorldEndpoint
flow SampleFlow
flow CombinedFlow
event SomethingHasHappened triggers command doSomethingOnServerSide
command doSomethingOnServerSide emits event ServerSideProcessingComplete
event FailureMessage triggers command undoSomethingOnServerSide
scenario SampleIntegrationRequirement
when "AConditionArises"
an "API Client"
wants to "perform action or process data"
so that "business goals are met"
IPA