wordpress-event-bridge-for-.../includes/integrations/interface-feature-event-sources.php
André Menrath b5a199fe9c
All checks were successful
PHP Code Checker / PHP Code Checker (pull_request) Successful in 53s
PHPUnit / PHPUnit – PHP 7.4 (pull_request) Successful in 1m10s
PHPUnit / PHPUnit – PHP 8.0 (pull_request) Successful in 1m11s
PHPUnit / PHPUnit – PHP 8.1 (pull_request) Successful in 1m7s
PHPUnit / PHPUnit – PHP 8.2 (pull_request) Successful in 1m10s
PHPUnit / PHPUnit – PHP 8.3 (pull_request) Successful in 1m7s
PHPUnit / PHPUnit – PHP 8.4 (pull_request) Successful in 1m3s
cleanup and enhancement of documentation
2024-12-16 17:36:23 +01:00

44 lines
1.3 KiB
PHP

<?php
/**
* Interface for defining Methods needed for the Event Sources feature.
*
* The Event Sources feature is about following other ActivityPub actors and
* importing their events. That means treating them as cache and listing them.
* Events should be deleted some time after they have ended.
*
* @package Event_Bridge_For_ActivityPub
* @since 1.0.0
* @license AGPL-3.0-or-later
*/
namespace Event_Bridge_For_ActivityPub\Integrations;
use Event_Bridge_For_ActivityPub\ActivityPub\Transmogrifier\Base as Transmogrifier;
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit; // @codeCoverageIgnore
/**
* Interface for an event plugin integration that supports the Event Sources feature.
*
* @since 1.0.0
*/
interface Feature_Event_Sources {
/**
* Returns the plugin file relative to the plugins dir.
*
* @return Transmogrifier
*/
public static function get_transmogrifier(): Transmogrifier;
/**
* Retrieves a list of post IDs for cached remote events that have ended.
*
* Filters the events to include only those that ended before the specified timestamp.
*
* @param int $ended_before_time Unix timestamp. Only events ending before this time will be included.
*
* @return int[] List of post IDs for events that match the criteria.
*/
public static function get_cached_remote_events( $ended_before_time ): array;
}