Skip to content

Commit 1ac0554

Browse files
committed
Updated ResourceService
1 parent 7953a75 commit 1ac0554

File tree

3 files changed

+28
-23
lines changed

3 files changed

+28
-23
lines changed

src/main/java/com/jaspersoft/jasperserver/jaxrs/client/apiadapters/resources/SingleResourceAdapter.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545

4646
public class SingleResourceAdapter extends AbstractAdapter {
4747
public static final String SERVICE_URI = "resources";
48+
public static final String REGEX = "/";
4849
private final String resourceUri;
4950
private final MultivaluedMap<String, String> params;
5051
private ArrayList<String> path = new ArrayList<String>();
@@ -322,7 +323,7 @@ private <ResourceType extends ClientResource> JerseyRequest<ResourceType> prepar
322323

323324
private <P> JerseyRequest<P> buildRequest(Class<P> clazz) {
324325
path.add(SERVICE_URI);
325-
path.addAll(Arrays.asList(resourceUri.split("/")));
326+
path.addAll((resourceUri.equals(REGEX)) ? Arrays.asList(REGEX) : Arrays.asList(resourceUri.split(REGEX)));
326327
return JerseyRequest.buildRequest(sessionStorage,
327328
clazz,
328329
path.toArray(new String[path.size()]),

src/test/java/com/jaspersoft/jasperserver/jaxrs/client/apiadapters/resources/SingleResourceAdapterTest.java

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,8 @@ public void should_return_specified_resource_asynchronously() throws Interrupted
133133
mockStatic(JerseyRequest.class);
134134
PowerMockito.when(buildRequest(eq(sessionStorageMock),
135135
eq(ClientResource.class),
136-
eq(new String[]{"resources", resourceUri}))).thenReturn(jerseyRequestMock);
136+
eq(new String[]{"resources", resourceUri}),
137+
any(DefaultErrorHandler.class))).thenReturn(jerseyRequestMock);
137138
PowerMockito.doReturn(operationResultMock).when(jerseyRequestMock).get();
138139

139140
final Callback<OperationResult<ClientResource>, Void> callback = PowerMockito.spy(new Callback<OperationResult<ClientResource>, Void>() {
@@ -200,7 +201,7 @@ public void should_delete_resource_asynchronously() throws InterruptedException
200201
mockStatic(JerseyRequest.class);
201202
when(buildRequest(eq(sessionStorageMock),
202203
eq(Object.class),
203-
eq(new String[]{"resources", resourceUri}))).thenReturn(objectJerseyRequestMock);
204+
eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class))).thenReturn(objectJerseyRequestMock);
204205
doReturn(objectOperationResultMock).when(objectJerseyRequestMock).delete();
205206

206207
final Callback<OperationResult, Void> callback = spy(new Callback<OperationResult, Void>() {
@@ -246,7 +247,7 @@ public void should_upload_file_asynchronously() throws InterruptedException {
246247

247248
mockStatic(JerseyRequest.class);
248249
when(buildRequest(eq(sessionStorageMock), eq(ClientFile.class),
249-
eq(new String[]{"resources", resourceUri}))).thenReturn(clientFileJerseyRequestMock);
250+
eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class))).thenReturn(clientFileJerseyRequestMock);
250251
doReturn(clientFileOperationResultMock).when(clientFileJerseyRequestMock).post(anyObject());
251252

252253
final Callback<OperationResult<ClientFile>, Void> callback =
@@ -299,7 +300,7 @@ public void should_return_operation_result_with_client_resource_folder() {
299300

300301
mockStatic(JerseyRequest.class);
301302
when(buildRequest(eq(sessionStorageMock), eq(ClientResource.class),
302-
eq(new String[]{"resources", resourceUri}))).thenReturn(jerseyRequestMock);
303+
eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class))).thenReturn(jerseyRequestMock);
303304
doReturn(operationResultMock).when(jerseyRequestMock).get();
304305

305306
SingleResourceAdapter adapter = new SingleResourceAdapter(sessionStorageMock, resourceUri);
@@ -333,7 +334,8 @@ public void should_send_descriptor_into_server_asynchronously() throws Interrupt
333334

