!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache. PHP/7.3.33 

uname -a: Linux acloudg.aryanict.com 4.18.0-513.9.1.lve.el8.x86_64 #1 SMP Mon Dec 4 15:01:22 UTC
2023 x86_64
 

uid=1095(katebhospital) gid=1098(katebhospital) groups=1098(katebhospital) 

Safe-mode: OFF (not secure)

/lib/python3.6/site-packages/tuned/exports/   drwxr-xr-x
Free 294.22 GB of 429.69 GB (68.47%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     controller.py (3.46 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
from . import interfaces
import inspect
import tuned.patterns

class ExportsController(tuned.patterns.Singleton):
    """
    Controls and manages object interface exporting.
    """

    def __init__(self):
        super(ExportsController, self).__init__()
        self._exporters = []
        self._objects = []
        self._exports_initialized = False

    def register_exporter(self, instance):
        """Register objects exporter."""
        self._exporters.append(instance)

    def register_object(self, instance):
        """Register object to be exported."""
        self._objects.append(instance)

    def _is_exportable_method(self, method):
        """Check if method was marked with @exports.export wrapper."""
        return inspect.ismethod(method) and hasattr(method, "export_params")

    def _is_exportable_signal(self, method):
        """Check if method was marked with @exports.signal wrapper."""
        return inspect.ismethod(method) and hasattr(method, "signal_params")

    def _is_exportable_getter(self, method):
        """Check if method was marked with @exports.get_property wrapper."""
        return inspect.ismethod(method) and hasattr(method, "property_get_params")

    def _is_exportable_setter(self, method):
        """Check if method was marked with @exports.set_property wrapper."""
        return inspect.ismethod(method) and hasattr(method, "property_set_params")

    def _export_method(self, method):
        """Register method to all exporters."""
        for exporter in self._exporters:
            args = method.export_params[0]
            kwargs = method.export_params[1]
            exporter.export(method, *args, **kwargs)

    def _export_signal(self, method):
        """Register signal to all exporters."""
        for exporter in self._exporters:
            args = method.signal_params[0]
            kwargs = method.signal_params[1]
            exporter.signal(method, *args, **kwargs)

    def _export_getter(self, method):
        """Register property getter to all exporters."""
        for exporter in self._exporters:
            args = method.property_get_params[0]
            kwargs = method.property_get_params[1]
            exporter.property_getter(method, *args, **kwargs)

    def _export_setter(self, method):
        """Register property setter to all exporters."""
        for exporter in self._exporters:
            args = method.property_set_params[0]
            kwargs = method.property_set_params[1]
            exporter.property_setter(method, *args, **kwargs)

    def send_signal(self, signal, *args, **kwargs):
        """Register signal to all exporters."""
        for exporter in self._exporters:
            exporter.send_signal(signal, *args, **kwargs)

    def property_changed(self, *args, **kwargs):
        for exporter in self._exporters:
            exporter.property_changed(*args, **kwargs)

    def period_check(self):
        """Allows to perform checks on exporters without special thread."""
        for exporter in self._exporters:
            exporter.period_check()

    def _initialize_exports(self):
        if self._exports_initialized:
            return

        for instance in self._objects:
            for name, method in inspect.getmembers(instance, self._is_exportable_method):
                self._export_method(method)
            for name, method in inspect.getmembers(instance, self._is_exportable_signal):
                self._export_signal(method)
            for name, method in inspect.getmembers(instance, self._is_exportable_getter):
                self._export_getter(method)
            for name, method in inspect.getmembers(instance, self._is_exportable_setter):
                self._export_setter(method)

        self._exports_initialized = True

    def start(self):
        """Start the exports."""
        self._initialize_exports()
        for exporter in self._exporters:
            exporter.start()

    def stop(self):
        """Stop the exports."""
        for exporter in self._exporters:
            exporter.stop()

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.0971 ]--