Пример #1
0
    def __init__(self, *, adapterConfig, taskModel, parent=None):
        super().__init__(parent)
        self._adapterConfig = adapterConfig
        self._ws = None

        self.klassMap = KlassMap(adapter=self,
                                 namespace=self.namespace,
                                 taskModel=taskModel)
        self.klassMap.addTaskMap(TaskMap(klass=Aria2TaskClass.Active))
        self.klassMap.addTaskMap(TaskMap(klass=Aria2TaskClass.Waiting))
        self.klassMap.addTaskMap(TaskMap(klass=Aria2TaskClass.Stopped))

        # Stats
        self._ulSpeed = 0
        self._dlSpeed = 0
        self._activeCount = 0
        self._waitingCount = 0
        self._stoppedCount = 0
        self._stoppedTotalCount = 0

        self._ids = {}
        self._loop = None
        self._loop_executor = None
        self._loop_thread = threading.Thread(daemon=True,
                                             target=self._startEventLoop,
                                             name=adapterConfig.name)
Пример #2
0
    def setUp(self):
        adapter = mock.Mock()
        taskModel = mock.Mock()
        self.km = KlassMap(adapter=adapter,
                           namespace="foo-ins1",
                           taskModel=taskModel)
        self.tm1 = TaskMapBase(klass=0)
        self.tm1.__class__._Item = DummyTaskItem
        self.km.addTaskMap(self.tm1)
        self.tm2 = TaskMapBase(klass=1)
        self.tm2.__class__._Item = DummyTaskItem
        self.km.addTaskMap(self.tm2)

        self.am = mock.Mock()
        self.km.setAdapterMap(self.am)
Пример #3
0
    def __init__(self, *, adapterConfig, taskModel, parent = None):
        super().__init__(parent)
        # Prepare XwareClient Variables
        self._ulSpeed = 0
        self._dlSpeed = 0
        self._runningTaskCount = 0
        from .vanilla import GetSysInfo
        self._sysInfo = GetSysInfo(Return = 0, Network = 0, License = 0, Bound = 0,
                                   ActivateCode = "", Mount = 0, InternalVersion = "",
                                   Nickname = "", Unknown = "", UserId = 0, VipLevel = 0)
        self._xwareSettings = XwareSettings(self)

        # Prepare XwaredClient Variables
        self._xwaredRunning = False
        self._etmPid = 0
        self._peerId = ""
        self._startEtmWhen = 1

        self._adapterConfig = adapterConfig
        connection = parse.urlparse(self._adapterConfig["connection"], scheme = "file")
        self.xwaredSocket = None
        self.mountsFaker = None

        self.klassMap = KlassMap(adapter = self, namespace = self.namespace, taskModel = taskModel)
        self.klassMap.addTaskMap(
            TaskMap(klass = TaskClass.RUNNING)
        )
        self.klassMap.addTaskMap(
            TaskMap(klass = TaskClass.COMPLETED)
        )
        self.klassMap.addTaskMap(
            TaskMap(klass = TaskClass.RECYCLED)
        )
        self.klassMap.addTaskMap(
            TaskMap(klass = TaskClass.FAILED_ON_SUBMISSION)
        )

        self.useXwared = False
        self.isLocal = False
        _clientInitOptions = dict()
        if connection.scheme == "file":
            _clientInitOptions["host"] = "127.0.0.1"
            self.useXwared = True
            self.xwaredSocket = os.path.expanduser(connection.path)
            app.aboutToQuit.connect(lambda: self.do_daemon_quitFrontend())
            self._notifyFrontendStart = True
            from .mounts import MountsFaker
            self.mountsFaker = MountsFaker(constants.MOUNTS_FILE)
        elif connection.scheme == "http":
            # assume etm is always running
            self._etmPid = 0xDEADBEEF
            host, port = connection.netloc.split(":")
            self._peerId = connection.query
            _clientInitOptions["host"] = host
            _clientInitOptions["port"] = port
        else:
            raise NotImplementedError()

        self._loop = None
        self._loop_executor = None
        self._xwareClient = None
        self._loop_thread = threading.Thread(daemon = True,
                                             target = self._startEventLoop,
                                             args = (_clientInitOptions,),
                                             name = adapterConfig.name)