1.class decorator
class myDecorator:
def __init__(self, func):
print("inside myDecorator.__init__()")
self.func = func
def __call__(self):
self.func()
print("inside myDecorator.__call__()")
class CustomizedJsonSerializer:
def __init__(self, serializeType):
self._serializeType = serializeType
def __call__(self, func):
def wrapper(*args, **kwargs):
res = func(*args, **kwargs)
serializer = lambda x: x.__str__() if isinstance(x, self._serializeType) else None
serializedData = json.dumps(res, default=serializer)
return serializedData
return wrapper