viper / entities /entity.py
hoduyquocbao's picture
update fix logger
4f6ee5b
from dataclasses import dataclass, field
import logging
setup_logging = __import__('logging_config').setup_logging
setup_logging()
logger = logging.getLogger('entities')
@dataclass
class Entity:
data: dict = field(default_factory=dict)
def create(self, key: str, value: any):
if not isinstance(key, str) or value is None:
logger.error('Invalid key or value')
return
self.data[key] = value
logger.info(f"Create: {key} = {value}")
def read(self, key: str):
if not isinstance(key, str):
logger.error('Invalid key')
return
value = self.data.get(key)
logger.info(f"Read: {key} = {value}")
return value
def update(self, key: str, value: any):
if not isinstance(key, str) or value is None:
logger.error('Invalid key or value')
return
self.data[key] = value
logger.info(f"Update: {key} = {value}")
def delete(self, key: str):
if not isinstance(key, str):
logger.error('Invalid key')
return
if key in self.data:
del self.data[key]
logger.info(f"Delete: {key}")