from django.urls import path, include, re_path
from app import views, user_views

urlpatterns = [
    path('login/', user_views.UserViewSet.as_view({'post': 'login'})),
    path('getAsyncRoutes/', user_views.AsyncRoutesViewSet.as_view({'get': 'list'})),
    path('get_user_info/', user_views.UserViewSet.as_view({'get': 'get_user_info'})),
    path('users/', user_views.UserViewSet.as_view({'post': 'create', "get": "list"})),

    path('server/', views.ServerModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('server_log/', views.ServerLogModelViewSet.as_view({'post': 'create', "get": "list"})),

    path('enterprise/', views.EnterpriseModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('enterprise_node/', views.EnterpriseNodeModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('enterprise_alert/', views.EnterpriseAlertModelViewSet.as_view({'post': 'create', "get": "list"})),

    path('models/', views.AlgModelModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('models_classification/', views.ModelClassificationModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('models_version/', views.ModelVersionModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('models_hub/', views.ModelHubModelViewSet.as_view({'post': 'create', "get": "list"})),

    path('device_classfication/', views.DeviceClassificationModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('devices/', views.EnterpriseDeviceModelViewSet.as_view({'post': 'create', "get": "list"})),

    path('enterprise_business_model/',
         views.EnterpriseBusiModelModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('enterprise_model_node_device/',
         views.EnterpriseBusiModelNodeDeviceModelViewSet.as_view({'post': 'create', "get": "list"})),

    path('warning_statistics/', views.WarningStatisticsModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('compute_config/', views.ComputeConfigModelViewSet.as_view({'post': 'create', "get": "list"})),

    path('files/', views.FilesModelViewSet.as_view({'post': 'create', "get": "list", "delete": "destroy"})),
    path('messages/', views.MessageModelViewSet.as_view({'post': 'create', "get": "list"})),
    path('set_default_version/', views.ModelVersionModelViewSet.as_view({'post': 'set_default_version'})),

    path('data_overview/', views.DataOverviewModelViewSet.as_view({'get': 'list'})),
    path('device_and_warnings/', views.DeviceAndWarningsModelViewSet.as_view({'get': 'list'})),
    path('warnings_and_message/', views.WarningsAndMessageModelViewSet.as_view({'get': 'list'})),
    path('classify_warnings/', views.ClassifyWarningsModelViewSet.as_view({'get': 'list'})),

]