Use field variables

This commit is contained in:
René Pfeuffer
2018-06-25 09:40:18 +02:00
parent 51b2407ac4
commit f9a094e1b9

View File

@@ -9,7 +9,6 @@ import sonia.scm.user.User;
import sonia.scm.user.UserPermissions;
import javax.inject.Inject;
import javax.ws.rs.core.UriInfo;
import java.util.EnumSet;
import java.util.List;
@@ -37,22 +36,22 @@ public class UserCollectionToDtoMapper {
List<UserDto> dtos = pageResult.getEntities().stream().map(userToDtoMapper::map).collect(toList());
UserCollectionDto userCollectionDto = new UserCollectionDto(
createLinks(uriInfoStore.get(), paging),
createLinks(paging),
embedDtos(dtos)
);
userCollectionDto.setPage(pageNumber);
return userCollectionDto;
}
private static Links createLinks(UriInfo uriInfo, NumberedPaging page) {
String baseUrl = userCollection(uriInfo).self();
private Links createLinks(NumberedPaging page) {
String baseUrl = userCollection(uriInfoStore.get()).self();
Links.Builder linksBuilder = linkingTo()
.with(page.links(
fromTemplate(baseUrl + "{?page,pageSize}"),
EnumSet.allOf(PagingRel.class)));
if (UserPermissions.create().isPermitted()) {
linksBuilder.single(link("create", userCollection(uriInfo).create()));
linksBuilder.single(link("create", userCollection(uriInfoStore.get()).create()));
}
return linksBuilder.build();
}