missing cache functions

This commit is contained in:
Sascha Nitsch 2024-07-17 11:47:48 +02:00
parent ef25c5b3af
commit e53f04d0c0
2 changed files with 65 additions and 0 deletions

23
php/cache/cache.php vendored Normal file
View file

@ -0,0 +1,23 @@
<?php
/**
* SPDX-FileCopyrightText: 2024 Sascha Nitsch (grumpydeveloper) https://contentnation.net/@grumpydevelop
* SPDX-License-Identifier: GPL-3.0-or-later
*
* @author Sascha Nitsch (grumpydeveloper)
**/
namespace Federator\Cache;
/**
* base class for remote authentication
*/
interface Cache extends \Federator\Connector\Connector
{
/**
* save remote user by given session
* @param string $_session session id
* @param string $_user user/profile name
* @return \Federator\Data\User | null
*/
public function saveRemoteUserBySession(string $_session, string $_user, \Federator\Data\User $user);
}

42
plugins/rediscache.php Normal file
View file

@ -0,0 +1,42 @@
<?php
/**
* SPDX-FileCopyrightText: 2024 Sascha Nitsch (grumpydeveloper) https://contentnation.net/@grumpydevelop
* SPDX-License-Identifier: GPL-3.0-or-later
*
* @author Sascha Nitsch <grumpydevelop@contentnation.net>
**/
namespace Federator\Cache;
/**
* Caching class using redis
*/
class RedisCache implements Cache
{
/** @var \Redis connection handle */
private $redis;
public function __construct()
{
}
/**
* get remote user by given session
* @param string $_session session id
* @param string $_user user/profile name
* @return \Data\User | null
*/
public function getRemoteUserBySession(string $_session, string $_user)
{
}
public function saveRemoteUserBySession(string $_session, string $_user, \Federator\Data\User $user)
{
}
}
function dummy_rediscache(\Federator\Main $main)
{
$rc = new RedisCache();
$main->setCache($rc);
}