Search in sources :

Example 1 with MachineAccessForbidden

use of org.eclipse.che.api.workspace.server.token.MachineAccessForbidden in project che-server by eclipse-che.

the class WorkspaceService method asDtoWithLinksAndToken.

private WorkspaceDto asDtoWithLinksAndToken(WorkspaceImpl workspace) throws ServerException {
    WorkspaceDto workspaceDto = asDto(workspace).withLinks(linksGenerator.genLinks(workspace, getServiceContext()));
    RuntimeDto runtimeDto = workspaceDto.getRuntime();
    if (runtimeDto != null) {
        try {
            runtimeDto.setMachineToken(machineTokenProvider.getToken(workspace.getId()));
        } catch (MachineAccessForbidden e) {
            // set runtime to null since user doesn't have the required permissions
            workspaceDto.setRuntime(null);
        } catch (MachineTokenException e) {
            throw new ServerException(e.getMessage(), e);
        }
    }
    return workspaceDto;
}
Also used : ServerException(org.eclipse.che.api.core.ServerException) WorkspaceDto(org.eclipse.che.api.workspace.shared.dto.WorkspaceDto) MachineTokenException(org.eclipse.che.api.workspace.server.token.MachineTokenException) RuntimeDto(org.eclipse.che.api.workspace.shared.dto.RuntimeDto) MachineAccessForbidden(org.eclipse.che.api.workspace.server.token.MachineAccessForbidden)

Example 2 with MachineAccessForbidden

use of org.eclipse.che.api.workspace.server.token.MachineAccessForbidden in project devspaces-images by redhat-developer.

the class WorkspaceService method asDtoWithLinksAndToken.

private WorkspaceDto asDtoWithLinksAndToken(WorkspaceImpl workspace) throws ServerException {
    WorkspaceDto workspaceDto = asDto(workspace).withLinks(linksGenerator.genLinks(workspace, getServiceContext()));
    RuntimeDto runtimeDto = workspaceDto.getRuntime();
    if (runtimeDto != null) {
        try {
            runtimeDto.setMachineToken(machineTokenProvider.getToken(workspace.getId()));
        } catch (MachineAccessForbidden e) {
            // set runtime to null since user doesn't have the required permissions
            workspaceDto.setRuntime(null);
        } catch (MachineTokenException e) {
            throw new ServerException(e.getMessage(), e);
        }
    }
    return workspaceDto;
}
Also used : ServerException(org.eclipse.che.api.core.ServerException) WorkspaceDto(org.eclipse.che.api.workspace.shared.dto.WorkspaceDto) MachineTokenException(org.eclipse.che.api.workspace.server.token.MachineTokenException) RuntimeDto(org.eclipse.che.api.workspace.shared.dto.RuntimeDto) MachineAccessForbidden(org.eclipse.che.api.workspace.server.token.MachineAccessForbidden)

Aggregations

ServerException (org.eclipse.che.api.core.ServerException)2 MachineAccessForbidden (org.eclipse.che.api.workspace.server.token.MachineAccessForbidden)2 MachineTokenException (org.eclipse.che.api.workspace.server.token.MachineTokenException)2 RuntimeDto (org.eclipse.che.api.workspace.shared.dto.RuntimeDto)2 WorkspaceDto (org.eclipse.che.api.workspace.shared.dto.WorkspaceDto)2