diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/ResourceLinks.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/ResourceLinks.java index bfc3c2fb5d..46d4d42fe0 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/ResourceLinks.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/ResourceLinks.java @@ -59,19 +59,19 @@ class ResourceLinks { private final LinkBuilder userLinkBuilder; private UserLinks(UriInfo uriInfo) { - userLinkBuilder = new LinkBuilder(uriInfo, UserV2Resource.class, UserSubResource.class); + userLinkBuilder = new LinkBuilder(uriInfo, UserRootResource.class, UserResource.class); } String self(String name) { - return userLinkBuilder.method("getUserSubResource").parameters(name).method("get").parameters().href(); + return userLinkBuilder.method("getUserResource").parameters(name).method("get").parameters().href(); } String delete(String name) { - return userLinkBuilder.method("getUserSubResource").parameters(name).method("delete").parameters().href(); + return userLinkBuilder.method("getUserResource").parameters(name).method("delete").parameters().href(); } String update(String name) { - return userLinkBuilder.method("getUserSubResource").parameters(name).method("update").parameters().href(); + return userLinkBuilder.method("getUserResource").parameters(name).method("update").parameters().href(); } } @@ -83,7 +83,7 @@ class ResourceLinks { private final LinkBuilder collectionLinkBuilder; private UserCollectionLinks(UriInfo uriInfo) { - collectionLinkBuilder = new LinkBuilder(uriInfo, UserV2Resource.class, UserCollectionResource.class); + collectionLinkBuilder = new LinkBuilder(uriInfo, UserRootResource.class, UserCollectionResource.class); } String self() { diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapper.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapper.java index d3ebfd35b9..e3edff91cd 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapper.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapper.java @@ -36,8 +36,6 @@ public class UserCollectionToDtoMapper { public UserCollectionToDtoMapper() { } - - public UserCollectionDto map(int pageNumber, int pageSize, PageResult pageResult) { NumberedPaging paging = zeroBasedNumberedPaging(pageNumber, pageSize, pageResult.hasMore()); List dtos = pageResult.getEntities().stream().map(userToDtoMapper::map).collect(Collectors.toList()); diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserSubResource.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserResource.java similarity index 94% rename from scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserSubResource.java rename to scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserResource.java index b8a3f5238a..87ac1844c2 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserSubResource.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserResource.java @@ -27,12 +27,12 @@ import java.util.Collection; @Produces(VndMediaType.USER) -public class UserSubResource extends AbstractManagerResource { +public class UserResource extends AbstractManagerResource { private final UserDtoToUserMapper dtoToUserMapper; private final UserToUserDtoMapper userToDtoMapper; @Inject - public UserSubResource(UserDtoToUserMapper dtoToUserMapper, UserToUserDtoMapper userToDtoMapper, UserManager manager) { + public UserResource(UserDtoToUserMapper dtoToUserMapper, UserToUserDtoMapper userToDtoMapper, UserManager manager) { super(manager); this.dtoToUserMapper = dtoToUserMapper; this.userToDtoMapper = userToDtoMapper; diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserV2Resource.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserRootResource.java similarity index 55% rename from scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserV2Resource.java rename to scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserRootResource.java index 4df940147c..4895b9211b 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserV2Resource.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserRootResource.java @@ -4,17 +4,17 @@ import com.google.inject.Inject; import javax.ws.rs.Path; -@Path(UserV2Resource.USERS_PATH_V2) -public class UserV2Resource { +@Path(UserRootResource.USERS_PATH_V2) +public class UserRootResource { public static final String USERS_PATH_V2 = "v2/users/"; private final UserCollectionResource userCollectionResource; - private final UserSubResource userSubResource; + private final UserResource userResource; @Inject - public UserV2Resource(UserCollectionResource userCollectionResource, UserSubResource userSubResource) { + public UserRootResource(UserCollectionResource userCollectionResource, UserResource userResource) { this.userCollectionResource = userCollectionResource; - this.userSubResource = userSubResource; + this.userResource = userResource; } @Path("") @@ -23,7 +23,7 @@ public class UserV2Resource { } @Path("{id}") - public UserSubResource getUserSubResource() { - return userSubResource; + public UserResource getUserResource() { + return userResource; } } diff --git a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/ResourceLinksTest.java b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/ResourceLinksTest.java index 26bfb08cbb..1d5586de5a 100644 --- a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/ResourceLinksTest.java +++ b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/ResourceLinksTest.java @@ -22,31 +22,31 @@ public class ResourceLinksTest { @Test public void shouldCreateCorrectUserSelfUrl() { String url = user(uriInfo).self("ich"); - assertEquals(BASE_URL + UserV2Resource.USERS_PATH_V2 + "ich", url); + assertEquals(BASE_URL + UserRootResource.USERS_PATH_V2 + "ich", url); } @Test public void shouldCreateCorrectUserDeleteUrl() { String url = user(uriInfo).delete("ich"); - assertEquals(BASE_URL + UserV2Resource.USERS_PATH_V2 + "ich", url); + assertEquals(BASE_URL + UserRootResource.USERS_PATH_V2 + "ich", url); } @Test public void shouldCreateCorrectUserUpdateUrl() { String url = user(uriInfo).update("ich"); - assertEquals(BASE_URL + UserV2Resource.USERS_PATH_V2 + "ich", url); + assertEquals(BASE_URL + UserRootResource.USERS_PATH_V2 + "ich", url); } @Test public void shouldCreateCorrectUserCreateUrl() { String url = userCollection(uriInfo).create(); - assertEquals(BASE_URL + UserV2Resource.USERS_PATH_V2, url); + assertEquals(BASE_URL + UserRootResource.USERS_PATH_V2, url); } @Test public void shouldCreateCorrectUserCollectionUrl() { String url = userCollection(uriInfo).self(); - assertEquals(BASE_URL + UserV2Resource.USERS_PATH_V2, url); + assertEquals(BASE_URL + UserRootResource.USERS_PATH_V2, url); } @Test diff --git a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapperTest.java b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapperTest.java index 03bcbd4521..48d7359eac 100644 --- a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapperTest.java +++ b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserCollectionToDtoMapperTest.java @@ -48,7 +48,7 @@ public class UserCollectionToDtoMapperTest { public void init() throws URISyntaxException { initMocks(this); URI baseUri = new URI("http://example.com/base/"); - expectedBaseUri = baseUri.resolve(UserV2Resource.USERS_PATH_V2 + "/"); + expectedBaseUri = baseUri.resolve(UserRootResource.USERS_PATH_V2 + "/"); when(uriInfo.getBaseUri()).thenReturn(baseUri); when(uriInfoStore.get()).thenReturn(uriInfo); subjectThreadState.bind(); diff --git a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserV2ResourceTest.java b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserRootResourceTest.java similarity index 89% rename from scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserV2ResourceTest.java rename to scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserRootResourceTest.java index accb9d9369..55eb2c0be1 100644 --- a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserV2ResourceTest.java +++ b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserRootResourceTest.java @@ -43,7 +43,7 @@ import static org.mockito.MockitoAnnotations.initMocks; password = "secret", configuration = "classpath:sonia/scm/repository/shiro.ini" ) -public class UserV2ResourceTest { +public class UserRootResourceTest { @Rule public ShiroRule shiro = new ShiroRule(); @@ -78,17 +78,17 @@ public class UserV2ResourceTest { userCollectionToDtoMapper = new UserCollectionToDtoMapper(userToDtoMapper, uriInfoStore); UserCollectionResource userCollectionResource = new UserCollectionResource(userManager, dtoToUserMapper, userToDtoMapper, userCollectionToDtoMapper); - UserSubResource userSubResource = new UserSubResource(dtoToUserMapper, userToDtoMapper, userManager); - UserV2Resource userV2Resource = new UserV2Resource(userCollectionResource, userSubResource); + UserResource userResource = new UserResource(dtoToUserMapper, userToDtoMapper, userManager); + UserRootResource userRootResource = new UserRootResource(userCollectionResource, userResource); - dispatcher.getRegistry().addSingletonResource(userV2Resource); + dispatcher.getRegistry().addSingletonResource(userRootResource); when(uriInfo.getBaseUri()).thenReturn(URI.create("/")); when(uriInfoStore.get()).thenReturn(uriInfo); } @Test public void shouldCreateFullResponseForAdmin() throws URISyntaxException { - MockHttpRequest request = MockHttpRequest.get("/" + UserV2Resource.USERS_PATH_V2 + "Neo"); + MockHttpRequest request = MockHttpRequest.get("/" + UserRootResource.USERS_PATH_V2 + "Neo"); MockHttpResponse response = new MockHttpResponse(); dispatcher.invoke(request, response); @@ -104,7 +104,7 @@ public class UserV2ResourceTest { @Test @SubjectAware(username = "unpriv") public void shouldCreateLimitedResponseForSimpleUser() throws URISyntaxException { - MockHttpRequest request = MockHttpRequest.get("/" + UserV2Resource.USERS_PATH_V2); + MockHttpRequest request = MockHttpRequest.get("/" + UserRootResource.USERS_PATH_V2); MockHttpResponse response = new MockHttpResponse(); dispatcher.invoke(request, response); @@ -119,7 +119,7 @@ public class UserV2ResourceTest { @Test @SubjectAware(username = "unpriv") public void shouldNotGetSingleUserForSimpleUser() throws URISyntaxException { - MockHttpRequest request = MockHttpRequest.get("/" + UserV2Resource.USERS_PATH_V2 + "Neo"); + MockHttpRequest request = MockHttpRequest.get("/" + UserRootResource.USERS_PATH_V2 + "Neo"); MockHttpResponse response = new MockHttpResponse(); dispatcher.invoke(request, response); @@ -133,7 +133,7 @@ public class UserV2ResourceTest { byte[] userJson = Resources.toByteArray(url); MockHttpRequest request = MockHttpRequest - .post("/" + UserV2Resource.USERS_PATH_V2) + .post("/" + UserRootResource.USERS_PATH_V2) .contentType(VndMediaType.USER) .content(userJson); MockHttpResponse response = new MockHttpResponse(); @@ -150,7 +150,7 @@ public class UserV2ResourceTest { @Test public void shouldFailForMissingContent() throws URISyntaxException { MockHttpRequest request = MockHttpRequest - .post("/" + UserV2Resource.USERS_PATH_V2) + .post("/" + UserRootResource.USERS_PATH_V2) .contentType(VndMediaType.USER) .content(new byte[] {}); MockHttpResponse response = new MockHttpResponse(); diff --git a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserToUserDtoMapperTest.java b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserToUserDtoMapperTest.java index a4f3da4e45..d00f761702 100644 --- a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserToUserDtoMapperTest.java +++ b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/UserToUserDtoMapperTest.java @@ -42,7 +42,7 @@ public class UserToUserDtoMapperTest { public void init() throws URISyntaxException { initMocks(this); URI baseUri = new URI("http://example.com/base/"); - expectedBaseUri = baseUri.resolve(UserV2Resource.USERS_PATH_V2 + "/"); + expectedBaseUri = baseUri.resolve(UserRootResource.USERS_PATH_V2 + "/"); when(uriInfo.getBaseUri()).thenReturn(baseUri); when(uriInfoStore.get()).thenReturn(uriInfo); subjectThreadState.bind();