You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by is...@apache.org on 2022/08/16 20:26:56 UTC
[airavata-data-lake] branch master updated: Bug fix in storage preference
This is an automated email from the ASF dual-hosted git repository.
isjarana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-data-lake.git
The following commit(s) were added to refs/heads/master by this push:
new 5c1f54f Bug fix in storage preference
new 0296a19 Merge pull request #135 from isururanawaka/mysql_conversion
5c1f54f is described below
commit 5c1f54f1d6ca351f5280191dff727ee84e4e237b
Author: Isuru Ranawaka <ir...@gmail.com>
AuthorDate: Tue Aug 16 16:26:28 2022 -0400
Bug fix in storage preference
---
.../handlers/StoragePreferenceServiceHandler.java | 36 +++++++++++++---------
1 file changed, 21 insertions(+), 15 deletions(-)
diff --git a/data-resource-management-service/drms-rdbms-impl/drms-server/src/main/java/org/apache/airavata/drms/api/handlers/StoragePreferenceServiceHandler.java b/data-resource-management-service/drms-rdbms-impl/drms-server/src/main/java/org/apache/airavata/drms/api/handlers/StoragePreferenceServiceHandler.java
index bc8ca0a..1f22631 100644
--- a/data-resource-management-service/drms-rdbms-impl/drms-server/src/main/java/org/apache/airavata/drms/api/handlers/StoragePreferenceServiceHandler.java
+++ b/data-resource-management-service/drms-rdbms-impl/drms-server/src/main/java/org/apache/airavata/drms/api/handlers/StoragePreferenceServiceHandler.java
@@ -113,7 +113,15 @@ public class StoragePreferenceServiceHandler extends StoragePreferenceServiceGrp
serializedMap.remove("storage");
String storageId = null;
+ if (resourceRepository.findById(storagePreferenceId).isPresent()) {
+ responseObserver.onError(Status.ALREADY_EXISTS.asRuntimeException());
+ return;
+ }
+
+
Resource resource = new Resource();
+ resource.setTenantId(callUser.getTenantId());
+ resource.setId(storagePreferenceId);
if (storage.getStorageCase().equals(AnyStoragePreference.StorageCase.S3_STORAGE_PREFERENCE)) {
storageId = storage.getS3StoragePreference().getStorage().getStorageId();
serializedMap.put(StoragePreferenceConstants.STORAGE_PREFERENCE_TYPE_LABEL,
@@ -143,26 +151,24 @@ public class StoragePreferenceServiceHandler extends StoragePreferenceServiceGrp
resource.setResourceType(StoragePreferenceConstants.SDA_STORAGE_PREFERENCE_TYPE_LABEL);
}
+ if (storageId == null || resourceRepository.findById(storageId).isEmpty()) {
- if (storageId != null) {
- CustosUtils.
- mergeStoragePreferenceEntity(custosClientProvider, callUser.getTenantId(),
- storagePreferenceId, storageId, callUser.getUsername());
- Optional<Resource> resourceOptional = resourceRepository.findById(storageId);
- Optional<Resource> storagePrefOptional = resourceRepository.findById(storagePreferenceId);
- if (resourceOptional.isPresent() && storagePrefOptional.isEmpty()) {
+ responseObserver.onError(Status.NOT_FOUND.withDescription("Storage not found").asRuntimeException());
+ return;
+ }
- Set<ResourceProperty> resourcePropertySet = new HashSet<>();
+ CustosUtils.
+ mergeStoragePreferenceEntity(custosClientProvider, callUser.getTenantId(),
+ storagePreferenceId, storageId, callUser.getUsername());
+ Set<ResourceProperty> resourcePropertySet = new HashSet<>();
- serializedMap.forEach((key, value) -> {
- resourcePropertySet.add(new ResourceProperty(key, value.toString(), resource));
- });
- }
- //TODO:Error
+ serializedMap.forEach((key, value) -> {
+ resourcePropertySet.add(new ResourceProperty(key, value.toString(), resource));
+ });
+ resource.setResourceProperty(resourcePropertySet);
+ resourceRepository.save(resource);
- resourceRepository.save(resource);
- }
StoragePreferenceCreateResponse response = StoragePreferenceCreateResponse
.newBuilder().setStoragePreference(storage).build();
responseObserver.onNext(response);