20 #ifndef CLASSIFIED_DATAMODEL_H
21 #define CLASSIFIED_DATAMODEL_H
22 #include <QSqlDatabase>
24 #include "../mcontroller.h"
25 #include "../net/connection.h"
26 #include <QHostAddress>
36 class QSslCertificate ;
80 QByteArray* aBytesToSend) ;
92 QList <NetworkRequestExecutor::NetworkRequestQueueItem>&
getNetRequests()
const ;
106 virtual bool lock() ;
160 const QList<quint32>& aBangPath,
186 const Hash& aHashOfClassification,
201 const QString& aExplanation) ;
213 QList <NetworkRequestExecutor::NetworkRequestQueueItem>*
iNetReqQueue ;
virtual PrivMessageModel & privateMessageModel() const
void addItemToBePublished(ProtocolItemType aType, const Hash &aHash, const QList< quint32 > &aBangPath, const Hash &aSecondaryAddr=KNullHash)
virtual SearchModel * searchModel() const
PublishItem addNodeToPublishedItem(const Hash &aContentHash, const Hash &aNodeHash)
void addItemToSend(const Hash &aDestinationNode, QByteArray *aBytesToSend)
void notifyOfContentReceived(const Hash &aHashOfContent, const ProtocolItemType aTypeOfReceivdContent)
void addOpenNetworkConnection(Connection *aConnection)
Logic for handling tasks received from other peers or from user.
Definition: netrequestexecutor.h:39
Model-class for performing text-based searches on objects in db This datamodel part is dual-use ; it ...
Definition: searchmodel.h:44
This is is part of datamodel for storing private messages.
Definition: privmsgmodel.h:50
ProfileCommentModel * iProfileCommentModel
Definition: model.h:220
const QList< Connection * > & getConnections() const
int iTimerId
Definition: model.h:218
MController * iController
Definition: model.h:203
Hash is class that carries 160-bit digest.
Definition: hash.h:37
CAErrorSituation
Definition: mcontroller.h:48
ContentEncryptionModel * iContentEncryptionModel
Definition: model.h:214
virtual void addNetworkRequest(NetworkRequestExecutor::NetworkRequestQueueItem &aRequest) const
QList< NetworkRequestExecutor::NetworkRequestQueueItem > & getNetRequests() const
ConnectionState
Definition: connection.h:45
ProtocolItemType
Definition: protocol.h:124
This is part of datamodel for storage/retrieval of classified ads.
Definition: camodel.h:38
ProfileModel * iProfileModel
Definition: model.h:215
Model(MController *aMController)
PublishItem nextItemToPublish(bool *aFound)
Pure-virtual interface of datamodel for message parser to use.
Definition: mmodelprotocolinterface.h:44
virtual BinaryFileModel & binaryFileModel() const
Pure-virtual interface class for controller. This is spammed across parties needing access to applica...
Definition: mcontroller.h:39
void connectionStateChanged(Connection::ConnectionState aState, Connection *aConnection)
virtual ProfileCommentModel & profileCommentModel() const
void timerEvent(QTimerEvent *event)
NetworkRequestExecutor * iNetReqExecutor
Definition: model.h:208
M of the MVC pattern. Handles permanent storage.
Definition: model.h:47
This is is part of datamodel for storing user profiles.
Definition: profilemodel.h:38
PrivMessageModel * iPrivMsgModel
Definition: model.h:219
virtual ProfileModel & profileModel() const
void closeAllConnections(bool aDeleteAlso)
ContentEncryptionModel & contentEncryptionModel() const
This is node-specific part of the datamodel.
Definition: nodemodel.h:45
QList< Connection * > * iConnections
Definition: model.h:206
NetworkRequestExecutor * getNetReqExecutor()
virtual ClassifiedAdsModel & classifiedAdsModel() const
void error(MController::CAErrorSituation aError, const QString &aExplanation)
ClassifiedAdsModel * iCaModel
Definition: model.h:217
NodeModel * iNodeModel
Definition: model.h:207
Work queue item.
Definition: netrequestexecutor.h:59
virtual MNodeModelProtocolInterface & nodeModel() const
QMutex * iMutex
Definition: model.h:205
BinaryFileModel * iBinaryFileModel
Definition: model.h:216
Pure-virtual interface of nodemodel.
Definition: mnodemodelprotocolinterface.h:38
SearchModel * iSearchModel
Definition: model.h:221
Carrier for keeping state of item about to be published.
Definition: protocol.h:168
Class that represents a network connection.
Definition: connection.h:41
QList< NetworkRequestExecutor::NetworkRequestQueueItem > * iNetReqQueue
Definition: model.h:213
QSqlDatabase iDb
Definition: model.h:204
This is part of datamodel for any binary blobs.
Definition: binaryfilemodel.h:38
This is content-crypto-operations-specific part of the datamodel.
Definition: contentencryptionmodel.h:36
void removeOpenNetworkConnection(Connection *aDeletedConnection)