01.06.2013 Views

OpenEdge Development: Mobile Applications - Product ...

OpenEdge Development: Mobile Applications - Product ...

OpenEdge Development: Mobile Applications - Product ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Run-time architecture<br />

As shown in Figure 1, both <strong>Mobile</strong> App types can use exactly the same <strong>Mobile</strong> services<br />

to access the AppServer. A <strong>Mobile</strong> service supports a set of <strong>Mobile</strong> resources, which<br />

provide Web access to an ABL application service on the AppServer.<br />

A <strong>Mobile</strong> interface defines the ABL API for a single <strong>Mobile</strong> resource, which can be<br />

implemented by either a singleton procedure or a singleton class. (For more<br />

information on singleton procedures and classes, see the sections on AppServer<br />

coding requirements, in Chapter 3, “Creating <strong>Mobile</strong> Services.”) A <strong>Mobile</strong> resource<br />

provides access to either a single temp-table or a single ProDataSet with one or more<br />

temp-tables, using a standard set of built-in operations that you implement on the<br />

AppServer to read and modify the data. A <strong>Mobile</strong> resource can also provide access to<br />

additional AppServer routines to operate on other AppServer data, or even to operate<br />

on the same temp-table or ProDataSet data as the built-in operations, but in different<br />

ways.<br />

An <strong>OpenEdge</strong> JavaScript data object (JSDO) is an instance of the <strong>OpenEdge</strong><br />

JavaScript class, progress.data.JSDO, that provides client access to the data and<br />

operations of a single <strong>Mobile</strong> resource. The <strong>Mobile</strong> App calls JavaScript methods on a<br />

JSDO to execute the <strong>Mobile</strong> operations on the AppServer. The data for these<br />

operations is serialized between the <strong>Mobile</strong> App and the Web server as JSON<br />

(JavaScript Object Notation) media.<br />

An <strong>OpenEdge</strong> <strong>Mobile</strong> Web application provides the transport (REST over HTTP) for<br />

communications between any JSDO running in a <strong>Mobile</strong> App and a <strong>Mobile</strong> resource<br />

that the application supports. A <strong>Mobile</strong> Web application can be deployed and the REST<br />

transport, including application security, can be managed using the same <strong>OpenEdge</strong><br />

tools for managing any <strong>OpenEdge</strong> REST Web application. Note that a single <strong>Mobile</strong><br />

Web application supports access to <strong>Mobile</strong> resources implemented by a single<br />

<strong>OpenEdge</strong> AppServer (or a single application service with load balancing).<br />

<strong>OpenEdge</strong> ® <strong>Development</strong>: <strong>Mobile</strong> <strong>Applications</strong> 35

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!