public class PluginsCollection extends Object implements RestCollection<TopLevelResource,PluginResource>
Constructor and Description |
---|
PluginsCollection(DynamicMap<RestView<PluginResource>> views,
PluginLoader loader,
com.google.inject.Provider<ListPlugins> list) |
Modifier and Type | Method and Description |
---|---|
RestView<TopLevelResource> |
list()
Create a view to list the contents of the collection.
|
PluginResource |
parse(String id) |
PluginResource |
parse(TopLevelResource parent,
IdString id)
Parse a path component into a resource handle.
|
DynamicMap<RestView<PluginResource>> |
views()
Get the views that support this collection.
|
@Inject public PluginsCollection(DynamicMap<RestView<PluginResource>> views, PluginLoader loader, com.google.inject.Provider<ListPlugins> list)
public RestView<TopLevelResource> list() throws ResourceNotFoundException
RestCollection
The returned view should accept the parent type to scope the search, and may want to take a "q" parameter option to narrow the results.
list
in interface RestCollection<TopLevelResource,PluginResource>
ResourceNotFoundException
- if the collection doesn't support listing.public PluginResource parse(TopLevelResource parent, IdString id) throws ResourceNotFoundException
RestCollection
parse
in interface RestCollection<TopLevelResource,PluginResource>
parent
- the handle to the collection.id
- string identifier supplied by the client. In a URL such as /changes/1234/abandon
this string is "1234"
.ResourceNotFoundException
- the object does not exist, or the caller is not permitted to
know if the resource exists.public PluginResource parse(String id) throws ResourceNotFoundException
ResourceNotFoundException
public DynamicMap<RestView<PluginResource>> views()
RestCollection
Within a resource the views are accessed as RESOURCE/plugin~view
.
views
in interface RestCollection<TopLevelResource,PluginResource>