Commit Graph

755 Commits

Author SHA1 Message Date
Victor Woeltjen
79ebe72c6c [Core] Add test cases
Add test cases for model cache to ensure it maintains a single
instance of each model. WTD-1033.
2015-03-25 16:18:24 -07:00
Victor Woeltjen
7e5d363daa [Core] Update models in-place
In model cache, update cached model instances instead of
replacing them; this avoids situations where two different
model instances escape the model service because the second
request was made before the results from the first had been
cached. WTD-1033.
2015-03-25 13:46:40 -07:00
Victor Woeltjen
ad3bb355dd [Persistence] Provide model with error
Provide new version of domain objects correctly when revision
errors are encountered, WTD-1033.
2015-03-25 12:37:02 -07:00
Victor Woeltjen
9eeb68ddd0 [Persistence] Show user, modification time
Show user name and modification time in dialog when revision-checking
detects modifications. WTD-1033.
2015-03-25 12:19:45 -07:00
Victor Woeltjen
5e20c2199d [Persistence] Add tests for indicator
Add tests for indicator for connection to ElasticSearch persistence,
WTD-1033.
2015-03-25 11:46:40 -07:00
Victor Woeltjen
29584f2a7e [Persistence] Complete tests for queue
Complete tests for platform/persistence/queue, WTD-1033.
2015-03-25 11:36:43 -07:00
Victor Woeltjen
74fecf5271 [Persistence] Test queue
Add test cases for persistence queue, WTD-1033.
2015-03-25 11:25:51 -07:00
Victor Woeltjen
39d444d637 [Persistence] Test queue handler
Add test cases for handler for persistence queue, WTD-1033.
2015-03-25 11:01:32 -07:00
Victor Woeltjen
962de7e750 [Persistence] Test failure handling
Add test cases for handling of Overwrite/Discard choices when
persistence fails due to revision errors. WTD-1033.
2015-03-25 10:10:06 -07:00
Victor Woeltjen
55e50b6fd5 [Persistence] Test ElasticSearch's persistence provider
WTD-1033.
2015-03-24 18:11:41 -07:00
Victor Woeltjen
d88a0237c6 [Persistence] Continue adding tests
Continue adding test cases for revision checking bundle, WTD-1033.
2015-03-24 17:43:06 -07:00
Victor Woeltjen
b25c9731cf [Persistence] Add spec for failure dialog
WTD-1033.
2015-03-24 17:35:37 -07:00
Victor Woeltjen
548d91d362 [Dialog] Test options dialog
Test dialog which provides the user with buttons showing
different options, WTD-1033.
2015-03-24 17:26:50 -07:00
Victor Woeltjen
8c35f9eb81 [Dialog] Refactor dialogService
Refactor dialogService to remove redundant code after changes for
WTD-1033.
2015-03-24 17:20:59 -07:00
Victor Woeltjen
27af3a6b88 [Edit] Update specs
Update spec for editable persistence capability to include
delegation of refreshes, which supports revision-checking
when exiting edit mode. WTD-1033.
2015-03-24 17:07:06 -07:00
Victor Woeltjen
267053b431 [Core] Add test cases for CachingModelDecorator
WTD-1033.
2015-03-24 17:01:09 -07:00
Victor Woeltjen
6e2ec8dbe7 [Core] Update existing specs
Update existing specs for changes from WTD-1033.
2015-03-24 16:43:50 -07:00
Victor Woeltjen
35371f89ab [Edit] Update failing specs
Update failing specs in Edit mode with changes made for revision
checking, WTD-1033.
2015-03-24 16:31:14 -07:00
Victor Woeltjen
5867f8ad98 [Core] Update failing specs
Update failing specs in core after changes for WTD-1033.
2015-03-24 16:26:05 -07:00
Victor Woeltjen
c55f9ff092 [Persistence] Add placeholder specs
Add empty specs for new scripts introduced to support revision
checking and Overwrite/Discard dialog, WTD-1033.
2015-03-24 16:13:59 -07:00
Victor Woeltjen
015d863d79 [Persistence] Update test suites
Update suite declarations to include new scripts implemented for
revision checking for domain object persistence, WTD-1033.
2015-03-24 15:59:03 -07:00
Victor Woeltjen
0090732f71 [Persistence] Handle refresh after edit
Correctly handle Discard changes after leaving Edit mode when
conflicts are detected; WTD-1033.
2015-03-24 15:53:27 -07:00
Victor Woeltjen
6b43256afd [Persistence] Requeue on overwrite
Requeue (instead of trying to access persistence again) on overwrite
WTD-1033.
2015-03-24 14:09:51 -07:00
Victor Woeltjen
2709fde9a3 [Persistence] Resolve correct promise from queue
Make sure that the correct promise is resolved when a persistence
queue flush completes; some operations, like Save in Edit mode, wait
on this promise, so it needs to resolve when persistence of that
group is completed. WTD-1033.
2015-03-24 12:19:36 -07:00
Victor Woeltjen
821cc65d6f [Edit] Remove unused code
Remove unused and/or excessive code related to Save in Edit mode.
WTD-1033.
2015-03-24 10:41:56 -07:00
Victor Woeltjen
eb869b7213 [Persistence] Populate persistence error dialog
Show summary information about objects which could not be saved in
the dialog shown for revision-checking errors, WTD-1033.
2015-03-24 10:13:07 -07:00
Victor Woeltjen
f1fd73ad38 [Persistence] Change Cancel to Discard
Instead of Overwrite/Cancel, show options Overwrite/Discard, to
reflect actual user choices at this point. WTD-1033.
2015-03-24 10:05:55 -07:00
Victor Woeltjen
8f288751db [Edit] Persist in a group
Invoke persist calls when leaving Edit mode in a group, instead of
in-order, to allow these revision-checking to be handling for the
group as a whole. WTD-1033.
2015-03-24 10:01:45 -07:00
Victor Woeltjen
2554f4ab01 [Core] Add model cache
Add a cache for domain object models which prevents unnecessary
reload of those objects. WTD-1033.
2015-03-20 16:26:39 -07:00
Victor Woeltjen
a640af6bf9 [Core] Aggregate models more intelligently
When aggregating models from multiple providers, prefer the
more recent version, based on its modified timestamp. WTD-1033.
2015-03-20 16:13:14 -07:00
Victor Woeltjen
f9b8b17ff6 [Persistence] Break promise cycle
Break cyclical dependency in Promises that was causing persistence
to fall into an unresolvable state after overwrite, WTD-1033.
2015-03-20 16:07:54 -07:00
Victor Woeltjen
b604af2aa7 [Persistence] Tweak logic
Tweak approach for revision conflict detection; particularly,
use .reject instead of throw to avoid logging of the failure
unnecessarily. WTD-1033.
2015-03-20 15:53:40 -07:00
Victor Woeltjen
d8e1f69b37 [Persistence] Rewrite failure handling
Rewrite the overwrite behavior (for Overwrite/Cancel of rejected
persisted attempts) to utilize simpler API. WTD-1033.
2015-03-20 15:28:15 -07:00
Victor Woeltjen
66fd899650 [Core] Update capability interfaces
Update capability interfaces for persistence and mutation to
track timestamps of both changes and persistence calls.
Helps distinguish when refreshes should be allowed, which in
turn will be used to support Overwrite behavior when
Save conflicts are detected. WTD-1033.
2015-03-20 15:20:27 -07:00
Victor Woeltjen
1583c871fd [Core] Allow timestamp specification for mutation
Allow a timestamp to be explicitly passed into the mutation
capability during use, to override system time in certain
cases. WTD-1033.
2015-03-20 15:08:20 -07:00
Victor Woeltjen
1174f746f7 [Persistence] Handle overwrite/cancel
Handle Overwrite/Cancel more correctly when revision conflicts
are detected. WTD-1033.
2015-03-20 14:52:25 -07:00
Victor Woeltjen
513c06a81b [Persistence] Show persistence failure dialog
WTD-1033.
2015-03-20 14:23:51 -07:00
Victor Woeltjen
acf058849f [Persistence] Begin integrating persistence queue
Begin integrating persistence queue, tweaking for issues
detected through minimal use. WTD-1033.
2015-03-20 14:06:11 -07:00
Victor Woeltjen
0362d3479c [Persistence] Handle cancelled dialog
Handle cancellation in the Overwrite/Cancel dialog, WTD-1033.
2015-03-20 13:43:56 -07:00
Victor Woeltjen
42e7862174 [Persistence] Reject promises for failed updates
Reject promises for failed update attempts, WTD-1033.
2015-03-20 13:40:53 -07:00
Victor Woeltjen
e5c5caf26e [Persistence] Add bundle definition
Add bundle definition for the persistence queue which will
provide Overwrite/Cancel options, WTD-1033.
2015-03-20 13:20:14 -07:00
Victor Woeltjen
7b6ecd7bd7 [Persistence] Rename bundle
Rename bundle for queued persistence. WTD-1033.
2015-03-20 13:14:14 -07:00
Victor Woeltjen
62e88abbd2 [Persistence] Add capability decorator
Add capability decorator such that persistence queuing functionality
can be added on to the regular persistence capability of a domain
object. WTD-1033.
2015-03-20 13:13:02 -07:00
Victor Woeltjen
f0549db4fa [Persistence] Refactor persistence queue
Refactor/rename persistence queue to handle dependency injection
in a single place. WTD-1033.
2015-03-20 13:06:49 -07:00
Victor Woeltjen
356bd2de88 [Persistence] Add comments
Add clarifying comments to persistence queue & failure handler.
WTD-1033.
2015-03-20 12:56:17 -07:00
Victor Woeltjen
717b9b1b92 [Persistence] Add refresh
Continue adding behavior for persistence failures; add a refresh method
to the persistence capability to support this. WTD-1033.
2015-03-20 12:40:58 -07:00
Victor Woeltjen
d4691db8e2 [Dialog] Add options dialog
Add a dialog type which presents a set of buttons for the user to
choose from; will be used for Overwrite/Cancel, WTD-1033.
2015-03-20 12:11:19 -07:00
Victor Woeltjen
8ec65db93d [Persistence] Intermediary commit
Intermediary commit; continue implementing persistence queue for
WTD-1033.
2015-03-20 11:39:46 -07:00
Victor Woeltjen
75cd78d3ca [Persistence] Begin adding persistence queue
Begin adding persistence queue, which will consolidate persistence
calls in order to allow a single Overwrite/Cancel dialog to be
shown in the event that persist attempts are rejected. WTD-1033.
2015-03-20 10:56:11 -07:00
Victor Woeltjen
f2f9b8bbee [Persistence] Update Elastic persistence
Update ElasticSearch persistence provider to use ElasticSearch's
API, WTD-1033.
2015-03-19 17:12:56 -07:00