Search in sources :

Example 1 with DashboardActivityResource

use of com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource in project service-api by reportportal.

the class DashboardConverterTest method toActivityResource.

@Test
void toActivityResource() {
    final Dashboard dashboard = getDashboard();
    final DashboardActivityResource activityResource = DashboardConverter.TO_ACTIVITY_RESOURCE.apply(dashboard);
    assertEquals(activityResource.getId(), dashboard.getId());
    assertEquals(activityResource.getName(), dashboard.getName());
    assertEquals(activityResource.getDescription(), dashboard.getDescription());
    assertEquals(activityResource.getProjectId(), dashboard.getProject().getId());
    assertEquals(activityResource.isShared(), dashboard.isShared());
}
Also used : DashboardActivityResource(com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource) Dashboard(com.epam.ta.reportportal.entity.dashboard.Dashboard) Test(org.junit.jupiter.api.Test)

Example 2 with DashboardActivityResource

use of com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource in project service-api by reportportal.

the class UpdateDashboardHandlerImpl method updateDashboard.

@Override
public OperationCompletionRS updateDashboard(ReportPortalUser.ProjectDetails projectDetails, UpdateDashboardRQ rq, Long dashboardId, ReportPortalUser user) {
    Dashboard dashboard = getShareableDashboardHandler.getAdministrated(dashboardId, projectDetails);
    DashboardActivityResource before = TO_ACTIVITY_RESOURCE.apply(dashboard);
    if (!dashboard.getName().equals(rq.getName())) {
        BusinessRule.expect(dashboardRepository.existsByNameAndOwnerAndProjectId(rq.getName(), user.getUsername(), projectDetails.getProjectId()), BooleanUtils::isFalse).verify(ErrorType.RESOURCE_ALREADY_EXISTS, rq.getName());
    }
    dashboard = new DashboardBuilder(dashboard).addUpdateRq(rq).get();
    dashboardRepository.save(dashboard);
    if (before.isShared() != dashboard.isShared()) {
        aclHandler.updateAcl(dashboard, projectDetails.getProjectId(), dashboard.isShared());
        updateWidgetHandler.updateSharing(dashboard.getDashboardWidgets().stream().map(DashboardWidget::getWidget).collect(Collectors.toList()), projectDetails.getProjectId(), dashboard.isShared());
    }
    messageBus.publishActivity(new DashboardUpdatedEvent(before, TO_ACTIVITY_RESOURCE.apply(dashboard), user.getUserId(), user.getUsername()));
    return new OperationCompletionRS("Dashboard with ID = '" + dashboard.getId() + "' successfully updated");
}
Also used : DashboardWidget(com.epam.ta.reportportal.entity.dashboard.DashboardWidget) DashboardActivityResource(com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource) DashboardUpdatedEvent(com.epam.ta.reportportal.core.events.activity.DashboardUpdatedEvent) Dashboard(com.epam.ta.reportportal.entity.dashboard.Dashboard) DashboardBuilder(com.epam.ta.reportportal.ws.converter.builders.DashboardBuilder) OperationCompletionRS(com.epam.ta.reportportal.ws.model.OperationCompletionRS)

Example 3 with DashboardActivityResource

use of com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource in project service-api by reportportal.

the class DashboardEventsTest method getTestDashboard.

private static DashboardActivityResource getTestDashboard(String name, boolean shared, String description) {
    DashboardActivityResource dashboard = new DashboardActivityResource();
    dashboard.setShared(shared);
    dashboard.setDescription(description);
    dashboard.setProjectId(3L);
    dashboard.setName(name);
    dashboard.setId(2L);
    return dashboard;
}
Also used : DashboardActivityResource(com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource)

Aggregations

DashboardActivityResource (com.epam.ta.reportportal.ws.model.activity.DashboardActivityResource)3 Dashboard (com.epam.ta.reportportal.entity.dashboard.Dashboard)2 DashboardUpdatedEvent (com.epam.ta.reportportal.core.events.activity.DashboardUpdatedEvent)1 DashboardWidget (com.epam.ta.reportportal.entity.dashboard.DashboardWidget)1 DashboardBuilder (com.epam.ta.reportportal.ws.converter.builders.DashboardBuilder)1 OperationCompletionRS (com.epam.ta.reportportal.ws.model.OperationCompletionRS)1 Test (org.junit.jupiter.api.Test)1