Page History
Table of Contents |
---|
Sprint 1: May 7-18, 2018
Sprint Goals
(NOTE: Currently these goals are very high-level. They need to be broken down into specific tasks / tickets prior to the Sprint, so that those tickets are claimable by individuals.)
- Alphabetic jump to (specific letter) in results listing
- E.g. Jump to a Title / Author starting with a specific letter or string, like http://demo.dspace.org/xmlui/browse?type=title
- Build out Administrative Search/Browse tools (each of these tools is limited to Site Administrators)
- Find Item by Internal Item ID/Item Handle (e.g. XMLUI: http://demo.dspace.org/xmlui/admin/item , JSPUI: http://demo.dspace.org/jspui/tools/edit-item)
- Administrative Search feature, which allows for faceted searching & browsing of "hidden" items. This feature would replace the following two Administrative Browse use cases (by providing a way to filter items by withdrawn status and/or private status)
- Browse Withdrawn Items (by Title) (e.g. XMLUI: http://demo.dspace.org/xmlui/admin/withdrawn , JSPUI: http://demo.dspace.org/jspui/dspace-admin/withdrawn)
- Browse Private Items (by Title) (e.g. XMLUI: http://demo.dspace.org/xmlui/admin/private , JSPUI: http://demo.dspace.org/jspui/dspace-admin/privateitems)
- Administrative Edit Item form
- Build a simple edit item form that mirrors the existing XMLUI and JSPUI edit item pages (e.g. XMLUI: http://demo.dspace.org/xmlui/admin/item, JSPUI: http://demo.dspace.org/jspui/tools/edit-item)
- This form should allow Administrators to add/update/delete any metadata field values for this item.
- This form should allow Administrators to withdrawn/reinstantiate the item
- This form should allow Administrators to make the item discoverable/private
- This form should allow Administrators to add/update/delete bitstreams attached to the item.
- Build a simple edit item form that mirrors the existing XMLUI and JSPUI edit item pages (e.g. XMLUI: http://demo.dspace.org/xmlui/admin/item, JSPUI: http://demo.dspace.org/jspui/tools/edit-item)
- Improve developer documentation / getting up-to-speed documentation.
...
- Current Browse Withdrawn By Title:
- Current Browse Private By Title:
- Effort: 12h
- To do:
- configure the route, using a guard that limits access to authorized users
- create the component based on the search page component
- Use the set of facets for the administrative search. These will be configured on the rest side, and should contain a section to facet on withdrawn and private items
- Add labels to the search result components for withdrawn and private items. Use bootstrap's warning style labels, add them to the front of the author row.
- write tests
REST Tasks
These are somewhat lower level than the goals above, in order to get an idea of the effort required, but need more detail before they can be turned in to JIRA issues
Alphabetic jump to (specific letter) in results listing
- Add REST method to compute the offset / specify the offset as a startWith
- Effort: t.b.d
To do
write the contract
create a ticket on the github rest contract to discussion the best strategy
implement the new method / offset calculation strategy
write tests
- must work with both item level browse than metadata browse
Build out Administrative Search/Browse tools (each of these tools is limited to Site Administrators)
Find Item by Internal Item ID/Item Handle
- Find a DSpaceObject by identifer (handle)
- Effort: 8h
- To do:
- write the contract (it should be a redirect to the specific items/communities/collections endpoint)
- implement a new dedicated controller
- write tests
- valid identifiers
- unvalid identifiers
Administrative Search
- Effort: 24h
- To do:
- introduce special withdrawn and private prefix for discover configuration
- enable the discover controller to search over withdrawn and private items
- fix the "public search" configuration to exclude withdrawn / private items
- write a default discover configuration that reuse the default filters / facets
- write a SolrSearchPlugin to exclude withdrawn and private items to non-administrators
- write tests
Build out Administrative Edit item
Metadata representation
- Express the metadata in the DSpaceObject as a map
- Effort: < 8h
- To do:
- replace the List<MetadataEntryRest> metadata in the DSpaceObjectRest with the Map<String, List<MetadataValueRest>> metadata used in the DataDescribe section of the workspaceItem (see https://github.com/DSpace/Rest7Contract/blob/master/workspaceitems.md#single-item)
- update all the tests to reflect the new structure
- update the REST contract samples
Patch items
- Add/Remove/reorder metadata
- Effort: 24h
- To do:
- write the contract (it must be based on PATCH)
- implement the patch method in the Item repository using a support class so to be reusable for each DSpaceObject (Collection, Community, EPerson, ...)
- write tests
- Withdrawn, Reinstatiate, make private or discoverable an item
- Effort: 8h
- To do:
- write the contract (it must be based on PATCH)
- implement the patch method in the Item repository
- write tests
Overview
Content Tools