private Repository<Entity> addTargetEntityType(EntityType targetMetadata) { Repository<Entity> targetRepo = dataService.getMeta().createRepository(targetMetadata); permissionSystemService.giveUserWriteMetaPermissions(targetMetadata); return targetRepo; }
@GetMapping(GROUP_MEMBER_END_POINT) @ApiOperation(value = "Get group members", response = Collection.class) @ResponseBody public Collection<GroupMemberResponse> getMembers( @PathVariable(value = "groupName") String groupName) { checkGroupPermission(groupName, VIEW_MEMBERSHIP); Iterable<Role> roles = groupService.getGroup(groupName).getRoles(); return roleMembershipService .getMemberships(Lists.newArrayList(roles)) .stream() .map(GroupMemberResponse::fromEntity) .collect(Collectors.toList()); }
@PostMapping(GROUP_END_POINT) @ApiOperation(value = "Create a new group", response = ResponseEntity.class) @Transactional @ApiResponses({ @ApiResponse(code = 201, message = "New group created", response = ResponseEntity.class), @ApiResponse(code = 400, message = "Group name not available", response = ResponseEntity.class) }) public ResponseEntity createGroup(@RequestBody GroupCommand group) { GroupValue groupValue = groupValueFactory.createGroup(group.getName(), group.getLabel(), DEFAULT_ROLES); if (!groupService.isGroupNameAvailable(groupValue)) { throw new GroupNameNotAvailableException(group.getName()); } groupService.persist(groupValue); groupPermissionService.grantDefaultPermissions(groupValue); roleMembershipService.addUserToRole(getCurrentUsername(), getManagerRoleName(groupValue)); URI location = ServletUriComponentsBuilder.fromCurrentRequest() .path("/{name}") .buildAndExpand(groupValue.getName()) .toUri(); return ResponseEntity.created(location).build(); }
private SortaJobExecution createJobExecution( Repository<Entity> inputData, String jobName, String ontologyIri) { String resultEntityName = idGenerator.generateId(); SortaJobExecution sortaJobExecution = sortaJobExecutionFactory.create(); sortaJobExecution.setIdentifier(resultEntityName); sortaJobExecution.setName(jobName); User currentUser = userAccountService.getCurrentUser(); sortaJobExecution.setSourceEntityName(inputData.getName()); sortaJobExecution.setDeleteUrl(getSortaServiceMenuUrl() + "/delete/" + resultEntityName); sortaJobExecution.setResultEntityName(resultEntityName); sortaJobExecution.setThreshold(DEFAULT_THRESHOLD); sortaJobExecution.setOntologyIri(ontologyIri); RunAsSystemAspect.runAsSystem( () -> { createInputRepository(inputData); createEmptyResultRepository(jobName, resultEntityName, inputData.getEntityType()); }); EntityType resultEntityType = entityTypeFactory.create(resultEntityName); permissionSystemService.giveUserWriteMetaPermissions( asList(inputData.getEntityType(), resultEntityType)); return sortaJobExecution; }
permissionSystemService.giveUserWriteMetaPermissions(targetMetaData); runAsSystem(() -> dataService.getMeta().updateEntityType(externalRepository.getEntityType()));
permissionSystemService.giveUserWriteMetaPermissions(entityType);
permissionSystemService.giveUserWriteMetaPermissions(repository.getEntityType());