Changing to new authentication mechanism ongoing
[situare] / src / situareservice / situareservice.h
index cacea93..d38bd4b 100644 (file)
@@ -31,7 +31,7 @@
 class NetworkAccessManager;
 class QNetworkReply;
 class QNetworkRequest;
-class QPointF;
+class GeoCoordinate;
 class QUrl;
 
 /**
@@ -74,16 +74,16 @@ public:
     *
     * @param coordinates coordinates to be translated
     */
-    void reverseGeo(const QPointF &coordinates);
+    void reverseGeo(const GeoCoordinate &coordinates);
 
     /**
     * @brief Updates location to the Situare server
     *
     * @param coordinates current cordinates
     * @param status message
-    * @param publish publish location on Facebook wall (true/false)
+    * @param publish publish location on Facebook wall
     */
-    void updateLocation(const QPointF &coordinates, const QString &status, const bool &publish);
+    void updateLocation(const GeoCoordinate &coordinates, const QString &status, const bool &publish);
 
 public slots:
 
@@ -107,14 +107,19 @@ public slots:
     */
     void requestFinished(QNetworkReply *reply);
 
+    void updateAccessToken(const QString &accessToken);
+
 private:
 
     /**
     * @brief Requests ImageFetcher if user/friend has a profile image
     *        uses members: m_user and m_friendsList
     *
+    * @param imageUrlList list of image urls
     */
-    void addProfileImages();
+    void addProfileImages(const QList<QUrl> &imageUrlList);
+
+    void appendAccessToken(QString &requestUrl);
 
     /**
     * @brief Forms a http cookie
@@ -148,11 +153,11 @@ private:
     *
     * @param coordinates current coordinates
     * @param status optional status message
-    * @param publish optional publish location on Facebook wall (true/false)
+    * @param publish optional publish location on Facebook wall
     * @return QString
     */
-    QString formUrlParameters(const QPointF &coordinates, QString status = QString(),
-                              QString publish = QString());
+    QString formUrlParameters(const GeoCoordinate &coordinates, QString status = QString(),
+                              bool publish = false);
 
     /**
     * @brief Parses user and friend data from JSON string
@@ -170,6 +175,11 @@ private:
     */
     void sendRequest(const QUrl &url, const QString &cookieType, const QString &cookie);
 
+
+    void buildRequest(const QString &script, const QHash<QString,QString> &parameters);
+
+    void sendRequest(const QString &requestUrl);
+
 private slots:
 
     /**
@@ -238,8 +248,11 @@ private:
     bool m_defaultImage;    ///< Indicates if some of the friends/user doesn't have a image
 
     QList<QNetworkReply *> m_currentRequests;   ///< List of current http requests
+    QList<QString> m_requestsWaitingAccessToken;
     QList<User *> m_friendsList;                ///< List of friends(User)
 
+    QString m_accessToken;
+
     NetworkAccessManager *m_networkManager;    ///< Pointer to QNetworkAccessManager
 
     FacebookCredentials m_credentials;          ///< handle for FacebookCredentials