in data-catalog-api/server/simple-sharing/src/main/java/org/apache/airavata/datacatalog/api/sharing/SimpleSharingManagerImpl.java [134:156]
public void grantPermissionToGroup(GroupInfo groupInfo, DataProduct dataProduct, Permission permission,
UserInfo sharedByUser) throws SharingException {
SimpleGroupEntity groupEntity = resolveGroup(groupInfo);
DataProductEntity dataProductEntity = resolveDataProduct(dataProduct);
SimpleUserEntity sharedByUserEntity = sharedByUser != null
? resolveSimpleUser(sharedByUser, groupEntity.getSimpleTenant())
: null;
Optional<SimpleGroupSharingEntity> maybeSimpleGroupSharingEntity = simpleGroupSharingRepository
.findBySimpleGroup_SimpleGroupIdAndDataProduct_DataProductIdAndPermission(
groupEntity.getSimpleGroupId(),
dataProductEntity.getDataProductId(), permission);
if (maybeSimpleGroupSharingEntity.isEmpty()) {
SimpleGroupSharingEntity simpleGroupSharingEntity = new SimpleGroupSharingEntity();
simpleGroupSharingEntity.setDataProduct(dataProductEntity);
simpleGroupSharingEntity.setPermission(permission);
simpleGroupSharingEntity.setSimpleGroup(groupEntity);
simpleGroupSharingEntity.setSharedByUser(sharedByUserEntity);
simpleGroupSharingRepository.save(simpleGroupSharingEntity);
}
}