lshift/diffa — pull request #60 by paulj (2012-03-12 00:18:34+00:00)
Title: Inventory submission

This change adds the ability to submit CSV-formatted "inventories" to Diffa. This allows for the bulk upload of entities, and allows for systems that don't support interactive scanning or realtime change reporting to participate in the Diffa ecosystem.

Inventories are fully validated in the submission thread, and then deferred to the appropriate actor for correlation and differencing; this means that changes in an inventory won't be seen immediately. This isn't inconsistent with the other submission strategies however.

Inventories can be partitioned by adding constraints to the submission mechanism. For example, to submit only for the current business date (assuming there is a `bizDate` range constraint configured), then an upload could be made to:

`POST /domains/foo/inventory?bizDate-start=2012-03-12&bizDate-end=2012-03-12`

This ensures that entries for previous days are not removed, despite them not being present in the upload.