sonatype/nexus-oss — pull request #134 by adreghiciu (2013-09-17 16:04:43+00:00)
Title: [NEXUS-5406] Dynamic source for capabilities combos

https://issues.sonatype.org/browse/NEXUS-5406

The change introduces a new form field (combo box) that will allow any type of source of info for selection.
The combo field definition will describe what rest resource to be called (the store), that in turn will return an id/name set of data. The store can return more data then the id/name columns and is not mandatory to contain fields named "id" and "name". Combobox has options to define the mapping between id/name and fields returned by resource.

For example:

A nexus users combo box will have:
storePath -> /service/local/users
storeRoot -> data (as users are using the wrapped data)
idMapping -> userId
nameMapping -> lastName

A repositories combo box will have:
storePath -> /service/local/repositories
storeRoot -> data

Beside the fact that now we can have all sort of combos, the data displayed in those combos could be filtered:
only proxy repos: storePath -> /service/local/repositories?facet=org.sonatype.nexus.proxy.repository.ProxyRepository
only active users: storePath -> /service/local/users?active=true

(above are just examples and changes required are not included in this pull)