a "en @sDddlmZddlmZddlmZddlmZGdddeZdS) )print_function)unicode_literals)View)_c@seZdZddZddZdS) HelperViewc Cs|dj|jjjd|jjr|dj|jjjd|dj|jjjd|dj|jjjd|jjj r|d j|jjj d j d n|d j|jjjdd }d }|jj D]R}||dj|jjj| |j |jdd}|d7}|dkr|dqq|jjjd kr4|d||jjjsJ|jjr|d|djtdd|jjs|dj|jjjdnl|jjr|dtd|jjnD|jjjD]}|dj|dq|jjjr|d|jjjdS)Nz * {app_name})app_namez Package: {pkg_name})pkg_namez" Description: {pkg_description})Zpkg_descriptionz Type: {type})typez Executable: {executable}r) executablez: Package: {app_name} is not provided by any packagez State: z={app_name} has been started by {user} {time} ago. PID - {pid})rusertimepidz rz ...z {title}:zHow to restart)titlez+ {app_name} does not need restartingz z%It's a part of application called {0}z {how_to_restart})Zhow_to_restartz - )printformatargsZ applicationnamepackage descriptionr capitalizeZaffected_instancesZexe processesusernameZstr_started_agorverboserender_affected_byhelperZaffectsr affected_byZhelpersZnote)selfindentiprocessrr#7/usr/lib/python3.9/site-packages/tracer/views/helper.pyrender sL           zHelperView.rendercCsd}d}||tddt|jjtkrH||||jjdSt}|jjD]}|}||jjvr|||d| |j |d7}|j D]t}|j |vs|dkr||||j | |j |jjj dkrq|d7}|jD]}||||q|d8}qqVdS)Nz z Affected by:z {0} ({1})r)rrr rrstrsetrrrrZpackagesaddrfiles)rZ default_levelr Zprinted_packagesr"Z indent_levelrfiler#r#r$r<s,      zHelperView.render_affected_byN)__name__ __module__ __qualname__r%rr#r#r#r$rs3rN)Z __future__rrrrZtracer.resources.langrrr#r#r#r$s