summaryrefslogtreecommitdiffstats
path: root/src/sessionhandler.js
blob: 4497eab4c911f4b541da770ce80c09e9a21c768f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/****************************************************************************
 **
 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
 ** Contact: Qt Software Information (qt-info@nokia.com)
 **
 ** This file is part of the WebClient project on Trolltech Labs.
 **
 ** This file may be used under the terms of the GNU General Public
 ** License version 2.0 or 3.0 as published by the Free Software Foundation
 ** and appearing in the file LICENSE.GPL included in the packaging of
 ** this file.  Please review the following information to ensure GNU
 ** General Public Licensing requirements will be met:
 ** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
 ** http://www.gnu.org/copyleft/gpl.html.
 **
 ** If you are unsure which license is appropriate for your use, please
 ** contact the sales department at qt-sales@nokia.com.
 **
 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 **
 ****************************************************************************/

function request(theurl)
{
//    console.log("send request: " + theurl);
    var webclientObject = this;
//    var argumentsObject = new Object;
//    argumentsObject["foo"] = "bar space";
//    argumentsObject["foo2"] = "bar2";
    dojo.xhrPost( {
        // The following URL must match that used to test the server.
        url: theurl,
        timeout: 0, // Time in milliseconds
//        content : argumentsObject,

        // The LOAD function will be called on a successful response.
        load: function(response, ioArgs) { 
            if (theurl == webclientObject.idleUrl)
                webclientObject.hasIdler = false;
           // 'this' seems to point to the fucntion at this point.
            webclientObject.eventHandler(response);
            if (webclientObject.hasIdler == false) {
                webclientObject.hasIdler = true;
                webclientObject.request(webclientObject.idleUrl);
            }
        },

        // The ERROR function will be called in an error case.
        error: function(response, ioArgs) { 
          console.error("HTTP status code: ", ioArgs.xhr.status); 
          return response;
          }
       });
}

function sessionHandlerSetupObject(webclientObject)
{
    webclientObject.request = request;
    webclientObject.idleUrl = webclientObject.baseUrl + "idle";
    webclientObject.hasIdler = false;
}