334335
mockStatic(JerseyRequest.class);
335336
when(buildRequest(eq(sessionStorageMock), eq(ClientAdhocDataView.class),
336-
eq(new String[]{"resources", resourceUri}))).thenReturn(adhocDataViewJerseyRequestMock);
337+
eq(new String[]{"resources", resourceUri}),
338+
any(DefaultErrorHandler.class))).thenReturn(adhocDataViewJerseyRequestMock);
337339
doReturn(adhocDataViewOperationResultMock).when(adhocDataViewJerseyRequestMock).post(descriptorMock);
338340
doReturn(configurationMock).when(sessionStorageMock).getConfiguration();
339341
doReturn(MimeType.JSON).when(configurationMock).getContentMimeType();
@@ -389,7 +391,8 @@ public void should_send_descriptor_into_server() {
389391

390392
mockStatic(JerseyRequest.class);
391393
when(buildRequest(eq(sessionStorageMock), eq(ClientAdhocDataView.class),
392-
eq(new String[]{"resources", resourceUri}))).thenReturn(adhocDataViewJerseyRequestMock);
394+
eq(new String[]{"resources", resourceUri}),
395+
any(DefaultErrorHandler.class))).thenReturn(adhocDataViewJerseyRequestMock);
393396
doReturn(adhocDataViewOperationResultMock).when(adhocDataViewJerseyRequestMock).post(descriptorMock);
394397
doReturn(configurationMock).when(sessionStorageMock).getConfiguration();
395398
doReturn(MimeType.JSON).when(configurationMock).getContentMimeType();
@@ -401,7 +404,7 @@ public void should_send_descriptor_into_server() {
401404

402405
/** Then **/
403406
verifyStatic();
404-
buildRequest(eq(sessionStorageMock), eq(ClientAdhocDataView.class), eq(new String[]{"resources", resourceUri}));
407+
buildRequest(eq(sessionStorageMock), eq(ClientAdhocDataView.class), eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class));
405408

406409
assertNotNull(retrieved);
407410
assertSame(retrieved, adhocDataViewOperationResultMock);
@@ -420,7 +423,7 @@ public void should_delete_resource_on_server() {
420423

421424
mockStatic(JerseyRequest.class);
422425
when(buildRequest(eq(sessionStorageMock), eq(Object.class),
423-
eq(new String[]{"resources", resourceUri}))).thenReturn(objectJerseyRequestMock);
426+
eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class))).thenReturn(objectJerseyRequestMock);
424427
doReturn(objectOperationResultMock).when(objectJerseyRequestMock).delete();
425428

426429
SingleResourceAdapter adapter = new SingleResourceAdapter(sessionStorageMock, resourceUri);
@@ -442,7 +445,7 @@ public void should_return_resource_as_IS_in_binary_format() {
442445

443446
mockStatic(JerseyRequest.class);
444447
when(buildRequest(eq(sessionStorageMock), eq(InputStream.class),
445-
eq(new String[]{"resources", resourceUri}))).thenReturn(inputStreamJerseyRequestMock);
448+
eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class))).thenReturn(inputStreamJerseyRequestMock);
446449
doReturn(inputStreamOperationResultMock).when(inputStreamJerseyRequestMock).get();
447450
SingleResourceAdapter adapter = new SingleResourceAdapter(sessionStorageMock, resourceUri);
448451

@@ -464,7 +467,7 @@ public void should_return_resource_as_IS_in_binary_format_asynchronously() throw
464467

465468
mockStatic(JerseyRequest.class);
466469
when(buildRequest(eq(sessionStorageMock), eq(InputStream.class),
467-
eq(new String[]{"resources", resourceUri}))).thenReturn(inputStreamJerseyRequestMock);
470+
eq(new String[]{"resources", resourceUri}), any(DefaultErrorHandler.class))).thenReturn(inputStreamJerseyRequestMock);
468471
doReturn(inputStreamOperationResultMock).when(inputStreamJerseyRequestMock).get();
469472
SingleResourceAdapter adapter = new SingleResourceAdapter(sessionStorageMock, resourceUri);
470473

@@ -799,7 +802,8 @@ public void should_upload_file() throws InterruptedException {
799802
mockStatic(JerseyRequest.class);
800803
when(buildRequest(eq(sessionStorageMock),
801804
eq(ClientFile.class),
802-
eq(new String[]{"resources", resourceUri}))).thenReturn(clientFileJerseyRequestMock);
805+
eq(new String[]{"resources", resourceUri}),
806+
any(DefaultErrorHandler.class))).thenReturn(clientFileJerseyRequestMock);
803807
doReturn(clientFileOperationResultMock).when(clientFileJerseyRequestMock).post(anyObject());
804808

