File tree Expand file tree Collapse file tree 4 files changed +71
-10
lines changed
Expand file tree Collapse file tree 4 files changed +71
-10
lines changed Original file line number Diff line number Diff line change @@ -280,4 +280,57 @@ public function updateMessage(
280280 Response::HTTP_OK
281281 );
282282 }
283+
284+ #[Route('/{messageId} ' , name: 'delete_campaign ' , methods: ['DELETE ' ])]
285+ #[OA \Delete(
286+ path: '/campaigns/{messageId} ' ,
287+ description: 'Delete campaign/message by id. ' ,
288+ summary: 'Delete campaign by id. ' ,
289+ tags: ['campaigns ' ],
290+ parameters: [
291+ new OA \Parameter (
292+ name: 'session ' ,
293+ description: 'Session ID obtained from authentication ' ,
294+ in: 'header ' ,
295+ required: true ,
296+ schema: new OA \Schema (
297+ type: 'string '
298+ )
299+ ),
300+ new OA \Parameter (
301+ name: 'messageId ' ,
302+ description: 'message ID ' ,
303+ in: 'path ' ,
304+ required: true ,
305+ schema: new OA \Schema (type: 'string ' )
306+ )
307+ ],
308+ responses: [
309+ new OA \Response (
310+ response: 200 ,
311+ description: 'Success ' ,
312+ content: new OA \JsonContent (ref: '#/components/schemas/Message ' )
313+ ),
314+ new OA \Response (
315+ response: 403 ,
316+ description: 'Failure ' ,
317+ content: new OA \JsonContent (ref: '#/components/schemas/UnauthorizedResponse ' )
318+ ),
319+ new OA \Response (
320+ response: 404 ,
321+ description: 'Failure ' ,
322+ content: new OA \JsonContent (ref: '#/components/schemas/NotFoundErrorResponse ' )
323+ )
324+ ]
325+ )]
326+ public function deleteMessage (
327+ Request $ request ,
328+ #[MapEntity(mapping: ['messageId ' => 'id ' ])] Message $ message
329+ ): JsonResponse {
330+ $ this ->requireAuthentication ($ request );
331+
332+ $ this ->messageManager ->delete ($ message );
333+
334+ return new JsonResponse (null , Response::HTTP_NO_CONTENT );
335+ }
283336}
Original file line number Diff line number Diff line change @@ -218,16 +218,7 @@ public function getList(
218218 new OA \Response (
219219 response: 404 ,
220220 description: 'Failure ' ,
221- content: new OA \JsonContent (
222- properties: [
223- new OA \Property (
224- property: 'message ' ,
225- type: 'string ' ,
226- example: 'There is no session with that ID. '
227- )
228- ],
229- type: 'object '
230- )
221+ content: new OA \JsonContent (ref: '#/components/schemas/NotFoundErrorResponse ' )
231222 )
232223 ]
233224 )]
Original file line number Diff line number Diff line change 5050 ],
5151 type: 'object '
5252)]
53+ #[OA \Schema(
54+ schema: 'NotFoundErrorResponse ' ,
55+ required: ['message ' ],
56+ properties: [
57+ new OA \Property (
58+ property: 'message ' ,
59+ type: 'string ' ,
60+ example: 'There is no entity with that ID. '
61+ ),
62+ ],
63+ type: 'object '
64+ )]
5365class SwaggerSchemasResponse
5466{
5567}
Original file line number Diff line number Diff line change @@ -43,4 +43,9 @@ public function updateMessage(
4343
4444 return $ message ;
4545 }
46+
47+ public function delete (Message $ message ): void
48+ {
49+ $ this ->messageRepository ->remove ($ message );
50+ }
4651}
You can’t perform that action at this time.
0 commit comments