services updated
This commit is contained in:
115
Events/AllEvents/validations/validation/validation.py
Normal file
115
Events/AllEvents/validations/validation/validation.py
Normal file
@@ -0,0 +1,115 @@
|
||||
"""
|
||||
Validation related API endpoints.
|
||||
"""
|
||||
|
||||
from typing import Any, Dict
|
||||
from fastapi import Request
|
||||
|
||||
from Events.Engine.abstract_class import MethodToEvent
|
||||
from Events.base_request_model import EndpointBaseRequestModel, ContextRetrievers
|
||||
from ApiLayers.Middleware.auth_middleware import MiddlewareModule
|
||||
|
||||
from .api_events import validation_event, menu_event, cluster_event, page_event
|
||||
from .function_handlers import RetrieveValidation, RetrievePage
|
||||
|
||||
|
||||
ValidationEventMethods = MethodToEvent(
|
||||
name="ValidationEventMethods",
|
||||
events={validation_event.key: validation_event},
|
||||
headers=[],
|
||||
errors=[],
|
||||
url="/validations",
|
||||
method="POST",
|
||||
decorators_list=[MiddlewareModule.auth_required],
|
||||
summary="Get Validations by event function code",
|
||||
description="Get Validations by event function code by All, Header, Validation & request url",
|
||||
)
|
||||
|
||||
|
||||
def validations_endpoint(
|
||||
request: Request, data: EndpointBaseRequestModel
|
||||
) -> Dict[str, Any]:
|
||||
function = ValidationEventMethods.retrieve_event(
|
||||
event_function_code=f"{validation_event.key}"
|
||||
)
|
||||
data = function.REQUEST_VALIDATOR(**data.data)
|
||||
RetrieveValidation.context_retriever = ContextRetrievers(func=validations_endpoint)
|
||||
return function.endpoint_callable(request=request, data=data)
|
||||
|
||||
|
||||
ValidationEventMethods.endpoint_callable = validations_endpoint
|
||||
|
||||
|
||||
MenuEventMethods = MethodToEvent(
|
||||
name="MenuEventMethods",
|
||||
events={menu_event.key: menu_event},
|
||||
headers=[],
|
||||
errors=[],
|
||||
url="/menu",
|
||||
method="POST",
|
||||
decorators_list=[MiddlewareModule.auth_required],
|
||||
summary="Get Left Menu of the user",
|
||||
description="Get Left Menu of the user",
|
||||
)
|
||||
|
||||
|
||||
def menu_endpoint(request: Request, data: EndpointBaseRequestModel) -> Dict[str, Any]:
|
||||
function = MenuEventMethods.retrieve_event(event_function_code=f"{menu_event.key}")
|
||||
data = function.REQUEST_VALIDATOR(**data.data)
|
||||
RetrieveValidation.context_retriever = ContextRetrievers(func=menu_endpoint)
|
||||
return function.endpoint_callable(request=request, data=data)
|
||||
|
||||
|
||||
MenuEventMethods.endpoint_callable = menu_endpoint
|
||||
|
||||
|
||||
# Cluster Event
|
||||
ClusterEventMethods = MethodToEvent(
|
||||
name="ClusterEventMethods",
|
||||
events={cluster_event.key: cluster_event},
|
||||
headers=[],
|
||||
errors=[],
|
||||
url="/cluster",
|
||||
method="POST",
|
||||
decorators_list=[MiddlewareModule.auth_required],
|
||||
summary="Get Left Menu of the user",
|
||||
description="Get Left Menu of the user",
|
||||
)
|
||||
|
||||
|
||||
def cluster_endpoint(
|
||||
request: Request, data: EndpointBaseRequestModel
|
||||
) -> Dict[str, Any]:
|
||||
function = ClusterEventMethods.retrieve_event(
|
||||
event_function_code=f"{cluster_event.key}"
|
||||
)
|
||||
data = function.REQUEST_VALIDATOR(**data.data)
|
||||
RetrievePage.context_retriever = ContextRetrievers(func=cluster_endpoint)
|
||||
return function.endpoint_callable(request=request, data=data)
|
||||
|
||||
|
||||
ClusterEventMethods.endpoint_callable = cluster_endpoint
|
||||
|
||||
|
||||
# Page Event
|
||||
PageEventMethods = MethodToEvent(
|
||||
name="PageEventMethods",
|
||||
events={page_event.key: page_event},
|
||||
headers=[],
|
||||
errors=[],
|
||||
url="/page",
|
||||
method="POST",
|
||||
decorators_list=[MiddlewareModule.auth_required],
|
||||
summary="Get Left Menu of the user",
|
||||
description="Get Left Menu of the user",
|
||||
)
|
||||
|
||||
|
||||
def page_endpoint(request: Request, data: EndpointBaseRequestModel) -> Dict[str, Any]:
|
||||
function = PageEventMethods.retrieve_event(event_function_code=f"{page_event.key}")
|
||||
data = function.REQUEST_VALIDATOR(**data.data)
|
||||
RetrievePage.context_retriever = ContextRetrievers(func=page_endpoint)
|
||||
return function.endpoint_callable(request=request, data=data)
|
||||
|
||||
|
||||
PageEventMethods.endpoint_callable = page_endpoint
|
||||
Reference in New Issue
Block a user