This section describes session management updates to support new OpenEdge Mobile App development using the Telerik Platform and includes an additional note about testing OpenEdge Mobile Apps that use HTTPS on mobile devices.
The main update is a new progress.data.JSDOSession class that now supports the recommended approach to session management for JSDO access to Mobile resources, and is particularly suited for use with the JSDO dialect of the Kendo UI DataSource. The primary feature of this class (as distinguished from the previously released progress.data.Session class) is that all of the session management methods that access the server execute asynchronously only and return a jQuery implementation of the Promise instead of firing event callbacks to handle results. This support applies to the following methods:
addCatalog( )
login( )
logout( )
ping( )
A Promise is a deferred object whose methods execute when results from the method that returns the Promise are available. You provide your own code to handle the results returned by a given Promise method, much like the code you provide in an event callback. The primary Promise methods for use with a JSDOSession object include done( ), fail( ), and always( ), which allow you to handle the successful, unsuccessful, and all results (respectively) of a JSDOSession method execution. The description of the JSDOSession class and its methods and properties show several examples using Promises. For more information on the jQuery implementation of Promises and the additional Promise methods that are available, see the jQuery topics at the following Web locations:
Another distinguishing feature of a JSDOSession object, is that you instantiate the object and invoke the login( ) and addCatalog( ) methods with different calling sequences than for a Session object. These differences support a more flexible session management model that better supports subsequent and different user session logins and logouts from the same Mobile Web application using the same JSDOSession object. You can also load multiple JSDO catalogs more easily and without first logging theJSDOSession object into a Mobile Web application.