mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 01:00:29 +08:00
refactoring
This commit is contained in:
parent
1fd33bc8ed
commit
8a13f62911
@ -20,7 +20,8 @@
|
|||||||
# ========================================================================== #
|
# ========================================================================== #
|
||||||
|
|
||||||
|
|
||||||
import aiohttp.web
|
from aiohttp.web import Request
|
||||||
|
from aiohttp.web import Response
|
||||||
|
|
||||||
from ....plugins.atx import BaseAtx
|
from ....plugins.atx import BaseAtx
|
||||||
|
|
||||||
@ -39,11 +40,11 @@ class AtxApi:
|
|||||||
# =====
|
# =====
|
||||||
|
|
||||||
@exposed_http("GET", "/atx")
|
@exposed_http("GET", "/atx")
|
||||||
async def __state_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __state_handler(self, _: Request) -> Response:
|
||||||
return make_json_response(self.__atx.get_state())
|
return make_json_response(self.__atx.get_state())
|
||||||
|
|
||||||
@exposed_http("POST", "/atx/power")
|
@exposed_http("POST", "/atx/power")
|
||||||
async def __power_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __power_handler(self, request: Request) -> Response:
|
||||||
action = valid_atx_power_action(request.query.get("action"))
|
action = valid_atx_power_action(request.query.get("action"))
|
||||||
processing = await ({
|
processing = await ({
|
||||||
"on": self.__atx.power_on,
|
"on": self.__atx.power_on,
|
||||||
@ -54,7 +55,7 @@ class AtxApi:
|
|||||||
return make_json_response({"processing": processing})
|
return make_json_response({"processing": processing})
|
||||||
|
|
||||||
@exposed_http("POST", "/atx/click")
|
@exposed_http("POST", "/atx/click")
|
||||||
async def __click_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __click_handler(self, request: Request) -> Response:
|
||||||
button = valid_atx_button(request.query.get("button"))
|
button = valid_atx_button(request.query.get("button"))
|
||||||
await ({
|
await ({
|
||||||
"power": self.__atx.click_power,
|
"power": self.__atx.click_power,
|
||||||
|
|||||||
@ -22,7 +22,9 @@
|
|||||||
|
|
||||||
from typing import Dict
|
from typing import Dict
|
||||||
|
|
||||||
import aiohttp.web
|
from aiohttp.web import Request
|
||||||
|
from aiohttp.web import Response
|
||||||
|
from aiohttp.web import WebSocketResponse
|
||||||
|
|
||||||
from ....plugins.hid import BaseHid
|
from ....plugins.hid import BaseHid
|
||||||
|
|
||||||
@ -46,18 +48,18 @@ class HidApi:
|
|||||||
# =====
|
# =====
|
||||||
|
|
||||||
@exposed_http("GET", "/hid")
|
@exposed_http("GET", "/hid")
|
||||||
async def __state_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __state_handler(self, _: Request) -> Response:
|
||||||
return make_json_response(await self.__hid.get_state())
|
return make_json_response(await self.__hid.get_state())
|
||||||
|
|
||||||
@exposed_http("POST", "/hid/reset")
|
@exposed_http("POST", "/hid/reset")
|
||||||
async def __reset_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __reset_handler(self, _: Request) -> Response:
|
||||||
await self.__hid.reset()
|
await self.__hid.reset()
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|
||||||
# =====
|
# =====
|
||||||
|
|
||||||
@exposed_ws("key")
|
@exposed_ws("key")
|
||||||
async def __ws_key_handler(self, _: aiohttp.web.WebSocketResponse, event: Dict) -> None:
|
async def __ws_key_handler(self, _: WebSocketResponse, event: Dict) -> None:
|
||||||
try:
|
try:
|
||||||
key = valid_hid_key(event["key"])
|
key = valid_hid_key(event["key"])
|
||||||
state = valid_bool(event["state"])
|
state = valid_bool(event["state"])
|
||||||
@ -66,7 +68,7 @@ class HidApi:
|
|||||||
await self.__hid.send_key_event(key, state)
|
await self.__hid.send_key_event(key, state)
|
||||||
|
|
||||||
@exposed_ws("mouse_button")
|
@exposed_ws("mouse_button")
|
||||||
async def __ws_mouse_button_handler(self, _: aiohttp.web.WebSocketResponse, event: Dict) -> None:
|
async def __ws_mouse_button_handler(self, _: WebSocketResponse, event: Dict) -> None:
|
||||||
try:
|
try:
|
||||||
button = valid_hid_mouse_button(event["button"])
|
button = valid_hid_mouse_button(event["button"])
|
||||||
state = valid_bool(event["state"])
|
state = valid_bool(event["state"])
|
||||||
@ -75,7 +77,7 @@ class HidApi:
|
|||||||
await self.__hid.send_mouse_button_event(button, state)
|
await self.__hid.send_mouse_button_event(button, state)
|
||||||
|
|
||||||
@exposed_ws("mouse_move")
|
@exposed_ws("mouse_move")
|
||||||
async def __ws_mouse_move_handler(self, _: aiohttp.web.WebSocketResponse, event: Dict) -> None:
|
async def __ws_mouse_move_handler(self, _: WebSocketResponse, event: Dict) -> None:
|
||||||
try:
|
try:
|
||||||
to_x = valid_hid_mouse_move(event["to"]["x"])
|
to_x = valid_hid_mouse_move(event["to"]["x"])
|
||||||
to_y = valid_hid_mouse_move(event["to"]["y"])
|
to_y = valid_hid_mouse_move(event["to"]["y"])
|
||||||
@ -84,7 +86,7 @@ class HidApi:
|
|||||||
await self.__hid.send_mouse_move_event(to_x, to_y)
|
await self.__hid.send_mouse_move_event(to_x, to_y)
|
||||||
|
|
||||||
@exposed_ws("mouse_wheel")
|
@exposed_ws("mouse_wheel")
|
||||||
async def __ws_mouse_wheel_handler(self, _: aiohttp.web.WebSocketResponse, event: Dict) -> None:
|
async def __ws_mouse_wheel_handler(self, _: WebSocketResponse, event: Dict) -> None:
|
||||||
try:
|
try:
|
||||||
delta_x = valid_hid_mouse_wheel(event["delta"]["x"])
|
delta_x = valid_hid_mouse_wheel(event["delta"]["x"])
|
||||||
delta_y = valid_hid_mouse_wheel(event["delta"]["y"])
|
delta_y = valid_hid_mouse_wheel(event["delta"]["y"])
|
||||||
|
|||||||
@ -20,7 +20,8 @@
|
|||||||
# ========================================================================== #
|
# ========================================================================== #
|
||||||
|
|
||||||
|
|
||||||
import aiohttp.web
|
from aiohttp.web import Request
|
||||||
|
from aiohttp.web import StreamResponse
|
||||||
|
|
||||||
from ....validators.basic import valid_bool
|
from ....validators.basic import valid_bool
|
||||||
|
|
||||||
@ -39,11 +40,11 @@ class LogApi:
|
|||||||
# =====
|
# =====
|
||||||
|
|
||||||
@exposed_http("GET", "/log")
|
@exposed_http("GET", "/log")
|
||||||
async def __log_handler(self, request: aiohttp.web.Request) -> aiohttp.web.StreamResponse:
|
async def __log_handler(self, request: Request) -> StreamResponse:
|
||||||
seek = valid_log_seek(request.query.get("seek", "0"))
|
seek = valid_log_seek(request.query.get("seek", "0"))
|
||||||
follow = valid_bool(request.query.get("follow", "false"))
|
follow = valid_bool(request.query.get("follow", "false"))
|
||||||
|
|
||||||
response = aiohttp.web.StreamResponse(status=200, reason="OK", headers={"Content-Type": "text/plain"})
|
response = StreamResponse(status=200, reason="OK", headers={"Content-Type": "text/plain"})
|
||||||
await response.prepare(request)
|
await response.prepare(request)
|
||||||
|
|
||||||
async for record in self.__log_reader.poll_log(seek, follow):
|
async for record in self.__log_reader.poll_log(seek, follow):
|
||||||
|
|||||||
@ -20,8 +20,8 @@
|
|||||||
# ========================================================================== #
|
# ========================================================================== #
|
||||||
|
|
||||||
|
|
||||||
import aiohttp
|
from aiohttp.web import Request
|
||||||
import aiohttp.web
|
from aiohttp.web import Response
|
||||||
|
|
||||||
from ....logging import get_logger
|
from ....logging import get_logger
|
||||||
|
|
||||||
@ -45,11 +45,11 @@ class MsdApi:
|
|||||||
# =====
|
# =====
|
||||||
|
|
||||||
@exposed_http("GET", "/msd")
|
@exposed_http("GET", "/msd")
|
||||||
async def __state_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __state_handler(self, _: Request) -> Response:
|
||||||
return make_json_response(await self.__msd.get_state())
|
return make_json_response(await self.__msd.get_state())
|
||||||
|
|
||||||
@exposed_http("POST", "/msd/set_params")
|
@exposed_http("POST", "/msd/set_params")
|
||||||
async def __set_params_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __set_params_handler(self, request: Request) -> Response:
|
||||||
params = {
|
params = {
|
||||||
key: validator(request.query.get(param))
|
key: validator(request.query.get(param))
|
||||||
for (param, key, validator) in [
|
for (param, key, validator) in [
|
||||||
@ -62,17 +62,17 @@ class MsdApi:
|
|||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|
||||||
@exposed_http("POST", "/msd/connect")
|
@exposed_http("POST", "/msd/connect")
|
||||||
async def __connect_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __connect_handler(self, _: Request) -> Response:
|
||||||
await self.__msd.connect()
|
await self.__msd.connect()
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|
||||||
@exposed_http("POST", "/msd/disconnect")
|
@exposed_http("POST", "/msd/disconnect")
|
||||||
async def __disconnect_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __disconnect_handler(self, _: Request) -> Response:
|
||||||
await self.__msd.disconnect()
|
await self.__msd.disconnect()
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|
||||||
@exposed_http("POST", "/msd/write")
|
@exposed_http("POST", "/msd/write")
|
||||||
async def __write_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __write_handler(self, request: Request) -> Response:
|
||||||
logger = get_logger(0)
|
logger = get_logger(0)
|
||||||
reader = await request.multipart()
|
reader = await request.multipart()
|
||||||
name = ""
|
name = ""
|
||||||
@ -96,11 +96,11 @@ class MsdApi:
|
|||||||
return make_json_response({"image": {"name": name, "size": written}})
|
return make_json_response({"image": {"name": name, "size": written}})
|
||||||
|
|
||||||
@exposed_http("POST", "/msd/remove")
|
@exposed_http("POST", "/msd/remove")
|
||||||
async def __remove_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __remove_handler(self, request: Request) -> Response:
|
||||||
await self.__msd.remove(valid_msd_image_name(request.query.get("image")))
|
await self.__msd.remove(valid_msd_image_name(request.query.get("image")))
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|
||||||
@exposed_http("POST", "/msd/reset")
|
@exposed_http("POST", "/msd/reset")
|
||||||
async def __reset_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __reset_handler(self, _: Request) -> Response:
|
||||||
await self.__msd.reset()
|
await self.__msd.reset()
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|||||||
@ -20,7 +20,8 @@
|
|||||||
# ========================================================================== #
|
# ========================================================================== #
|
||||||
|
|
||||||
|
|
||||||
import aiohttp.web
|
from aiohttp.web import Request
|
||||||
|
from aiohttp.web import Response
|
||||||
|
|
||||||
from ..wol import WakeOnLan
|
from ..wol import WakeOnLan
|
||||||
|
|
||||||
@ -36,10 +37,10 @@ class WolApi:
|
|||||||
# =====
|
# =====
|
||||||
|
|
||||||
@exposed_http("GET", "/wol")
|
@exposed_http("GET", "/wol")
|
||||||
async def __wol_state_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __wol_state_handler(self, _: Request) -> Response:
|
||||||
return make_json_response(self.__wol.get_state())
|
return make_json_response(self.__wol.get_state())
|
||||||
|
|
||||||
@exposed_http("POST", "/wol/wakeup")
|
@exposed_http("POST", "/wol/wakeup")
|
||||||
async def __wol_wakeup_handler(self, _: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __wol_wakeup_handler(self, _: Request) -> Response:
|
||||||
await self.__wol.wakeup()
|
await self.__wol.wakeup()
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user