DSpace/DSpace — pull request #434 by AnjaLeBlanc (2014-01-08 10:05:54+00:00)
Title: DS-1854

#### Not sure why there are so many files; changes should be only in the REST module, rest.cfg and item.java ####

Various improvements to the REST API

* In the reply to queries (except for queries for single items/collections/communities) part of the returned data is a meta data block like:

100
0
http://localhost:8080/rest/items/search?author=burke&expand=metadata&title="Synagogue sanctuary"
2014-01-07T15:40:13
2

* User can query a list of itmes with optional parameters limit and offset /rest/items?limit=10&offset=100

* Configuration setting (rest.cfg) for largest possible pagination limit to avoid memory problems on server # max pagination count
max_pagination = 100

* items search using discovery with configurable (rest.cfg) search and sorting terms
/rest/items/search?author=burke&order_asc=title
with the configuration:
item.search.author = author
item.sort.title = dc.title_sort
which maps user search terms to Solr
/rest/items/search?q=skinning+megan
works too but using discovery rather than Lucene

* which search implementation is to be used can be configured (rest.cfg)
implementing.search.class = org.dspace.rest.search.SolrSearch
currently the user can chose between Lucene and Solr (Discovery)