Revize 4911f0ea
Přidáno uživatelem Matěj Zeman před asi 2 roky(ů)
server/sql_app/api/usb_logs.py | ||
---|---|---|
7 | 7 |
|
8 | 8 |
models.Base.metadata.create_all(bind=engine) |
9 | 9 |
|
10 |
# prefix used for all endpoints in this file |
|
10 | 11 |
usblogs = APIRouter(prefix="/api/v1") |
11 | 12 |
|
12 | 13 |
|
... | ... | |
21 | 22 |
|
22 | 23 |
@usblogs.post("/usb-logs", response_model=schemas.USBLog) |
23 | 24 |
def create_device_logs(log: schemas.USBTempBase, db: Session = Depends(get_db)): |
25 |
""" |
|
26 |
Endpoint called from keyman detecting client. Parses timestamp into datetime object. |
|
27 |
Finds if device and pc defined in message already exists and creates them if necessary. |
|
28 |
Saves log into database |
|
29 |
""" |
|
24 | 30 |
dev = crud.find_device(db, log.device) |
25 | 31 |
dat = datetime.strptime(log.timestamp, '%Y-%m-%d %H:%M:%S') |
26 | 32 |
if dev is None: |
... | ... | |
34 | 40 |
|
35 | 41 |
@usblogs.post("/ld-logs", response_model=schemas.LDLog) |
36 | 42 |
def create_ld_logs(log: schemas.LDTempBase, db: Session = Depends(get_db)): |
43 |
""" |
|
44 |
Endpoint called from debugger detecting client. Parses timestamp into datetime object. |
|
45 |
Finds if head device and body device defined in message already exists and creates them if necessary. |
|
46 |
Saves log into database |
|
47 |
""" |
|
37 | 48 |
head_dev = crud.find_head_device(db, log.head_device) |
38 | 49 |
body_dev = crud.find_body_device(db, log.body_device) |
39 | 50 |
if head_dev is None: |
... | ... | |
50 | 61 |
|
51 | 62 |
@usblogs.get("/logs", response_model=List[schemas.USBLog]) |
52 | 63 |
def read_logs(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): |
64 |
""" |
|
65 |
Returns all usb logs saved in database |
|
66 |
""" |
|
53 | 67 |
items = crud.get_logs(db, skip=skip, limit=limit) |
54 | 68 |
return items |
55 | 69 |
|
56 | 70 |
|
57 | 71 |
@usblogs.get("/logs/{device_id}", response_model=List[schemas.USBLog]) |
58 | 72 |
def read_log(device_id: int, db: Session = Depends(get_db)): |
73 |
""" |
|
74 |
Returns one specific log by given id |
|
75 |
""" |
|
59 | 76 |
db_log = crud.get_log(db, device_id=device_id) |
60 | 77 |
if db_log is None: |
61 | 78 |
raise HTTPException(status_code=404, detail="Logs not found") |
Také k dispozici: Unified diff
re #9577 Api code documentation.