@@ -81,42 +81,34 @@ In some cases it may be necessary to only expose a few actions on a resource. Fo
8181
8282This interface hierarchy is defined by this tree structure.
8383
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
120112```
121113
122114In order to take advantage of these interfaces you first need to register the service for each implemented interface.
0 commit comments