Ticket #2704 (closed task: fixed)

Opened 20 months ago

Last modified 18 months ago

Port dojo.data API and JsonItemStore to Dojo 0.9 M1 code split.

Reported by: guest Owned by: peller
Priority: normal Milestone:
Component: Data Version: 0.9
Severity: normal Keywords: dojo.data
Cc: peller@…

Description

Port dojo.data API and JsonItemStore? to Dojo 0.9 M1 code split.

This tracker is for porting of the 0.9 version of dojo.data to the M1 code split. In essense, it will contain all the API definition files Read.js, Write.js, Identity.js, Request.js, and Notification.js, the basic simple store JsonItemStore?, and the few common helper mixins and functions that can be shared across store implementations.

It may also include fixes for other tracker raised issues, which will be documented in this tracker as they are noted.

Attachments

dojo.data_20070406.patch (109.4 kB) - added by guest 20 months ago.
Tentative patch file for the dojo data APIs + JsonItemStore? for 0.9 split.

Change History

Changed 20 months ago by guest

Tentative patch file for the dojo data APIs + JsonItemStore? for 0.9 split.

Changed 20 months ago by guest

The patchfile dojo.data_20070406.patch is the latest pass at porting the base APIs for dojo.data to M1, plus the reference implementation for read of JsonItemStore?. The patch includes 45 unit tests that test the basic read functionality of JsonItemStore? as well as the common utility functions other stores may make use of.

In addition, this set of code should address the following trackers in trac.dojotoolkit.org :

#2541 (Calling fetch before getItemByIdentity() is now not necessary, it works as defined by the Read API).

#2543 (Sorting API through fetch and using soort object array is present in Read.js. Reference implementation is in JsonItemStore?)

#2544 (Paging API through fetch and using start/count is present in Read.js. Reference implementation is in JsonItemStore?)

#2545 (Callback names all match what was decided on in the meetings).

#2546 (Reading in a data set in JsonItemStore? that has collisions on 'unique' identifiers will cause an error to be thrown).

#2547 (The worst offending function I saw offhand was isItem(). It was O(n) in performance and was called a lot. I've converted it to being O(1) with minimal code change).

#2553 (I fixed the JsonItemStore? so it should be able to take an attribute 'item' as a parameter instead of just an attribute name string).

Sincerely,

-- Jared Jurkiewicz

Changed 20 months ago by peller

  • owner changed from skinner to peller
  • type changed from enhancement to task

Changed 20 months ago by peller

(In [7966]) Refs #2704

Changed 20 months ago by peller

(In [7968]) Refs #2704

Changed 20 months ago by peller

(In [7969]) Not thrilled with asserts - will revisit later. Also, still need to port io/xhrGet code when ready. Refs #2704

Changed 20 months ago by peller

(In [7971]) Refs #2704

Changed 20 months ago by peller

(In [7972]) Refs #2704

Changed 20 months ago by peller

(In [7973]) Refs #2704

Changed 20 months ago by peller

  • status changed from new to closed
  • summary changed from Port API and JsonItemStore to Dojo 0.9 M1 code split. to Port dojo.data API and JsonItemStore to Dojo 0.9 M1 code split.
  • resolution set to fixed
  • milestone changed from 0.9M2 to 0.9M1

Changed 19 months ago by alex

(In [8154]) super-trivial diff. Refs #2704

Changed 18 months ago by anonymous

  • milestone deleted

Milestone 0.9M1 deleted

Note: See TracTickets for help on using tickets.