コード例 #1
0
ファイル: EngineAdapter.cs プロジェクト: Ant0ny/bitsharp-dbus
        public EngineAdapter(string name, EngineSettingsAdapter settings, ObjectPath path)
        {
            this.name           = name;
            this.engine         = new ClientEngine(settings.Settings);
            this.engineSettings = settings;
            this.path           = path;

            DownloaderPath = path.ToString() + "/downloaders/{0}";
            StoragePath    = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

            StoragePath = System.IO.Path.Combine(StoragePath, "monotorrent-dbus");
            EnsurePath(StoragePath);

            StoragePath = System.IO.Path.Combine(StoragePath, string.Format("engine-{0}", name));
            EnsurePath(StoragePath);

            downloaders = new Dictionary <ObjectPath, TorrentManagerAdapter> (new ObjectPathComparer());
            torrents    = new Dictionary <ObjectPath, TorrentAdapter> ();

            engine.StatsUpdate += delegate {
                StatsUpdateHandler h = StatsUpdate;
                if (h != null)
                {
                    h();
                }
            };
            LoadState();
        }
コード例 #2
0
        private ObjectPath NewEngineSettings()
        {
            ObjectPath            path    = new ObjectPath(string.Format(EngineSettingsPath, engineSettingsNumber++));
            EngineSettingsAdapter adapter = new EngineSettingsAdapter(new EngineSettings(), path);

            TorrentService.Bus.Register(adapter.Path, adapter);
            engineSettings.Add(adapter.Path, adapter);

            return(adapter.Path);
        }