@Override
@GET
public RepositoryGroupListResourceResponse get(Context context, Request request, Response response, Variant variant)
throws ResourceException
{
RepositoryGroupListResourceResponse result = new RepositoryGroupListResourceResponse();
Collection<GroupRepository> groups = getRepositoryRegistry().getRepositoriesWithFacet(GroupRepository.class);
try {
for (GroupRepository group : groups) {
RepositoryGroupListResource resource = new RepositoryGroupListResource();
resource.setContentResourceURI(getRepositoryURLBuilder().getExposedRepositoryContentUrl(group));
resource.setResourceURI(createRepositoryGroupReference(request, group.getId()).toString());
resource.setId(group.getId());
resource.setExposed(group.isExposed());
resource.setUserManaged(group.isUserManaged());
resource.setFormat(getRepositoryRegistry()
.getRepositoryWithFacet(group.getId(), GroupRepository.class).getRepositoryContentClass()
.getId());
resource.setName(group.getName());
result.addData(resource);
}
}
catch (NoSuchRepositoryAccessException e) {
// access denied 403
getLogger().debug("Blocking access to all repository groups, based on permissions.");