JayData 1.2.2

Rating:        Based on 1 rating
Reviewed:  0 reviews
Downloads: 756
Released: Oct 15, 2012
Updated: Oct 26, 2012 by JayDataOrg
Dev status: Stable Help Icon

Recommended Download

Application JayData 1.2.2
application, 504K, uploaded Oct 15, 2012 - 221 downloads

Other Available Downloads

Source Code JayData 1.2.2 Source
source code, 8894K, uploaded Oct 15, 2012 - 72 downloads
Example FlowerShop_HandsOnLab_with_KnockoutJS
example, 7192K, uploaded Oct 15, 2012 - 284 downloads
Application ODataTypeScriptExample
application, 821K, uploaded Oct 26, 2012 - 179 downloads

Release Notes

JayData is a unified data access library for JavaScript to CRUD + Query data from different sources like OData, MongoDB, WebSQL, SqLite, HTML5 localStorage, Facebook or YQL. The library can be integrated with Knockout.js or Sencha Touch 2 and can be used on Node.js as well.

See it in action in this 6 minutes video
Sencha Touch 2 example app using JayData: Netflix browser.

What's new in JayData 1.2.2

For detailed release notes check the release notes.

Revitalized IndexedDB provider

Now you can use JayData to store objects in IndexedDB storage in Google Chrome, Mozilla Firefox and Internet Explorer 10. Use pure JavaScript syntax using JayData, work with typed objects and forget the labyrinthine of the native IndexedDB API. The new version supports create, update, delete operations, retrieval of all stored records and the following functions: toArray(), forEach() and length().

SQLite provider: support of include has been added

Write more advanced queries spiced up with includes to retrieve tables from many SQLite tables. JayData automatically joins the necessary tables according to the navigation properties of the entitydefinitions. Deep include is supported, too:
  $data.NewsReaderContext.Articles.include("Author.Profile").include("Category").toArray() 

HTML5 localStorage provider

Build a truly cross-platform data storage solution using JayData LocalStore provider by targeting all the web browsers or using the localStorage as a fallback storage mechanism. Initialize LocalStore provider using the snippet below and manage stored objects using JSLQ syntax
  var memoryContext = new $news.Types.NewsContext({name: 'LocalStore'});

Other new features:

  • guid support for oData, sqLite, webSql and indexedDB providers
  • $data.createGuid
  • guid require and custom validator
  • support typed output of the projection in the third parameter of map()
context.Articles
  .map(function (a) { 
     return { Id: a.Id, Lead: a.Lead, Body: a.Body, Category: a.Category }; 
    }, null, $news.Types.Article)
  .toArray(function (articles) {... });
  • The constuctor of the third parameter must accept the object defined inside the map()
  • elementType of the EntitySet (type of Article in this case) can be returned with the 'default' shorthand in the third parameter.

Modifications and fixes:

  • code comment and unit test coverage
  • fix: remove concurrency property from request body
  • Change: EntityValidation now supports string-defined RegExp
  • fix: mongoDB provider hangs when contextdoesn't contain at least one EntitySet
  • change: $data.Number maps to Edm.Double instead of Edm.Decimal
  • Fix: odata set navigation property
  • fix: odata mapping many side of navigation property
  • fix: xml head encoding changed from iso-8859-1 to UTF-8
  • Change: EntitySet.add now return the added entity
  • fix: sqLite/webSql, navigation property required attribute
  • fix: improved method to detect https protocol in JayService routeParser
  • fix: BatchProcessor error handling in promise
  • fix: MongoDB provider - delete by key
  • fix: mongo where compile, context.cursor init
  • fix: JaySvcUtil find version in Node.js environment
  • fix: Error handling in EntitySetProcessor

Breaking changes:

  • No breaking changes :)

Reviews for this release