29 lines
754 B
Python
29 lines
754 B
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
from typing import Self, Optional, Any
|
|
from abc import ABC, abstractmethod
|
|
from Models.SessionModel import SessionModel
|
|
|
|
class SessionsManagerInterface(ABC):
|
|
|
|
@abstractmethod
|
|
def update(self:Self) -> None:pass
|
|
|
|
@abstractmethod
|
|
def reset(self:Self) -> None:pass
|
|
|
|
@abstractmethod
|
|
def create(self:Self) -> SessionModel:pass
|
|
|
|
@abstractmethod
|
|
def _get_instance(self:Self, id:str) -> SessionModel|None:pass
|
|
|
|
@abstractmethod
|
|
def get(self:Self, id:str, key:str, default:Optional[Any] = None) -> Any|None:pass
|
|
|
|
@abstractmethod
|
|
def set(self:Self, id:str, key:str, value:Any|None) -> bool:pass
|
|
|
|
@abstractmethod
|
|
def remove(self:Self, id:str) -> bool:pass |