Get links for repositories by namespaces from server

This commit is contained in:
René Pfeuffer
2020-09-04 21:44:48 +02:00
parent 2cfdaf1b0b
commit e3a2783bfd
8 changed files with 145 additions and 21 deletions

View File

@@ -104,6 +104,7 @@ public class IndexDtoGenerator extends HalAppenderMapper {
builder.single(link("config", resourceLinks.config().self()));
}
builder.single(link("repositories", resourceLinks.repositoryCollection().self()));
builder.single(link("namespaces", resourceLinks.namespaceCollection().self()));
if (PermissionPermissions.list().isPermitted()) {
builder.single(link("permissions", resourceLinks.permissions().self()));
}

View File

@@ -26,6 +26,7 @@ package sonia.scm.api.v2.resources;
import javax.inject.Inject;
import static de.otto.edison.hal.Link.link;
import static de.otto.edison.hal.Links.linkingTo;
class NamespaceToNamespaceDtoMapper {
@@ -38,6 +39,12 @@ class NamespaceToNamespaceDtoMapper {
}
NamespaceDto map(String namespace) {
return new NamespaceDto(namespace, linkingTo().self(links.namespace().self(namespace)).build());
return new NamespaceDto(
namespace,
linkingTo()
.self(links.namespace().self(namespace))
.single(link("repositories", links.repositoryCollection().forNamespace(namespace)))
.build()
);
}
}

View File

@@ -911,5 +911,9 @@ class ResourceLinks {
String self(String namespace) {
return namespaceLinkBuilder.method("getNamespaceResource").parameters().method("get").parameters(namespace).href();
}
String repositories(String namespace) {
return namespaceLinkBuilder.method("getNamespaceResource").parameters().method("get").parameters(namespace).href();
}
}
}