-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontants.py
More file actions
42 lines (30 loc) · 695 Bytes
/
contants.py
File metadata and controls
42 lines (30 loc) · 695 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from dataclasses import dataclass
from datetime import datetime
from enum import Enum
@dataclass
class Record:
data: any
access_time: datetime = None
frequency: int = None
upload_time: datetime = None
@dataclass
class PriorityQueueRecord:
key: any
access_time: datetime = None
frequency: int = None
@dataclass
class ExpiryQueueRecord:
key: any
upload_time: datetime = None
class EvictionAlgo(Enum):
LRU = 'LRU'
LFU = 'LFU'
class FetchAlgorithm(Enum):
WRITE_THROUGH = 'WRITE_THROUGH'
WRITE_BACK = 'WRITE_BACK'
class Events(Enum):
ADD = 'Add'
EXPIRE = 'Expire'
DELETE = 'Delete'
UPDATE = 'Update'
FETCH = 'Fetch'