Server IP : 149.255.58.128 / Your IP : 216.73.216.48
System : Linux cloud516.thundercloud.uk 5.14.0-427.26.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 17 15:51:13 EDT 2024 x86_64
PHP Version : 8.2.28
Disable Function : allow_url_include, apache_child_terminate, apache_setenv, exec, passthru, pcntl_exec, posix_kill, posix_mkfifo, posix_getpwuid, posix_setpgid, posix_setsid, posix_setuid, posix_setgid, posix_seteuid, posix_setegid, posix_uname, proc_close, proc_get_status, proc_open, proc_terminate, shell_exec, show_source, system
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Upload Files :
Command :
Current File : /usr/lib/python3.9/site-packages/tuned/exports/__pycache__//dbus_exporter.cpython-39.pyc
a
�ԳfU � @ s d dl mZ ddlZddlZddlZddlZddlZddlZ ddl
mZ ddlZddl
Z
ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dd lmZ zdd
lmZ dd� ZW n ey� dd
lmZ Y n0 e j�� Zdd� ZG dd� dej �Z!dS )� )�
interfaces� N)�ismethod)�polkit)�GLib)�FunctionType)�
DBusException)�ErrorMessage��getfullargspecc C s t | �S �Nr
)�func� r �?/usr/lib/python3.9/site-packages/tuned/exports/dbus_exporter.py�
getargspec s r )r c C s� t |dd �}|d urn0t |dd�dv r4d|jj }nd|j|jjf }t|t�rZ|�� }nd�t� |j|��}t
|||�}|�� s�| �|� d S )NZ_dbus_error_name�
__module__� )r �__main__zorg.freedesktop.DBus.Python.%sz!org.freedesktop.DBus.Python.%s.%s)
�getattr� __class__�__name__r �
isinstancer Zget_dbus_message�join� traceback�format_exception_onlyr Zget_no_replyZsend_message)Z
connection�message� exception�name�contentsZreplyr r r �_method_reply_error$ s
�r c @ s� e Zd ZdZdd� Zedd� �Zedd� �Zedd � �Zd
d� Z dd
� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� ZdS )�DBusExportera+
Export method calls through DBus Interface.
We take a method to be exported and create a simple wrapper function
to call it. This is required as we need the original function to be
bound to the original object instance. While the wrapper will be bound
to an object we dynamically construct.
c C s� t �� tjkrttj_tjjj dd� d | _
d | _i | _t
� | _|| _|| _|| _|| _d | _d | _t� | _t�tj�}t�� | _t�tj|� d S )NT)Zset_as_default)�logZgetEffectiveLevel�logging�DEBUGr �dbus�serviceZmainloopZglibZ
DBusGMainLoop�_dbus_object_clsZ_dbus_object�
_dbus_methods�set�_signals� _bus_name�_interface_name�_object_name�
_namespace�_thread�_bus_objectr �_polkit�signal� getsignal�SIGINTr ZMainLoop�
_main_loop)�self�bus_name�interface_name�object_name� namespaceZsignal_handlerr r r �__init__B s"