BookApiHandler
in package
implements
ApiRoutableInterface
uses
ApiRoutableTrait
API handler for book operations.
Handles REST API endpoints for book management.
Tags
Table of Contents
Interfaces
- ApiRoutableInterface
- Interface for API handlers that participate in route dispatch.
Properties
Methods
- __construct() : mixed
- Constructor.
- deleteBook() : array<string|int, mixed>
- Handle DELETE /api/v1/books/{id} request.
- getBook() : array<string|int, mixed>
- Handle GET /api/v1/books/{id} request.
- getChapters() : array<string|int, mixed>
- Handle GET /api/v1/books/{id}/chapters request.
- listBooks() : array<string|int, mixed>
- Handle GET /api/v1/books request.
- routeDelete() : JsonResponse
- Handle a DELETE request for this resource.
- routeGet() : JsonResponse
- Handle a GET request for this resource.
- routePost() : JsonResponse
- routePut() : JsonResponse
- Handle a PUT request for this resource.
- updateProgress() : array<string|int, mixed>
- Handle PUT /api/v1/books/{id}/progress request.
- frag() : string
- Extract a fragment from the fragments array.
Properties
$bookFacade
private
BookFacade
$bookFacade
Methods
__construct()
Constructor.
public
__construct(BookFacade $bookFacade) : mixed
Parameters
- $bookFacade : BookFacade
-
Book facade
deleteBook()
Handle DELETE /api/v1/books/{id} request.
public
deleteBook(array<string|int, mixed> $params) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed>
-
Request parameters (id)
Return values
array<string|int, mixed> —Response data
getBook()
Handle GET /api/v1/books/{id} request.
public
getBook(array<string|int, mixed> $params) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed>
-
Request parameters (id)
Return values
array<string|int, mixed> —Response data
getChapters()
Handle GET /api/v1/books/{id}/chapters request.
public
getChapters(array<string|int, mixed> $params) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed>
-
Request parameters (id)
Return values
array<string|int, mixed> —Response data
listBooks()
Handle GET /api/v1/books request.
public
listBooks(array<string|int, mixed> $params) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed>
-
Request parameters
Return values
array<string|int, mixed> —Response data
routeDelete()
Handle a DELETE request for this resource.
public
routeDelete(array<string|int, mixed> $fragments, array<string|int, mixed> $params) : JsonResponse
Parameters
- $fragments : array<string|int, mixed>
-
URL path segments (resource name already consumed)
- $params : array<string|int, mixed>
-
Query/body parameters
Return values
JsonResponserouteGet()
Handle a GET request for this resource.
public
routeGet(array<string|int, mixed> $fragments, array<string|int, mixed> $params) : JsonResponse
Parameters
- $fragments : array<string|int, mixed>
-
URL path segments (resource name already consumed)
- $params : array<string|int, mixed>
-
Query parameters
Return values
JsonResponseroutePost()
public
routePost(array<string|int, mixed> $fragments, array<string|int, mixed> $params) : JsonResponse
Parameters
- $fragments : array<string|int, mixed>
- $params : array<string|int, mixed>
Return values
JsonResponseroutePut()
Handle a PUT request for this resource.
public
routePut(array<string|int, mixed> $fragments, array<string|int, mixed> $params) : JsonResponse
Parameters
- $fragments : array<string|int, mixed>
-
URL path segments (resource name already consumed)
- $params : array<string|int, mixed>
-
JSON body parameters
Return values
JsonResponseupdateProgress()
Handle PUT /api/v1/books/{id}/progress request.
public
updateProgress(array<string|int, mixed> $params) : array<string|int, mixed>
Update reading progress for a book.
Parameters
- $params : array<string|int, mixed>
-
Request parameters (id, chapter)
Return values
array<string|int, mixed> —Response data
frag()
Extract a fragment from the fragments array.
protected
frag(array<int, string> $fragments, int $index) : string
Parameters
- $fragments : array<int, string>
-
The URL path fragments
- $index : int
-
The index to extract
Return values
string —The fragment at the index, or empty string if not present