Files
wallabag/src/Import/ImportInterface.php

78 lines
1.5 KiB
PHP
Raw Normal View History

2015-10-23 14:01:27 +02:00
<?php
2024-02-19 01:30:12 +01:00
namespace Wallabag\Import;
2015-10-23 14:01:27 +02:00
use Psr\Log\LoggerAwareInterface;
2025-04-05 16:19:38 +02:00
use Wallabag\Entity\User;
interface ImportInterface extends LoggerAwareInterface
2015-10-23 14:01:27 +02:00
{
/**
* Name of the import.
*
* @return string
*/
public function getName();
/**
* Url to start the import.
*
* @return string
*/
public function getUrl();
/**
* Description of the import.
*
* @return string
*/
public function getDescription();
/**
* Import content using the user token.
*
* @return bool
*/
public function import();
/**
* Return an array with summary info about the import, with keys:
* - skipped
* - imported.
*
* @return array
*/
public function getSummary();
2025-04-05 16:19:38 +02:00
/**
* Set current user.
* Could the current *connected* user or one retrieve by the consumer.
*/
public function setUser(User $user);
/**
* Set file path to the json file.
*
* @param string $filepath
*/
public function setFilepath($filepath): static;
/**
* Set whether articles must be all marked as read.
*
* @param bool $markAsRead
*/
public function setMarkAsRead($markAsRead): static;
/**
* Get whether the import is enabled.
* If not, the importer won't be available in the UI.
*/
public function isEnabled(): bool;
/**
* Set whether the import is enabled.
*/
public function setEnabled(bool $enabled): static;
2015-10-23 14:01:27 +02:00
}