805809

src/test/java/com/jaspersoft/jasperserver/jaxrs/client/apiadapters/thumbnails/SingleThumbnailAdapterTest.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ public void should_set_report_uri() {
7575
SingleThumbnailAdapter retrieved = thumbnailAdapter.report("/public/Samples/Reports/07g.RevenueDetailReport");
7676

7777
// Then
78-
String reportName = (String) Whitebox.getInternalState(retrieved, "reportName");
79-
assertEquals(reportName, "public/Samples/Reports/07g.RevenueDetailReport");
78+
String reportName = (String) Whitebox.getInternalState(retrieved, "reportUri");
79+
assertEquals(reportName, "/public/Samples/Reports/07g.RevenueDetailReport");
8080
}
8181

8282
@Test
@@ -85,13 +85,13 @@ public void should_set_report_uri() {
8585
*/
8686
public void should_not_set_null_report_uri() {
8787
// Given
88-
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
88+
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
8989

9090
// When
9191
SingleThumbnailAdapter retrieved = thumbnailAdapter.report(null);
9292

9393
// Then
94-
String reportName = (String) Whitebox.getInternalState(retrieved, "reportName");
94+
String reportName = (String) Whitebox.getInternalState(retrieved, "reportUri");
9595
assertNull(reportName);
9696
}
9797

@@ -101,7 +101,7 @@ public void should_not_set_null_report_uri() {
101101
*/
102102
public void should_throw_exception_when_report_uri_is_null() {
103103
// Given
104-
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
104+
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
105105

106106
// When
107107
thumbnailAdapter.report(null).get();
@@ -116,7 +116,7 @@ public void should_throw_exception_when_report_uri_is_null() {
116116
*/
117117
public void should_throw_exception_when_report_uri_is_empty() {
118118
// Given
119-
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
119+
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
120120

121121
// When
122122
thumbnailAdapter.report("").get();
@@ -131,13 +131,13 @@ public void should_throw_exception_when_report_uri_is_empty() {
131131
*/
132132
public void should_not_set_empty_report_uri() {
133133
// Given
134-
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
134+
SingleThumbnailAdapter thumbnailAdapter = new SingleThumbnailAdapter(sessionStorageMock);
135135

136136
// When
137137
SingleThumbnailAdapter retrieved = thumbnailAdapter.report("");
138138

139139
// Then
140-
String reportName = (String) Whitebox.getInternalState(retrieved, "reportName");
140+
String reportName = (String) Whitebox.getInternalState(retrieved, "reportUri");
141141
assertNull(reportName);
142142
}
143143

@@ -153,7 +153,7 @@ public void should_set_report_uri_with_default_allowed() {
153153
SingleThumbnailAdapter retrieved = thumbnailAdapter.defaultAllowed(true).report("/public/Samples/Reports/07g.RevenueDetailReport");
154154

155155
// Then
156-
Boolean param = (Boolean) Whitebox.getInternalState(retrieved,"defaultAllowed");
156+
Boolean param = (Boolean) Whitebox.getInternalState(retrieved, "defaultAllowed");
157157
assertSame(retrieved, thumbnailAdapter);
158158
assertEquals(param, Boolean.TRUE);
159159
}
@@ -187,7 +187,7 @@ public void should_return_proper_operation_result() {
187187
when(buildRequest(
188188
eq(sessionStorageMock),
189189
eq(InputStream.class),
190-
eq(new String[]{"thumbnails", "public/Samples/Reports/07g.RevenueDetailReport"}),
190+
eq(new String[]{"thumbnails", "", "public", "Samples", "Reports", "07g.RevenueDetailReport"}),
191191
any(DefaultErrorHandler.class))).thenReturn(jerseyRequestMock);
192192
when(jerseyRequestMock.setAccept("image/jpeg")).thenReturn(jerseyRequestMock);
193193
when(jerseyRequestMock.get()).thenReturn(operationResultMock);
@@ -207,7 +207,7 @@ public void should_return_proper_operation_result() {
207207
buildRequest(
208208
eq(sessionStorageMock),
209209
eq(InputStream.class),
210-
eq(new String[]{"thumbnails", "public/Samples/Reports/07g.RevenueDetailReport"}),
210+
eq(new String[]{"thumbnails", "", "public", "Samples", "Reports", "07g.RevenueDetailReport"}),
211211
any(DefaultErrorHandler.class));
212212

213213
}

0 commit comments

Comments
 (0)