o
    ej                     @  s   d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dl	m
Z
 e
e jZeeddZeeddZdd
dZdddZdddZdddZedkrXe  dS dS )    )annotationsN)PathPORTZ8086REFRESH_SECONDSZ1800returnNonec                   C  s   t jddgtdd d S )NZpythonzfetch_stock_data.pyF)cwdZcheck)
subprocessrunBASE_DIR r   r   faintry-stock/run_app.py	run_fetch   s
   
r   c                   C  s   	 t   ttdt q)NTi,  )r   timesleepmaxr   r   r   r   r   refresh_loop   s   r   c                  C  s`   t t tjj} tdtf| }t	dt d |
  W d    d S 1 s)w   Y  d S )N z(Serving Faintry Stock at http://0.0.0.0:z/ui/)oschdirr   httpZserverZSimpleHTTPRequestHandlersocketserverZ	TCPServerr   printZserve_forever)ZhandlerZhttpdr   r   r   serve   s   

"r   c                  C  s&   t   tjtdd} |   t  d S )NT)targetZdaemon)r   	threadingZThreadr   startr   )Zworkerr   r   r   main'   s   
r   __main__)r   r   )Z
__future__r   Zhttp.serverr   r   r   r	   r   r   Zpathlibr   __file__Zresolveparentr   intgetenvr   r   r   r   r   r   __name__r   r   r   r   <module>   s$    




