diff options
Diffstat (limited to 'src/plugins/Transports/http')
| -rw-r--r-- | src/plugins/Transports/http/downloader.cpp | 2 | ||||
| -rw-r--r-- | src/plugins/Transports/http/downloader.h | 2 | ||||
| -rw-r--r-- | src/plugins/Transports/http/httpinputsource.cpp | 7 | ||||
| -rw-r--r-- | src/plugins/Transports/http/httpinputsource.h | 3 | ||||
| -rw-r--r-- | src/plugins/Transports/http/streamreader.cpp | 50 | ||||
| -rw-r--r-- | src/plugins/Transports/http/streamreader.h | 20 |
6 files changed, 17 insertions, 67 deletions
diff --git a/src/plugins/Transports/http/downloader.cpp b/src/plugins/Transports/http/downloader.cpp index dafc9ea26..1befd2c59 100644 --- a/src/plugins/Transports/http/downloader.cpp +++ b/src/plugins/Transports/http/downloader.cpp @@ -325,7 +325,7 @@ void Downloader::checkBuffer() metaData.insert(Qmmp::URL, m_url); StateHandler::instance()->dispatch(metaData); } - emit readyRead(); + emit ready(); } else if (!m_ready) { diff --git a/src/plugins/Transports/http/downloader.h b/src/plugins/Transports/http/downloader.h index fd61486ba..9d0757cad 100644 --- a/src/plugins/Transports/http/downloader.h +++ b/src/plugins/Transports/http/downloader.h @@ -64,7 +64,7 @@ public: bool isReady(); signals: - void readyRead(); + void ready(); private: qint64 readBuffer(char* data, qint64 maxlen); diff --git a/src/plugins/Transports/http/httpinputsource.cpp b/src/plugins/Transports/http/httpinputsource.cpp index a28730ef9..0c6f841a8 100644 --- a/src/plugins/Transports/http/httpinputsource.cpp +++ b/src/plugins/Transports/http/httpinputsource.cpp @@ -24,7 +24,7 @@ HTTPInputSource::HTTPInputSource(const QString &url, QObject *parent) : InputSource(url,parent) { m_reader = new StreamReader(url, this); - connect(m_reader, SIGNAL(readyRead()),SLOT(open())); + connect(m_reader, SIGNAL(ready()),SIGNAL(ready())); } QIODevice *HTTPInputSource::ioDevice() @@ -48,8 +48,3 @@ QString HTTPInputSource::contentType() const return m_reader->contentType(); } -void HTTPInputSource::open() -{ - m_reader->open(QIODevice::ReadOnly); - emit(ready(this)); -} diff --git a/src/plugins/Transports/http/httpinputsource.h b/src/plugins/Transports/http/httpinputsource.h index 8032714a1..56988a6fe 100644 --- a/src/plugins/Transports/http/httpinputsource.h +++ b/src/plugins/Transports/http/httpinputsource.h @@ -39,9 +39,6 @@ public: bool isReady(); QString contentType() const; -private slots: - void open(); - private: StreamReader *m_reader; diff --git a/src/plugins/Transports/http/streamreader.cpp b/src/plugins/Transports/http/streamreader.cpp index 1d482259a..074b32683 100644 --- a/src/plugins/Transports/http/streamreader.cpp +++ b/src/plugins/Transports/http/streamreader.cpp @@ -26,7 +26,7 @@ StreamReader::StreamReader(const QString &name, QObject *parent) : QIODevice(parent) { m_downloader = new Downloader(this, name); - connect(m_downloader, SIGNAL(readyRead()), SIGNAL(readyRead())); + connect(m_downloader, SIGNAL(ready()), SIGNAL(ready())); } StreamReader::~StreamReader() @@ -50,14 +50,10 @@ qint64 StreamReader::bytesToWrite () const return -1; } -bool StreamReader::canReadLine () const -{ - return false; -} - void StreamReader::close () { m_downloader->abort(); + QIODevice::close(); } bool StreamReader::isSequential () const @@ -65,49 +61,20 @@ bool StreamReader::isSequential () const return true; } -bool StreamReader::open ( OpenMode mode ) +bool StreamReader::open (OpenMode mode) { if (mode != QIODevice::ReadOnly) return false; - //downloadFile(); - setOpenMode(QIODevice::ReadOnly); - if (m_downloader->isReady()) - return true; - else - return false; + QIODevice::open(mode); + return m_downloader->isReady(); } -bool StreamReader::reset () +bool StreamReader::seek (qint64 pos) { - QIODevice::reset(); - return true; -} - -bool StreamReader::seek ( qint64 pos ) -{ - QIODevice::seek(pos); + Q_UNUSED(pos); return false; } -qint64 StreamReader::size () const -{ - return bytesAvailable (); -} - -bool StreamReader::waitForBytesWritten (int msecs) -{ - Q_UNUSED(msecs); - //usleep(msecs*1000); - return true; -} - -bool StreamReader::waitForReadyRead (int msecs) -{ - Q_UNUSED(msecs); - //usleep(msecs*1000); - return true; -} - qint64 StreamReader::readData(char* data, qint64 maxlen) { return m_downloader->read (data, maxlen); @@ -115,7 +82,7 @@ qint64 StreamReader::readData(char* data, qint64 maxlen) qint64 StreamReader::writeData(const char*, qint64) { - return 0; + return -1; } void StreamReader::downloadFile() @@ -128,7 +95,6 @@ QString StreamReader::contentType() m_downloader->mutex()->lock (); m_contentType = m_downloader->contentType(); m_downloader->mutex()->unlock(); - qApp->processEvents(); qDebug("StreamReader: content type: %s", qPrintable(m_contentType)); return m_contentType; } diff --git a/src/plugins/Transports/http/streamreader.h b/src/plugins/Transports/http/streamreader.h index 3aa02c0e9..afaa1ad78 100644 --- a/src/plugins/Transports/http/streamreader.h +++ b/src/plugins/Transports/http/streamreader.h @@ -39,39 +39,31 @@ public: ~StreamReader(); - /** + /** * QIODevice API */ bool atEnd () const; qint64 bytesAvailable () const; qint64 bytesToWrite () const; - bool canReadLine () const; void close (); bool isSequential () const; - bool open ( OpenMode mode ); - //qint64 pos () const; - bool reset (); - bool seek ( qint64 pos ); - qint64 size () const; - bool waitForBytesWritten ( int msecs ); - bool waitForReadyRead ( int msecs ); - + bool open (OpenMode mode); + bool seek (qint64 pos); /** - * returns content type of a stream + * helper functions */ QString contentType(); void downloadFile(); signals: - void readyRead(); + void ready(); + void error(); protected: qint64 readData(char*, qint64); qint64 writeData(const char*, qint64); private: - //void downloadFile(); - void fillBuffer(); QUrl m_url; QString m_contentType; Downloader *m_downloader; |
