src/network/access/qfilenetworkreply_p.h
changeset 18 2f34d5167611
parent 3 41300fa6a67c
equal deleted inserted replaced
3:41300fa6a67c 18:2f34d5167611
     1 /****************************************************************************
     1 /****************************************************************************
     2 **
     2 **
     3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
     4 ** All rights reserved.
     4 ** All rights reserved.
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
     6 **
     6 **
     7 ** This file is part of the QtNetwork module of the Qt Toolkit.
     7 ** This file is part of the QtNetwork module of the Qt Toolkit.
     8 **
     8 **
    55 
    55 
    56 #include "qnetworkreply.h"
    56 #include "qnetworkreply.h"
    57 #include "qnetworkreply_p.h"
    57 #include "qnetworkreply_p.h"
    58 #include "qnetworkaccessmanager.h"
    58 #include "qnetworkaccessmanager.h"
    59 #include <QFile>
    59 #include <QFile>
       
    60 #include <QAbstractFileEngine>
    60 
    61 
    61 QT_BEGIN_NAMESPACE
    62 QT_BEGIN_NAMESPACE
    62 
    63 
    63 
    64 
    64 class QFileNetworkReplyPrivate;
    65 class QFileNetworkReplyPrivate;
    65 class QFileNetworkReply: public QNetworkReply
    66 class QFileNetworkReply: public QNetworkReply
    66 {
    67 {
    67     Q_OBJECT
    68     Q_OBJECT
    68 public:
    69 public:
    69     QFileNetworkReply(QObject *parent, const QNetworkRequest &req);
    70     QFileNetworkReply(QObject *parent, const QNetworkRequest &req, const QNetworkAccessManager::Operation op);
    70     ~QFileNetworkReply();
    71     ~QFileNetworkReply();
    71     virtual void abort();
    72     virtual void abort();
    72 
    73 
    73     // reimplemented from QNetworkReply
    74     // reimplemented from QNetworkReply
    74     virtual void close();
    75     virtual void close();
    75     virtual qint64 bytesAvailable() const;
    76     virtual qint64 bytesAvailable() const;
    76     virtual bool isSequential () const;
    77     virtual bool isSequential () const;
    77     qint64 size() const;
    78     qint64 size() const;
    78 
    79 
    79 
       
    80     virtual qint64 readData(char *data, qint64 maxlen);
    80     virtual qint64 readData(char *data, qint64 maxlen);
    81 
    81 
    82     Q_DECLARE_PRIVATE(QFileNetworkReply)
    82     Q_DECLARE_PRIVATE(QFileNetworkReply)
    83     Q_PRIVATE_SLOT(d_func(), void _q_startOperation())
       
    84 
       
    85 };
    83 };
    86 
    84 
    87 class QFileNetworkReplyPrivate: public QNetworkReplyPrivate
    85 class QFileNetworkReplyPrivate: public QNetworkReplyPrivate
    88 {
    86 {
    89 public:
    87 public:
    90     QFileNetworkReplyPrivate();
    88     QFileNetworkReplyPrivate();
       
    89     ~QFileNetworkReplyPrivate();
    91 
    90 
    92     QFile realFile;
    91     QAbstractFileEngine *fileEngine;
    93     qint64 realFileSize;
    92     qint64 fileSize;
    94 
    93     qint64 filePos;
    95     void _q_startOperation();
       
    96 
    94 
    97     virtual bool isFinished() const;
    95     virtual bool isFinished() const;
    98     void doFinished();
       
    99     bool finished;
       
   100 
       
   101 
    96 
   102     Q_DECLARE_PUBLIC(QFileNetworkReply)
    97     Q_DECLARE_PUBLIC(QFileNetworkReply)
   103 };
    98 };
   104 
    99 
   105 QT_END_NAMESPACE
   100 QT_END_NAMESPACE