From 4ff78238a694a5284b53f2e1a40e60c0ee9ba026 Mon Sep 17 00:00:00 2001
From: "Rustam Lotsmanenko (EPAM)" <rustam_lotsmanenko@epam.com>
Date: Fri, 24 Feb 2023 17:12:12 +0000
Subject: [PATCH] update core-lib, work with nullables from datastore

---
 provider/storage-gc/pom.xml                          |  3 +--
 .../jobs/LegalComplianceChangeServiceGcpImpl.java    |  4 +---
 .../storage/provider/gcp/web/cache/CacheConfig.java  | 12 ++++++------
 .../web/repository/OsmRecordsMetadataRepository.java |  6 +++++-
 4 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/provider/storage-gc/pom.xml b/provider/storage-gc/pom.xml
index 366b8e87b..6a1cbd5ad 100644
--- a/provider/storage-gc/pom.xml
+++ b/provider/storage-gc/pom.xml
@@ -101,9 +101,8 @@
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
             <artifactId>core-lib-gcp</artifactId>
-            <version>0.19.0-rc5</version>
+            <version>0.20.0-rc1</version>
         </dependency>
-
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
             <artifactId>os-core-common</artifactId>
diff --git a/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/messaging/jobs/LegalComplianceChangeServiceGcpImpl.java b/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/messaging/jobs/LegalComplianceChangeServiceGcpImpl.java
index 5ce1ec17b..9b6bfaa6b 100644
--- a/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/messaging/jobs/LegalComplianceChangeServiceGcpImpl.java
+++ b/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/messaging/jobs/LegalComplianceChangeServiceGcpImpl.java
@@ -19,7 +19,6 @@ package org.opengroup.osdu.storage.provider.gcp.messaging.jobs;
 
 import static java.util.Collections.singletonList;
 
-import com.google.cloud.datastore.Cursor;
 import java.util.AbstractMap;
 import java.util.HashMap;
 import java.util.List;
@@ -70,8 +69,7 @@ public class LegalComplianceChangeServiceGcpImpl implements ILegalComplianceChan
             if (complianceChangeInfo == null) {
                 continue;
             }
-
-            AbstractMap.SimpleEntry<Cursor, List<RecordMetadata>> results = this.recordsRepo
+            AbstractMap.SimpleEntry<String, List<RecordMetadata>> results = this.recordsRepo
                 .queryByLegal(lt.getChangedTagName(), complianceChangeInfo.getCurrent(), 500);
 
             while (results.getValue() != null && !results.getValue().isEmpty()) {
diff --git a/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/cache/CacheConfig.java b/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/cache/CacheConfig.java
index 3a313f94f..cd760f49e 100644
--- a/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/cache/CacheConfig.java
+++ b/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/cache/CacheConfig.java
@@ -31,11 +31,13 @@ import org.springframework.context.annotation.Configuration;
 @RequiredArgsConstructor
 public class CacheConfig {
 
+    private final RedisCacheBuilder<String, Groups> groupsRedisCacheBuilder;
+    private final RedisCacheBuilder<String, String> legalRedisCacheBuilder;
+    private final RedisCacheBuilder<String, Schema> schemaRedisCacheBuilder;
 
     @Bean
     public ICache<String, Groups> groupCache(GcpAppServiceConfig gcpAppServiceConfig) {
-        RedisCacheBuilder<String, Groups> cacheBuilder = new RedisCacheBuilder<>();
-        return cacheBuilder.buildRedisCache(
+        return groupsRedisCacheBuilder.buildRedisCache(
             gcpAppServiceConfig.getRedisGroupHost(),
             gcpAppServiceConfig.getRedisGroupPort(),
             gcpAppServiceConfig.getRedisGroupPassword(),
@@ -48,8 +50,7 @@ public class CacheConfig {
 
     @Bean("LegalTagCache")
     public ICache<String, String> legalTagCache(GcpAppServiceConfig gcpAppServiceConfig) {
-        RedisCacheBuilder<String, String> cacheBuilder = new RedisCacheBuilder<>();
-        RedisCache<String, String> storageCache = cacheBuilder.buildRedisCache(
+        RedisCache<String, String> storageCache = legalRedisCacheBuilder.buildRedisCache(
             gcpAppServiceConfig.getRedisStorageHost(),
             gcpAppServiceConfig.getRedisStoragePort(),
             gcpAppServiceConfig.getRedisStoragePassword(),
@@ -63,8 +64,7 @@ public class CacheConfig {
 
     @Bean
     public ICache<String, Schema> schemaCache(GcpAppServiceConfig gcpAppServiceConfig) {
-        RedisCacheBuilder<String, Schema> cacheBuilder = new RedisCacheBuilder<>();
-        return cacheBuilder.buildRedisCache(
+        return schemaRedisCacheBuilder.buildRedisCache(
             gcpAppServiceConfig.getRedisStorageHost(),
             gcpAppServiceConfig.getRedisStoragePort(),
             gcpAppServiceConfig.getRedisStoragePassword(),
diff --git a/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/repository/OsmRecordsMetadataRepository.java b/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/repository/OsmRecordsMetadataRepository.java
index 7b22a2099..bdee8dc5f 100644
--- a/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/repository/OsmRecordsMetadataRepository.java
+++ b/provider/storage-gc/src/main/java/org/opengroup/osdu/storage/provider/gcp/web/repository/OsmRecordsMetadataRepository.java
@@ -25,6 +25,7 @@ import java.util.AbstractMap;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Optional;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.java.Log;
@@ -85,7 +86,10 @@ public class OsmRecordsMetadataRepository implements IRecordsMetadataRepository<
     @Override
     public RecordMetadata get(String id, Optional<CollaborationContext> collaborationContext) {
         GetQuery<RecordMetadata> osmQuery = new GetQuery<>(RecordMetadata.class, getDestination(), eq("id", id));
-        return context.getResultsAsList(osmQuery).stream().findFirst().orElse(null);
+        return context.getResultsAsList(osmQuery).stream()
+            .filter(Objects::nonNull)
+            .findFirst()
+            .orElse(null);
     }
 
     @Override
-- 
GitLab