namespace Wallabag\ApiBundle\Controller;
use FOS\RestBundle\Controller\FOSRestController;
+use Hateoas\Configuration\Route;
+use Hateoas\Representation\Factory\PagerfantaFactory;
use Nelmio\ApiDocBundle\Annotation\ApiDoc;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
+use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Wallabag\CoreBundle\Entity\Entry;
use Wallabag\CoreBundle\Entity\Tag;
-use Hateoas\Configuration\Route;
-use Hateoas\Representation\Factory\PagerfantaFactory;
class WallabagRestController extends FOSRestController
{
* }
* )
*
- * @return Entry
+ * @return Response
*/
public function getEntriesAction(Request $request)
{
$pagerfantaFactory = new PagerfantaFactory('page', 'perPage');
$paginatedCollection = $pagerfantaFactory->createRepresentation(
$pager,
- new Route('api_get_entries', [], $absolute = true)
+ new Route('api_get_entries', [], UrlGeneratorInterface::ABSOLUTE_URL)
);
$json = $this->get('serializer')->serialize($paginatedCollection, 'json');
* }
* )
*
- * @return Entry
+ * @return Response
*/
public function getEntryAction(Entry $entry)
{
* }
* )
*
- * @return Entry
+ * @return Response
*/
public function postEntriesAction(Request $request)
{
* }
* )
*
- * @return Entry
+ * @return Response
*/
public function patchEntriesAction(Entry $entry, Request $request)
{
* }
* )
*
- * @return Entry
+ * @return Response
*/
public function deleteEntriesAction(Entry $entry)
{
* {"name"="entry", "dataType"="integer", "requirement"="\w+", "description"="The entry ID"}
* }
* )
+ *
+ * @return Response
*/
public function getEntriesTagsAction(Entry $entry)
{
* {"name"="tags", "dataType"="string", "required"=false, "format"="tag1,tag2,tag3", "description"="a comma-separated list of tags."},
* }
* )
+ *
+ * @return Response
*/
public function postEntriesTagsAction(Request $request, Entry $entry)
{
* {"name"="entry", "dataType"="integer", "requirement"="\w+", "description"="The entry ID"}
* }
* )
+ *
+ * @return Response
*/
public function deleteEntriesTagsAction(Entry $entry, Tag $tag)
{
* Retrieve all tags.
*
* @ApiDoc()
+ *
+ * @return Response
*/
public function getTagsAction()
{
* {"name"="tag", "dataType"="integer", "requirement"="\w+", "description"="The tag"}
* }
* )
+ *
+ * @return Response
*/
public function deleteTagAction(Tag $tag)
{