• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdenetwork API Reference
  • KDE Home
  • Contact Us
 

kget

  • sources
  • kde-4.12
  • kdenetwork
  • kget
  • transfer-plugins
  • multisegmentkio
transfermultisegkio.h
Go to the documentation of this file.
1 /* This file is part of the KDE project
2 
3  Copyright (C) 2004 Dario Massarin <nekkar@libero.it>
4  Copyright (C) 2006 Manolo Valdes <nolis71cu@gmail.com>
5 
6  This program is free software; you can redistribute it and/or
7  modify it under the terms of the GNU General Public
8  License as published by the Free Software Foundation; either
9  version 2 of the License, or (at your option) any later version.
10 */
11 
12 
13 #ifndef TRANSFER_MULTISEGKIO_H
14 #define TRANSFER_MULTISEGKIO_H
15 
16 #include <KIO/Job>
17 
18 #include "core/transfer.h"
19 #include "core/datasourcefactory.h"
20 
25 class DataSourceFactory;
26 class FileModel;
27 
28 class TransferMultiSegKio : public Transfer
29 {
30  Q_OBJECT
31 
32  public:
33  TransferMultiSegKio(TransferGroup * parent, TransferFactory * factory,
34  Scheduler * scheduler, const KUrl & src, const KUrl & dest,
35  const QDomElement * e = 0);
36 
37  bool repair(const KUrl &file = KUrl());
38 
44  virtual bool setDirectory(const KUrl &newDirectory);
45 
46  virtual void init();
47  virtual void deinit(Transfer::DeleteOptions options);
48 
49  QHash<KUrl, QPair<bool, int> > availableMirrors(const KUrl &file) const;
50  void setAvailableMirrors(const KUrl &file, const QHash<KUrl, QPair<bool, int> > &mirrors);
51 
56  virtual Verifier *verifier(const KUrl &file = KUrl());
57 
62  virtual Signature *signature(const KUrl &file = KUrl());
63 
64  FileModel *fileModel();
65 
66  public slots:
67  bool setNewDestination(const KUrl &newDestination);
68  // --- Job virtual functions ---
69  void start();
70  void stop();
71 
72  void save(const QDomElement &element);
73  void load(const QDomElement *e);
74  void slotChecksumFound(QString type, QString checksum);
75 
76  private:
77  void createJob();
78 
79  private slots:
80  void slotDataSourceFactoryChange(Transfer::ChangesFlags change);
81  void slotUpdateCapabilities();
82  void slotSearchUrls(const QList<KUrl> &urls);
83  void slotRename(const KUrl &oldUrl, const KUrl &newUrl);
84  void slotVerified(bool isVerified);
85 
86  private:
87  bool m_movingFile;
88  bool m_searchStarted;
89  bool m_verificationSearch;
90  DataSourceFactory *m_dataSourceFactory;
91  FileModel *m_fileModel;
92 };
93 
94 #endif
Transfer::ChangesFlags
int ChangesFlags
Definition: transfer.h:100
TransferGroup
class TransferGroup:
Definition: transfergroup.h:46
Scheduler
Scheduler class: what handle all the jobs in kget.
Definition: scheduler.h:32
TransferMultiSegKio
Definition: transfermultisegkio.h:28
TransferMultiSegKio::fileModel
FileModel * fileModel()
Definition: transfermultisegkio.cpp:312
TransferMultiSegKio::repair
bool repair(const KUrl &file=KUrl())
Tries to repair file.
Definition: transfermultisegkio.cpp:107
DataSourceFactory
This class manages multiple DataSources and saves the received data to the file.
Definition: datasourcefactory.h:38
TransferMultiSegKio::availableMirrors
QHash< KUrl, QPair< bool, int > > availableMirrors(const KUrl &file) const
The mirrors that are available bool if it is used, int how many paralell connections are allowed to t...
Definition: transfermultisegkio.cpp:272
Job::scheduler
Scheduler * scheduler() const
Definition: job.h:106
TransferMultiSegKio::TransferMultiSegKio
TransferMultiSegKio(TransferGroup *parent, TransferFactory *factory, Scheduler *scheduler, const KUrl &src, const KUrl &dest, const QDomElement *e=0)
Definition: transfermultisegkio.cpp:32
FileModel
This model represents the files that are being downloaded.
Definition: filemodel.h:101
TransferMultiSegKio::start
void start()
Definition: transfermultisegkio.cpp:69
TransferMultiSegKio::setDirectory
virtual bool setDirectory(const KUrl &newDirectory)
Move the download to the new destination.
Definition: transfermultisegkio.cpp:121
Transfer::factory
TransferFactory * factory() const
Definition: transfer.h:272
TransferMultiSegKio::setAvailableMirrors
void setAvailableMirrors(const KUrl &file, const QHash< KUrl, QPair< bool, int > > &mirrors)
Set the mirrors, int the number of paralell connections to the mirror bool if the mirror should be us...
Definition: transfermultisegkio.cpp:280
TransferMultiSegKio::save
void save(const QDomElement &element)
Definition: transfermultisegkio.cpp:158
Verifier
Definition: verifier.h:68
Transfer::dest
const KUrl & dest() const
Definition: transfer.h:149
TransferMultiSegKio::setNewDestination
bool setNewDestination(const KUrl &newDestination)
Definition: transfermultisegkio.cpp:128
datasourcefactory.h
TransferMultiSegKio::stop
void stop()
Definition: transfermultisegkio.cpp:93
transfer.h
Signature
Class to verify signatures.
Definition: signature.h:38
TransferMultiSegKio::signature
virtual Signature * signature(const KUrl &file=KUrl())
Definition: transfermultisegkio.cpp:305
TransferMultiSegKio::load
void load(const QDomElement *e)
Definition: transfermultisegkio.cpp:150
TransferFactory
TransferFactory.
Definition: transferfactory.h:52
TransferMultiSegKio::verifier
virtual Verifier * verifier(const KUrl &file=KUrl())
Definition: transfermultisegkio.cpp:298
Transfer
Definition: transfer.h:36
TransferMultiSegKio::slotChecksumFound
void slotChecksumFound(QString type, QString checksum)
Definition: transfermultisegkio.cpp:267
TransferMultiSegKio::deinit
virtual void deinit(Transfer::DeleteOptions options)
Definition: transfermultisegkio.cpp:61
TransferMultiSegKio::init
virtual void init()
This function is called after the creation of a Transfer In transfer plugins you can put here whateve...
Definition: transfermultisegkio.cpp:44
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:53:18 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kget

Skip menu "kget"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdenetwork API Reference

Skip menu "kdenetwork API Reference"
  • kget
  • kopete
  •   kopete
  •   libkopete
  • krdc
  • krfb

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal