@@ -81,42 +81,34 @@ In some cases it may be necessary to only expose a few actions on a resource. Fo
81
81
82
82
This interface hierarchy is defined by this tree structure.
83
83
84
- ```
85
- IResourceService
86
- |
87
- +-- IResourceQueryService
88
- | |
89
- | +-- IGetAllService
90
- | | GET /
91
- | |
92
- | +-- IGetByIdService
93
- | | GET /{id}
94
- | |
95
- | +-- IGetSecondaryService
96
- | | GET /{id}/{relationship}
97
- | |
98
- | +-- IGetRelationshipService
99
- | GET /{id}/relationships/{relationship}
100
- |
101
- +-- IResourceCommandService
102
- |
103
- +-- ICreateService
104
- | POST /
105
- |
106
- +-- IUpdateService
107
- | PATCH /{id}
108
- |
109
- +-- IDeleteService
110
- | DELETE /{id}
111
- |
112
- +-- IAddToRelationshipService
113
- | POST /{id}/relationships/{relationship}
114
- |
115
- +-- ISetRelationshipService
116
- | PATCH /{id}/relationships/{relationship}
117
- |
118
- +-- IRemoveFromRelationshipService
119
- DELETE /{id}/relationships/{relationship}
84
+ ``` mermaid
85
+ classDiagram
86
+ direction LR
87
+ class IResourceService
88
+ class IResourceQueryService
89
+ class IGetAllService ["IGetAllService\nGET /"]
90
+ class IGetByIdService ["IGetByIdService\nGET /{id}"]
91
+ class IGetSecondaryService ["IGetSecondaryService\nGET /{id}/{relationship}"]
92
+ class IGetRelationshipService ["IGetRelationshipService\nGET /{id}/relationships/{relationship}"]
93
+ class IResourceCommandService
94
+ class ICreateService ["ICreateService\nPOST /"]
95
+ class IUpdateService ["IUpdateService\nPATCH /{id}"]
96
+ class IDeleteService ["IDeleteService\nDELETE /{id}"]
97
+ class IAddToRelationshipService ["IAddToRelationshipService\nPOST /{id}/relationships/{relationship}"]
98
+ class ISetRelationshipService ["ISetRelationshipService\nPATCH /{id}/relationships/{relationship}"]
99
+ class IRemoveFromRelationshipService ["IRemoveFromRelationshipService\nDELETE /{id}/relationships/{relationship}"]
100
+ IResourceService <|-- IResourceQueryService
101
+ IResourceQueryService<|-- IGetAllService
102
+ IResourceQueryService<|-- IGetByIdService
103
+ IResourceQueryService<|-- IGetSecondaryService
104
+ IResourceQueryService<|-- IGetRelationshipService
105
+ IResourceService <|-- IResourceCommandService
106
+ IResourceCommandService <|-- ICreateService
107
+ IResourceCommandService <|-- IUpdateService
108
+ IResourceCommandService <|-- IDeleteService
109
+ IResourceCommandService <|-- IAddToRelationshipService
110
+ IResourceCommandService <|-- ISetRelationshipService
111
+ IResourceCommandService <|-- IRemoveFromRelationshipService
120
112
```
121
113
122
114
In order to take advantage of these interfaces you first need to register the service for each implemented interface.
0 commit comments