OData SDK Components — General Description

The different components of the OData SDK are implemented as static runtime libraries and each component can be used independently.

The following components are included in the OData SDK. See the detailed platform specific descriptions in the respective sections.

OData Parser

Parses and generates valid OData Protocol messages to/from native objects. It eliminates the need for mobile developers to work with the low-level details of the OData protocol directly. Functionalities supported by this component include:
  • Parsing OData XML structures to native OData objects
  • Validating OData XML during parsing by checking the existence of mandatory fields and structures
  • Providing easy access to all OData fields and structures via the objects resulting from the parsing
  • Building OData XML structures from native OData objects

Cache Management

The runtime cache is responsible for storing and accessing OData related objects in the memory of the device for quick and easy access. Functionalities supported by this component include:
  • Storing/accessing OData objects in the memory (both metadata and application data)
  • Searching for OData entries in memory using their searchable fields
  • Managing the size of the cache

Persistence

Implements a convenient and secure storage of data on the device. Mobile applications can access the locally stored data even when network connection is unavailable. Functionalities supported by this component include:
  • Storing objects and raw data on the physical storage of the device
  • Easy and quick access of the stored objects and raw data
  • Data encryption for sensitive data

Supportability

Implements standard SAP logging, tracing and error handling to enable end-to-end supportability from client to back-end. Functionalities supported by this component include:
  • Common exception and error handling
  • Event logging
  • Tracing (SAP Passport)

Connectivity

This network layer handles all network related tasks, hides the complexity of the network communication, and provides an easy to use API to the applications. For crossing a company firewall for enterprise use cases, you need to use SUP. Therefore, the connectivity component in the OData SDK offers a connection to SUP by default. For development and demo purposes, the SDK also provides a possibility to use HTTP or HTTPS. Functionalities supported by this component include:
  • Synchronous and asynchronous HTTP request handling
  • Basic authentication (user/password)
  • Timeout handling
  • Compressed payload handling
  • Request types as supported by OData Protocol
  • Connection pools for optimal performance