Skip to content

Commit 05e4bb3

Browse files
committed
fix(Rest): new endpoint will help to get the package details by projectId.
Signed-off-by: Nikesh kumar <kumar.nikesh@siemens.com>
1 parent 975e30f commit 05e4bb3

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

rest/resource-server/src/main/java/org/eclipse/sw360/rest/resourceserver/project/ProjectController.java

+19
Original file line numberDiff line numberDiff line change
@@ -466,6 +466,25 @@ public ResponseEntity<EntityModel<Project>> getProject(
466466
return new ResponseEntity<>(userHalResource, HttpStatus.OK);
467467
}
468468

469+
@Operation(
470+
description = "Get a package with project id.",
471+
tags = {"Projects"}
472+
)
473+
@RequestMapping(value = PROJECTS_URL + "/{id}/packages", method = RequestMethod.GET)
474+
public ResponseEntity<List<HalResource<Project>>> getPackagesByProjectId(
475+
@Parameter(description = "Project ID", example = "376576")
476+
@PathVariable("id") String id) throws TException {
477+
478+
User sw360User = restControllerHelper.getSw360UserFromAuthentication();
479+
Project sw360Project = projectService.getProjectForUserById(id, sw360User);
480+
HalResource<Project> halProject = createHalProject(sw360Project, sw360User);
481+
482+
if (sw360Project.getPackageIdsSize() > 0) {
483+
restControllerHelper.addEmbeddedPackages(halProject, sw360Project.getPackageIds(), packageService);
484+
}
485+
return new ResponseEntity(halProject, HttpStatus.OK);
486+
}
487+
469488
@Operation(
470489
description = "Get linked projects of a single project.",
471490
tags = {"Projects"}

rest/resource-server/src/test/java/org/eclipse/sw360/rest/resourceserver/restdocs/ProjectSpecTest.java

+1
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,7 @@ public void before() throws TException, IOException {
275275
project.setSpecialRisks3rdParty("Lorem Ipsum");
276276
project.setLicenseInfoHeaderText("Lorem Ipsum");
277277
project.setDeliveryChannels("Lorem Ipsum");
278+
project.setPackageIds(new HashSet<>(Arrays.asList("pkg-001", "pkg-002", "pkg-003")));
278279
project.setVendor(new Vendor());
279280
project.setRemarksAdditionalRequirements("Lorem Ipsum");
280281
ReleaseClearingStateSummary clearingCount = new ReleaseClearingStateSummary();

0 commit comments

Comments
 (0)