diff --git a/NOTICE b/NOTICE
index fbf0631015afe9a752e4b66b23f1b37bb1f57cd4..ea03d9bd02049e3c3ce2e9d6db464a2283e2de90 100644
--- a/NOTICE
+++ b/NOTICE
@@ -3,13 +3,6 @@ Generated by fossa-cli (https://github.com/fossas/fossa-cli).
 Formatted by fossa-with-cache (https://community.opengroup.org/divido/fossa-with-cache).
 This software includes the following software and licenses:
 
-========================================================================
-Android-Sdk
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Android SDK (from https://www.android.com/)
-
 ========================================================================
 Apache-1.1
 ========================================================================
@@ -18,10 +11,8 @@ The following software have components provided under the terms of this license:
 - AspectJ Weaver (from http://www.aspectj.org, https://www.eclipse.org/aspectj/)
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Plexus Common Utilities (from http://plexus.codehaus.org/plexus-utils, https://codehaus-plexus.github.io/plexus-utils/, https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils)
-- Plexus Interpolation API (from https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-interpolation)
 - Proton-J (from https://repo1.maven.org/maven2/org/apache/qpid/proton-j)
 
 ========================================================================
@@ -31,7 +22,6 @@ The following software have components provided under the terms of this license:
 
 - AMQP 1.0 JMS Spring Boot AutoConfiguration (from https://repo1.maven.org/maven2/org/amqphub/spring/amqp-10-jms-spring-boot-autoconfigure)
 - AMQP 1.0 JMS Spring Boot Starter (from https://repo1.maven.org/maven2/org/amqphub/spring/amqp-10-jms-spring-boot-starter)
-- API Common (from https://github.com/googleapis, https://github.com/googleapis/api-common-java, https://repo1.maven.org/maven2/com/google/api/api-common)
 - ASM based accessors helper used by json-smart (from https://urielch.github.io/)
 - AWS Java SDK for AWS KMS (from https://aws.amazon.com/sdkforjava)
 - AWS Java SDK for AWS STS (from https://aws.amazon.com/sdkforjava)
@@ -45,7 +35,6 @@ The following software have components provided under the terms of this license:
 - AWS Java SDK for the AWS Simple Systems Management (SSM) Service (from https://aws.amazon.com/sdkforjava)
 - AWS SDK for Java - Core (from https://aws.amazon.com/sdkforjava)
 - Adapter: RxJava (from https://github.com/square/retrofit)
-- Animal Sniffer Annotations (from https://repo1.maven.org/maven2/org/codehaus/mojo/animal-sniffer-annotations)
 - Apache Commons BeanUtils (from http://commons.apache.org/proper/commons-beanutils/, https://commons.apache.org/proper/commons-beanutils/, https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils)
 - Apache Commons Codec (from http://commons.apache.org/proper/commons-codec/, https://commons.apache.org/proper/commons-codec/)
 - Apache Commons Compress (from http://commons.apache.org/compress/, http://commons.apache.org/proper/commons-compress/, https://commons.apache.org/proper/commons-compress/)
@@ -55,7 +44,6 @@ The following software have components provided under the terms of this license:
 - Apache Commons Text (from http://commons.apache.org/proper/commons-text, http://commons.apache.org/proper/commons-text/, https://commons.apache.org/proper/commons-text)
 - Apache Commons Validator (from http://commons.apache.org/proper/commons-validator/, http://jakarta.apache.org/commons/${pom.artifactId.substring(8)}/, https://repo1.maven.org/maven2/commons-validator/commons-validator)
 - Apache Groovy (from http://groovy-lang.org, http://groovy.codehaus.org/, https://groovy-lang.org)
-- Apache HTTP transport v2 for the Google HTTP Client Library for Java. (from https://repo1.maven.org/maven2/com/google/http-client/google-http-client-apache-v2)
 - Apache HttpClient (from http://hc.apache.org/httpcomponents-client, http://hc.apache.org/httpcomponents-client-ga)
 - Apache HttpClient Cache (from http://hc.apache.org/httpcomponents-client, http://hc.apache.org/httpcomponents-client-ga)
 - Apache HttpCore (from http://hc.apache.org/httpcomponents-core-ga, http://hc.apache.org/httpcomponents-core-ga/, http://hc.apache.org/httpcomponents-core/)
@@ -64,12 +52,9 @@ The following software have components provided under the terms of this license:
 - Apache Log4j JUL Adapter (from https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-jul)
 - Apache Log4j SLF4J Binding (from https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-slf4j-impl)
 - Apache Log4j to SLF4J Adapter (from https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-to-slf4j)
-- Apache Maven Shared Utils (from https://repo1.maven.org/maven2/org/apache/maven/shared/maven-shared-utils)
 - AssertJ Core (from https://assertj.github.io/doc/#assertj-core)
 - Asynchronous Http Client (from https://repo1.maven.org/maven2/org/asynchttpclient/async-http-client)
 - Asynchronous Http Client Netty Utils (from https://repo1.maven.org/maven2/org/asynchttpclient/async-http-client-netty-utils)
-- AutoValue Annotations (from https://github.com/google/auto/tree/main/value, https://github.com/google/auto/tree/master/value, https://repo1.maven.org/maven2/com/google/auto/value/auto-value-annotations)
-- AutoValue Processor (from https://github.com/google/auto/tree/main/value, https://github.com/google/auto/tree/master/value)
 - Awaitility (from http://awaitility.org)
 - BSON (from http://bsonspec.org, https://bsonspec.org)
 - BSON Record Codec (from <https://www.mongodb.com/>, https://www.mongodb.com/)
@@ -77,8 +62,6 @@ The following software have components provided under the terms of this license:
 - Byte Buddy (without dependencies) (from https://repo1.maven.org/maven2/net/bytebuddy/byte-buddy)
 - Byte Buddy Java agent (from https://repo1.maven.org/maven2/net/bytebuddy/byte-buddy-agent)
 - ClassMate (from http://github.com/cowtowncoder/java-classmate)
-- Cloud Key Management Service (KMS) API v1-rev20240502-2.0.0 (from https://repo1.maven.org/maven2/com/google/apis/google-api-services-cloudkms)
-- Cloud Storage JSON API v1-rev20240319-2.0.0 (from https://repo1.maven.org/maven2/com/google/apis/google-api-services-storage)
 - Collections (from https://repo1.maven.org/maven2/commons-collections/commons-collections)
 - Commons Digester (from http://commons.apache.org/digester/)
 - Commons Lang (from http://commons.apache.org/lang/)
@@ -92,30 +75,13 @@ The following software have components provided under the terms of this license:
 - Flapdoodle Java8 Stuff (from http://github.com/flapdoodle-oss/de.flapdoodle.java8)
 - Flapdoodle OS Detection Library (from http://github.com/flapdoodle-oss/de.flapdoodle.os, http://github.com/flapdoodle-oss/de.flapdoodle.os-api)
 - Flapdoodle Reverse (from http://github.com/flapdoodle-oss/de.flapdoodle.reverse)
-- GAX (Google Api eXtensions) for Java (Core) (from https://github.com/googleapis, https://github.com/googleapis/gax-java, https://repo1.maven.org/maven2/com/google/api/gax)
-- GAX (Google Api eXtensions) for Java (HTTP JSON) (from <https://repo1.maven.org/maven2/com/google/api/gax-httpjson>, https://repo1.maven.org/maven2/com/google/api/gax-httpjson)
-- GAX (Google Api eXtensions) for Java (gRPC) (from <https://repo1.maven.org/maven2/com/google/api/gax-grpc>, https://repo1.maven.org/maven2/com/google/api/gax-grpc)
-- GSON extensions to the Google HTTP Client Library for Java. (from https://repo1.maven.org/maven2/com/google/http-client/google-http-client-gson)
-- Google APIs Client Library for Java (from https://repo1.maven.org/maven2/com/google/api-client/google-api-client)
-- Google App Engine extensions to the Google HTTP Client Library for Java. (from https://repo1.maven.org/maven2/com/google/http-client/google-http-client-appengine)
-- Google Cloud Core (from https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-core, https://github.com/googleapis/java-core, https://repo1.maven.org/maven2/com/google/cloud/google-cloud-core)
-- Google Cloud Core HTTP (from https://github.com/GoogleCloudPlatform/google-cloud-java/tree/master/google-cloud-core-http, https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-core-http, https://github.com/googleapis/java-core, https://repo1.maven.org/maven2/com/google/cloud/google-cloud-core-http)
-- Google Cloud Core gRPC (from https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-core-grpc, https://github.com/googleapis/java-core, https://repo1.maven.org/maven2/com/google/cloud/google-cloud-core-grpc)
-- Google Cloud Datastore (from https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-datastore, https://github.com/googleapis/java-datastore)
-- Google Cloud Logging (from https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-logging, https://github.com/googleapis/java-logging)
-- Google Cloud Pub/Sub (from https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-pubsub, https://github.com/googleapis/java-pubsub)
-- Google Cloud Storage (from https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-clients/google-cloud-storage, https://github.com/googleapis/java-storage)
-- Google Guice - Core Library (from https://repo1.maven.org/maven2/com/google/inject/guice)
 - Google HTTP Client Library for Java (from https://repo1.maven.org/maven2/com/google/http-client/google-http-client)
-- Google OAuth Client Library for Java (from https://repo1.maven.org/maven2/com/google/oauth-client/google-oauth-client)
 - Gson (from http://code.google.com/p/google-gson/, https://repo1.maven.org/maven2/com/google/code/gson/gson)
 - Guava InternalFutureFailureAccess and InternalFutures (from https://repo1.maven.org/maven2/com/google/guava/failureaccess)
 - Guava ListenableFuture only (from https://repo1.maven.org/maven2/com/google/guava/listenablefuture)
 - Guava: Google Core Libraries for Java (from http://code.google.com/p/guava-libraries, https://github.com/google/guava, https://repo1.maven.org/maven2/com/google/guava/guava)
 - HTTP functionality for the Reactor Netty library (from https://github.com/reactor/reactor-netty)
 - Hibernate Validator (from https://repo1.maven.org/maven2/org/hibernate/hibernate-validator, https://repo1.maven.org/maven2/org/hibernate/validator/hibernate-validator)
-- HikariCP (from https://github.com/brettwooldridge/HikariCP)
-- Hop (from https://github.com/rabbitmq/hop, https://www.rabbitmq.com)
 - IBM COS Java SDK for Amazon S3 (from https://github.com/ibm/ibm-cos-sdk-java)
 - IBM COS Java SDK for COS KMS (from https://github.com/ibm/ibm-cos-sdk-java)
 - IBM COS SDK For Java (from https://github.com/ibm/ibm-cos-sdk-java)
@@ -132,9 +98,6 @@ The following software have components provided under the terms of this license:
 - JSON library from Android SDK (from http://developer.android.com/sdk)
 - JSONassert (from http://github.com/skyscreamer/yoga, https://github.com/skyscreamer/JSONassert)
 - JSR107 API and SPI (from https://github.com/jsr107/jsr107spec)
-- JSpecify annotations (from http://jspecify.org/)
-- Jackson 2 extensions to the Google APIs Client Library for Java (from https://repo1.maven.org/maven2/com/google/api-client/google-api-client-jackson2)
-- Jackson 2 extensions to the Google HTTP Client Library for Java. (from https://repo1.maven.org/maven2/com/google/http-client/google-http-client-jackson2)
 - Jackson dataformat: CBOR (from http://github.com/FasterXML/jackson-dataformats-binary)
 - Jackson datatype: JSR310 (from http://wiki.fasterxml.com/JacksonModuleJSR310, https://repo1.maven.org/maven2/com/fasterxml/jackson/datatype/jackson-datatype-jsr310)
 - Jackson datatype: Joda (from http://wiki.fasterxml.com/JacksonModuleJoda, https://github.com/FasterXML/jackson-datatype-joda)
@@ -161,25 +124,9 @@ The following software have components provided under the terms of this license:
 - Kotlin Stdlib Common (from https://kotlinlang.org/)
 - Kotlin Stdlib Jdk7 (from <https://kotlinlang.org/>, https://kotlinlang.org/)
 - Kotlin Stdlib Jdk8 (from <https://kotlinlang.org/>, https://kotlinlang.org/)
-- Maven 3 Plugin API (from https://maven.apache.org/ref/4.0.0-beta-3/maven-plugin-api/)
-- Maven Artifact (from https://maven.apache.org/ref/4.0.0-beta-3/maven-artifact/, https://repo1.maven.org/maven2/org/apache/maven/maven-artifact)
-- Maven Artifact Resolver API (from https://repo1.maven.org/maven2/org/apache/maven/resolver/maven-resolver-api)
-- Maven Artifact Resolver Implementation (from https://repo1.maven.org/maven2/org/apache/maven/resolver/maven-resolver-impl)
-- Maven Artifact Resolver Named Locks (from https://repo1.maven.org/maven2/org/apache/maven/resolver/maven-resolver-named-locks)
-- Maven Artifact Resolver Provider (from https://maven.apache.org/ref/4.0.0-beta-3/maven-resolver-provider/)
-- Maven Artifact Resolver SPI (from https://repo1.maven.org/maven2/org/apache/maven/resolver/maven-resolver-spi)
-- Maven Artifact Resolver Utilities (from https://repo1.maven.org/maven2/org/apache/maven/resolver/maven-resolver-util)
-- Maven Builder Support (from https://maven.apache.org/ref/4.0.0-beta-3/maven-builder-support/)
-- Maven Core (from https://maven.apache.org/ref/4.0.0-beta-3/maven-core/, https://repo1.maven.org/maven2/org/apache/maven/maven-core)
-- Maven Model (from https://maven.apache.org/ref/4.0.0-beta-3/maven-model/, https://repo1.maven.org/maven2/org/apache/maven/maven-model)
-- Maven Model Builder (from https://maven.apache.org/ref/4.0.0-beta-3/maven-model-builder/)
-- Maven Repository Metadata Model (from https://maven.apache.org/ref/4.0.0-beta-3/maven-repository-metadata/, https://repo1.maven.org/maven2/org/apache/maven/maven-repository-metadata)
-- Maven Settings (from https://maven.apache.org/ref/4.0.0-beta-3/maven-settings/, https://repo1.maven.org/maven2/org/apache/maven/maven-settings)
-- Maven Settings Builder (from https://maven.apache.org/ref/4.0.0-beta-3/maven-settings-builder/)
 - Metrics Core (from https://repo1.maven.org/maven2/io/dropwizard/metrics/metrics-core)
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Azure Java Core Library (from https://github.com/Azure/azure-sdk-for-java)
 - Microsoft Azure Netty HTTP Client Library (from https://github.com/Azure/azure-sdk-for-java)
@@ -188,7 +135,6 @@ The following software have components provided under the terms of this license:
 - Mockito (from http://mockito.org, https://github.com/mockito/mockito)
 - MongoDB Driver (from https://www.mongodb.com/)
 - MongoDB Java Driver (from http://mongodb.org/, http://www.mongodb.org, https://www.mongodb.com/)
-- NanoHttpd-Core (from https://repo1.maven.org/maven2/org/nanohttpd/nanohttpd)
 - Netty Reactive Streams Implementation (from https://repo1.maven.org/maven2/com/typesafe/netty/netty-reactive-streams)
 - Netty/Buffer (from https://repo1.maven.org/maven2/io/netty/netty-buffer)
 - Netty/Codec (from https://repo1.maven.org/maven2/io/netty/netty-codec)
@@ -218,24 +164,15 @@ The following software have components provided under the terms of this license:
 - OkHttp Logging Interceptor (from https://github.com/square/okhttp, https://repo1.maven.org/maven2/com/squareup/okhttp3/logging-interceptor, https://square.github.io/okhttp/)
 - OkHttp URLConnection (from https://repo1.maven.org/maven2/com/squareup/okhttp3/okhttp-urlconnection, https://square.github.io/okhttp/)
 - Okio (from https://github.com/square/okio/, https://repo1.maven.org/maven2/com/squareup/okio/okio)
-- OpenCensus (from https://github.com/census-instrumentation/opencensus-java, https://github.com/census-instrumentation/opencensus-proto)
-- Plexus :: Component Annotations (deprecated) (from https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-component-annotations)
-- Plexus Cipher: encryption/decryption Component (from https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-cipher)
-- Plexus Classworlds (from https://codehaus-plexus.github.io/plexus-classworlds/)
+- OpenCensus (from https://github.com/census-instrumentation/opencensus-java)
 - Plexus Common Utilities (from http://plexus.codehaus.org/plexus-utils, https://codehaus-plexus.github.io/plexus-utils/, https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils)
-- Plexus Interpolation API (from https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-interpolation)
-- Plexus Security Dispatcher Component (from https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-sec-dispatcher)
-- PostgreSQL JDBC Driver
 - PowerMock (from http://www.powermock.org, https://repo1.maven.org/maven2/org/powermock/powermock-api-mockito)
-- Protocol Buffer extensions to the Google HTTP Client Library for Java. (from https://repo1.maven.org/maven2/com/google/http-client/google-http-client-protobuf)
 - Proton-J (from https://repo1.maven.org/maven2/org/apache/qpid/proton-j)
 - QpidJMS Client (from https://repo1.maven.org/maven2/org/apache/qpid/qpid-jms-client)
-- RabbitMQ Java Client (from http://www.rabbitmq.com, https://www.rabbitmq.com)
 - Redisson (from http://redisson.org)
 - Retrofit (from https://github.com/square/retrofit, https://repo1.maven.org/maven2/com/squareup/retrofit2/retrofit)
 - RxJava (from https://github.com/ReactiveX/RxJava)
 - Servlet API (from https://repo1.maven.org/maven2/org/mortbay/jetty/servlet-api)
-- Simple XML (safe) (from https://github.com/dweiss/simplexml)
 - SnakeYAML (from http://code.google.com/p/snakeyaml/, http://www.snakeyaml.org, https://bitbucket.org/snakeyaml/snakeyaml)
 - Spring AOP (from http://www.springframework.org, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-aop)
 - Spring Beans (from http://www.springframework.org, https://github.com/SpringSource/spring-framework, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-beans)
@@ -245,7 +182,6 @@ The following software have components provided under the terms of this license:
 - Spring Boot Actuator AutoConfigure (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-actuator-autoconfigure, https://spring.io/projects/spring-boot)
 - Spring Boot Actuator Starter (from http://projects.spring.io/spring-boot/, https://spring.io/projects/spring-boot)
 - Spring Boot AutoConfigure (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-autoconfigure, https://spring.io/projects/spring-boot)
-- Spring Boot JDBC Starter (from http://projects.spring.io/spring-boot/, https://spring.io/projects/spring-boot)
 - Spring Boot Json Starter (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-json, https://spring.io/projects/spring-boot)
 - Spring Boot Log4j 2 Starter (from http://projects.spring.io/spring-boot/, https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-log4j2, https://spring.io/projects/spring-boot)
 - Spring Boot Logging Starter (from http://projects.spring.io/spring-boot/, https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-logging, https://spring.io/projects/spring-boot)
@@ -263,7 +199,6 @@ The following software have components provided under the terms of this license:
 - Spring Data Core (from https://spring.io/projects/spring-data)
 - Spring Data MongoDB - Core (from https://repo1.maven.org/maven2/org/springframework/data/spring-data-mongodb)
 - Spring Expression Language (SpEL) (from https://github.com/SpringSource/spring-framework, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-expression)
-- Spring JDBC (from https://github.com/SpringSource/spring-framework, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-jdbc)
 - Spring JMS (from http://www.springframework.org, https://github.com/SpringSource/spring-framework, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-jms)
 - Spring Messaging (from https://github.com/spring-projects/spring-framework)
 - Spring Security - Core (from http://spring.io/spring-security, https://repo1.maven.org/maven2/org/springframework/security/spring-security-core, https://spring.io/projects/spring-security, https://spring.io/spring-security)
@@ -277,25 +212,10 @@ The following software have components provided under the terms of this license:
 - Vavr (from http://vavr.io, https://www.vavr.io)
 - Vavr Match (from http://vavr.io)
 - Woodstox (from https://github.com/FasterXML/woodstox)
-- datastore-v1-proto-client (from https://repo1.maven.org/maven2/com/google/cloud/datastore/datastore-v1-proto-client)
 - error-prone annotations (from https://repo1.maven.org/maven2/com/google/errorprone/error_prone_annotations)
-- gapic-google-cloud-storage-v2 (from https://repo1.maven.org/maven2/com/google/api/grpc/gapic-google-cloud-storage-v2)
-- grpc-google-cloud-datastore-admin-v1 (from https://github.com/googleapis/java-datastore/grpc-google-cloud-datastore-admin-v1)
-- grpc-google-cloud-storage-v2 (from https://repo1.maven.org/maven2/com/google/api/grpc/grpc-google-cloud-storage-v2)
-- io.grpc:grpc-alts (from https://github.com/grpc/grpc-java)
 - io.grpc:grpc-api (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-auth (from https://github.com/grpc/grpc-java)
 - io.grpc:grpc-context (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-core (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-googleapis (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-grpclb (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-netty-shaded (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-protobuf (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-protobuf-lite (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-rls (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-services (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-stub (from https://github.com/grpc/grpc-java)
-- io.grpc:grpc-xds (from https://github.com/grpc/grpc-java)
+- ion-java (from https://github.com/amzn/ion-java/, https://github.com/amznlabs/ion-java/)
 - jackson-databind (from http://github.com/FasterXML/jackson, http://wiki.fasterxml.com/JacksonHome, https://github.com/FasterXML/jackson)
 - java-cloudant (from https://cloudant.com)
 - javatuples (from http://www.javatuples.org)
@@ -309,22 +229,11 @@ The following software have components provided under the terms of this license:
 - micrometer-jakarta9 (from https://github.com/micrometer-metrics/micrometer)
 - micrometer-observation (from https://github.com/micrometer-metrics/micrometer)
 - micrometer-registry-azure-monitor (from https://github.com/micrometer-metrics/micrometer)
-- minio (from https://github.com/minio/minio-java)
 - org.apiguardian:apiguardian-api (from https://github.com/apiguardian-team/apiguardian)
-- org.conscrypt:conscrypt-openjdk-uber (from https://conscrypt.org/)
 - org.opentest4j:opentest4j (from https://github.com/ota4j-team/opentest4j)
 - org.xmlunit:xmlunit-core (from http://www.xmlunit.org/, https://www.xmlunit.org/)
-- perfmark:perfmark-api (from https://github.com/perfmark/perfmark)
-- proto-google-cloud-datastore-admin-v1 (from https://github.com/googleapis/java-datastore/proto-google-cloud-datastore-admin-v1)
-- proto-google-cloud-datastore-v1 (from https://github.com/googleapis/googleapis, https://github.com/googleapis/java-datastore/proto-google-cloud-datastore-v1)
-- proto-google-cloud-logging-v2 (from https://github.com/googleapis/java-logging/proto-google-cloud-logging-v2, https://repo1.maven.org/maven2/com/google/api/grpc/proto-google-cloud-logging-v2)
-- proto-google-cloud-pubsub-v1 (from https://github.com/googleapis/googleapis, https://github.com/googleapis/java-pubsub/proto-google-cloud-pubsub-v1)
-- proto-google-cloud-storage-v2 (from https://repo1.maven.org/maven2/com/google/api/grpc/proto-google-cloud-storage-v2)
 - proto-google-common-protos (from https://github.com/googleapis/api-client-staging, https://github.com/googleapis/googleapis, https://github.com/googleapis/java-iam/proto-google-common-protos, https://github.com/googleapis/sdk-platform-java)
-- proto-google-iam-v1 (from https://github.com/googleapis/googleapis, https://github.com/googleapis/java-iam/proto-google-iam-v1, https://github.com/googleapis/sdk-platform-java)
 - resilience4j (from https://github.com/resilience4j/resilience4j, https://resilience4j.readme.io, ttps://resilience4j.readme.io)
-- snappy-java (from https://github.com/xerial/snappy-java)
-- software.amazon.ion:ion-java (from https://github.com/amzn/ion-java/)
 - spring-boot-loader (from https://spring.io/projects/spring-boot)
 - spring-security-oauth2-client (from http://spring.io/spring-security, https://spring.io/projects/spring-security, https://spring.io/spring-security)
 - spring-security-oauth2-core (from http://spring.io/spring-security, https://spring.io/projects/spring-security, https://spring.io/spring-security)
@@ -357,7 +266,6 @@ The following software have components provided under the terms of this license:
 - Jodd Core (from http://jodd.org)
 - LatencyUtils (from http://latencyutils.github.io/LatencyUtils/)
 - Plexus Common Utilities (from http://plexus.codehaus.org/plexus-utils, https://codehaus-plexus.github.io/plexus-utils/, https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils)
-- PostgreSQL JDBC Driver
 - Stax2 API (from http://github.com/FasterXML/stax2-api)
 
 ========================================================================
@@ -365,18 +273,10 @@ BSD-3-Clause
 ========================================================================
 The following software have components provided under the terms of this license:
 
-- API Common (from https://github.com/googleapis, https://github.com/googleapis/api-common-java, https://repo1.maven.org/maven2/com/google/api/api-common)
 - ASM Core (from http://asm.ow2.io/, http://asm.ow2.org/)
 - Apache Groovy (from http://groovy-lang.org, http://groovy.codehaus.org/, https://groovy-lang.org)
 - AspectJ Weaver (from http://www.aspectj.org, https://www.eclipse.org/aspectj/)
 - FindBugs-jsr305 (from http://findbugs.sourceforge.net/)
-- GAX (Google Api eXtensions) for Java (Core) (from https://github.com/googleapis, https://github.com/googleapis/gax-java, https://repo1.maven.org/maven2/com/google/api/gax)
-- GAX (Google Api eXtensions) for Java (HTTP JSON) (from <https://repo1.maven.org/maven2/com/google/api/gax-httpjson>, https://repo1.maven.org/maven2/com/google/api/gax-httpjson)
-- GAX (Google Api eXtensions) for Java (gRPC) (from <https://repo1.maven.org/maven2/com/google/api/gax-grpc>, https://repo1.maven.org/maven2/com/google/api/gax-grpc)
-- Google APIs Client Library for Java (from https://repo1.maven.org/maven2/com/google/api-client/google-api-client)
-- Google Auth Library for Java - Credentials (from https://repo1.maven.org/maven2/com/google/auth/google-auth-library-credentials)
-- Google Auth Library for Java - OAuth2 HTTP (from https://repo1.maven.org/maven2/com/google/auth/google-auth-library-oauth2-http)
-- Google OAuth Client Library for Java (from https://repo1.maven.org/maven2/com/google/oauth-client/google-oauth-client)
 - Hamcrest (from http://hamcrest.org/JavaHamcrest/)
 - Hamcrest Core (from http://hamcrest.org/, http://hamcrest.org/JavaHamcrest/, https://repo1.maven.org/maven2/org/hamcrest/hamcrest-core)
 - Jackson module: Afterburner (from http://wiki.fasterxml.com/JacksonHome, https://github.com/FasterXML/jackson-modules-base)
@@ -386,19 +286,12 @@ The following software have components provided under the terms of this license:
 - Jakarta XML Binding API (from https://repo1.maven.org/maven2/jakarta/xml/bind/jakarta.xml.bind-api, https://repo1.maven.org/maven2/org/jboss/spec/javax/xml/bind/jboss-jaxb-api_2.3_spec)
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
-- NanoHttpd-Core (from https://repo1.maven.org/maven2/org/nanohttpd/nanohttpd)
 - Netty/Codec/HTTP (from https://repo1.maven.org/maven2/io/netty/netty-codec-http)
 - Plexus Common Utilities (from http://plexus.codehaus.org/plexus-utils, https://codehaus-plexus.github.io/plexus-utils/, https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils)
-- PostgreSQL JDBC Driver
 - Protocol Buffer Java API (from http://code.google.com/p/protobuf, https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java)
-- Protocol Buffers [Util] (from https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java-util)
-- RE2/J (from http://github.com/google/re2j)
 - Redisson (from http://redisson.org)
 - Spring Core (from http://www.springframework.org, https://github.com/spring-projects/spring-framework, https://repo1.maven.org/maven2/org/springframework/spring-core)
-- ThreeTen backport (from https://github.com/ThreeTen/threetenbp, https://www.threeten.org/threetenbp)
-- org.eclipse.sisu.inject (from https://repo1.maven.org/maven2/org/eclipse/sisu/org.eclipse.sisu.inject)
 
 ========================================================================
 Beerware
@@ -407,7 +300,6 @@ The following software have components provided under the terms of this license:
 
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
 
 ========================================================================
@@ -415,7 +307,6 @@ BouncyCastle
 ========================================================================
 The following software have components provided under the terms of this license:
 
-- Bouncy Castle Provider (from http://www.bouncycastle.org/java.html, https://www.bouncycastle.org/java.html)
 - Microsoft Azure client library for Identity (from https://github.com/Azure/azure-sdk-for-java)
 
 ========================================================================
@@ -433,7 +324,6 @@ The following software have components provided under the terms of this license:
 
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
 
 ========================================================================
@@ -446,7 +336,6 @@ The following software have components provided under the terms of this license:
 - Hibernate Validator (from https://repo1.maven.org/maven2/org/hibernate/hibernate-validator, https://repo1.maven.org/maven2/org/hibernate/validator/hibernate-validator)
 - LatencyUtils (from http://latencyutils.github.io/LatencyUtils/)
 - Netty/Common (from https://repo1.maven.org/maven2/io/netty/netty-common)
-- RabbitMQ Java Client (from http://www.rabbitmq.com, https://www.rabbitmq.com)
 - reactive-streams (from http://www.reactive-streams.org/)
 
 ========================================================================
@@ -491,27 +380,13 @@ The following software have components provided under the terms of this license:
 
 - JGraphT - Core (from https://repo1.maven.org/maven2/org/jgrapht/jgrapht-core)
 - Jetty :: Utilities (from http://jetty.mortbay.org, http://www.eclipse.org/jetty, https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util, https://repo1.maven.org/maven2/org/mortbay/jetty/jetty-util)
-- Jetty Server (from http://jetty.mortbay.org, https://repo1.maven.org/maven2/org/mortbay/jetty/jetty)
 - Logback Contrib :: JSON :: Classic (from https://repo1.maven.org/maven2/ch/qos/logback/contrib/logback-json-classic)
 - Logback Contrib :: JSON :: Core (from https://repo1.maven.org/maven2/ch/qos/logback/contrib/logback-json-core)
 - Logback Contrib :: Jackson (from https://repo1.maven.org/maven2/ch/qos/logback/contrib/logback-jackson)
 - Logback Core Module (from http://logback.qos.ch, https://repo1.maven.org/maven2/ch/qos/logback/logback-core)
-- Maven 3 Plugin API (from https://maven.apache.org/ref/4.0.0-beta-3/maven-plugin-api/)
-- Maven Artifact (from https://maven.apache.org/ref/4.0.0-beta-3/maven-artifact/, https://repo1.maven.org/maven2/org/apache/maven/maven-artifact)
-- Maven Artifact Resolver Provider (from https://maven.apache.org/ref/4.0.0-beta-3/maven-resolver-provider/)
-- Maven Builder Support (from https://maven.apache.org/ref/4.0.0-beta-3/maven-builder-support/)
-- Maven Core (from https://maven.apache.org/ref/4.0.0-beta-3/maven-core/, https://repo1.maven.org/maven2/org/apache/maven/maven-core)
-- Maven Model (from https://maven.apache.org/ref/4.0.0-beta-3/maven-model/, https://repo1.maven.org/maven2/org/apache/maven/maven-model)
-- Maven Model Builder (from https://maven.apache.org/ref/4.0.0-beta-3/maven-model-builder/)
-- Maven Repository Metadata Model (from https://maven.apache.org/ref/4.0.0-beta-3/maven-repository-metadata/, https://repo1.maven.org/maven2/org/apache/maven/maven-repository-metadata)
-- Maven Settings (from https://maven.apache.org/ref/4.0.0-beta-3/maven-settings/, https://repo1.maven.org/maven2/org/apache/maven/maven-settings)
-- Maven Settings Builder (from https://maven.apache.org/ref/4.0.0-beta-3/maven-settings-builder/)
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
-- org.eclipse.sisu.inject (from https://repo1.maven.org/maven2/org/eclipse/sisu/org.eclipse.sisu.inject)
-- org.eclipse.sisu.plexus (from https://repo1.maven.org/maven2/org/eclipse/sisu/org.eclipse.sisu.plexus)
 
 ========================================================================
 EPL-2.0
@@ -538,7 +413,6 @@ GPL-2.0-only
 ========================================================================
 The following software have components provided under the terms of this license:
 
-- javax.annotation API (from http://jcp.org/en/jsr/detail?id=250)
 - tomcat-embed-core (from http://tomcat.apache.org/)
 
 ========================================================================
@@ -565,20 +439,12 @@ The following software have components provided under the terms of this license:
 - Java Native Access Platform (from https://github.com/java-native-access/jna)
 - Spring Security - Core (from http://spring.io/spring-security, https://repo1.maven.org/maven2/org/springframework/security/spring-security-core, https://spring.io/projects/spring-security, https://spring.io/spring-security)
 
-========================================================================
-Info-ZIP
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Apache Commons Compress (from http://commons.apache.org/compress/, http://commons.apache.org/proper/commons-compress/, https://commons.apache.org/proper/commons-compress/)
-
 ========================================================================
 LGPL-2.1-only
 ========================================================================
 The following software have components provided under the terms of this license:
 
 - JGraphT - Core (from https://repo1.maven.org/maven2/org/jgrapht/jgrapht-core)
-- Java Native Access (from https://github.com/java-native-access/jna, https://github.com/twall/jna)
 - Java Native Access Platform (from https://github.com/java-native-access/jna)
 - Javassist (from http://www.javassist.org/, https://www.javassist.org/)
 - Logback Classic Module (from http://logback.qos.ch, https://repo1.maven.org/maven2/ch/qos/logback/logback-classic)
@@ -588,7 +454,6 @@ The following software have components provided under the terms of this license:
 - Logback Core Module (from http://logback.qos.ch, https://repo1.maven.org/maven2/ch/qos/logback/logback-core)
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
 
 ========================================================================
@@ -605,12 +470,11 @@ MIT
 ========================================================================
 The following software have components provided under the terms of this license:
 
-- Animal Sniffer Annotations (from https://repo1.maven.org/maven2/org/codehaus/mojo/animal-sniffer-annotations)
 - Azure Java Client Authentication Library for AutoRest (from https://github.com/Azure/autorest-clientruntime-for-java)
 - Azure Java Client Runtime for ARM (from https://github.com/Azure/autorest-clientruntime-for-java)
 - Azure Java Client Runtime for AutoRest (from https://github.com/Azure/autorest-clientruntime-for-java)
 - Checker Qual (from https://checkerframework.org)
-- Google Guice - Core Library (from https://repo1.maven.org/maven2/com/google/inject/guice)
+- Extensions on Apache Proton-J library (from https://github.com/Azure/qpid-proton-j-extensions)
 - JGraphT - Core (from https://repo1.maven.org/maven2/org/jgrapht/jgrapht-core)
 - JUL to SLF4J bridge (from http://www.slf4j.org)
 - Jackson-core (from http://wiki.fasterxml.com/JacksonHome, https://github.com/FasterXML/jackson-core)
@@ -618,7 +482,6 @@ The following software have components provided under the terms of this license:
 - Java JWT (from http://www.jwt.io, https://github.com/auth0/java-jwt)
 - Microsoft Application Insights Java Agent (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Java SDK Spring Boot starter (from https://github.com/Microsoft/ApplicationInsights-Java)
-- Microsoft Application Insights Java SDK Web Module (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Application Insights Log4j 2 Appender (from https://github.com/Microsoft/ApplicationInsights-Java)
 - Microsoft Azure Java Core AMQP Library (from https://github.com/Azure/azure-sdk-for-java)
 - Microsoft Azure Java Core Library (from https://github.com/Azure/azure-sdk-for-java)
@@ -640,7 +503,6 @@ The following software have components provided under the terms of this license:
 - Mockito (from http://mockito.org, https://github.com/mockito/mockito)
 - Netty/Codec/HTTP (from https://repo1.maven.org/maven2/io/netty/netty-codec-http)
 - Netty/Common (from https://repo1.maven.org/maven2/io/netty/netty-common)
-- Plexus Interpolation API (from https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-interpolation)
 - Project Lombok (from http://projectlombok.org, https://projectlombok.org)
 - SLF4J API Module (from http://www.slf4j.org)
 - Spring Cloud Azure AutoConfigure (from https://microsoft.github.io/spring-cloud-azure)
@@ -657,35 +519,6 @@ The following software have components provided under the terms of this license:
 - mockito-junit-jupiter (from https://github.com/mockito/mockito)
 - msal4j (from https://github.com/AzureAD/microsoft-authentication-library-for-java)
 - msal4j-persistence-extension (from https://github.com/AzureAD/microsoft-authentication-extensions-for-java, https://github.com/AzureAD/microsoft-authentication-library-for-java)
-- qpid-proton-j-extensions (from https://github.com/Azure/qpid-proton-j-extensions)
-
-========================================================================
-MPL-1.1
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Javassist (from http://www.javassist.org/, https://www.javassist.org/)
-
-========================================================================
-MPL-2.0
-========================================================================
-The following software have components provided under the terms of this license:
-
-- RabbitMQ Java Client (from http://www.rabbitmq.com, https://www.rabbitmq.com)
-
-========================================================================
-NCSA
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Jetty Server (from http://jetty.mortbay.org, https://repo1.maven.org/maven2/org/mortbay/jetty/jetty)
-
-========================================================================
-Plexus
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Plexus Classworlds (from https://codehaus-plexus.github.io/plexus-classworlds/)
 
 ========================================================================
 WTFPL
@@ -694,19 +527,11 @@ The following software have components provided under the terms of this license:
 
 - Reflections (from http://code.google.com/p/reflections/, http://github.com/ronmamo/reflections)
 
-========================================================================
-bzip2-1.0.6
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Apache Commons Compress (from http://commons.apache.org/compress/, http://commons.apache.org/proper/commons-compress/, https://commons.apache.org/proper/commons-compress/)
-
 ========================================================================
 cc-pd
 ========================================================================
 The following software have components provided under the terms of this license:
 
-- Guava: Google Core Libraries for Java (from http://code.google.com/p/guava-libraries, https://github.com/google/guava, https://repo1.maven.org/maven2/com/google/guava/guava)
 - Netty/Codec (from https://repo1.maven.org/maven2/io/netty/netty-codec)
 
 ========================================================================
@@ -716,24 +541,14 @@ The following software have components provided under the terms of this license:
 
 - Jakarta Annotations API (from https://projects.eclipse.org/projects/ee4j.ca)
 
-========================================================================
-proprietary-license
-========================================================================
-The following software have components provided under the terms of this license:
-
-- Javassist (from http://www.javassist.org/, https://www.javassist.org/)
-
 ========================================================================
 public-domain
 ========================================================================
 The following software have components provided under the terms of this license:
 
-- AOP alliance (from http://aopalliance.sourceforge.net)
 - HdrHistogram (from http://hdrhistogram.github.io/HdrHistogram/)
 - JBoss Logging 3 (from http://www.jboss.org)
 - JSON in Java (from https://github.com/douglascrockford/JSON-java)
-- Microsoft Azure client library for Blob Storage (from https://github.com/Azure/azure-sdk-for-java)
-- PostgreSQL JDBC Driver
 
 ========================================================================
 unknown
diff --git a/devops/gc/deploy/README.md b/devops/gc/deploy/README.md
index c68b04bc5f3db3bfb9aa83fa3d9e7954b069bf2c..b793d15f848c9ee26984d33b39fadd04d2e0abf4 100644
--- a/devops/gc/deploy/README.md
+++ b/devops/gc/deploy/README.md
@@ -129,10 +129,7 @@ First you need to set variables in **values.yaml** file using any code editor. S
 |------|-------------|------|---------|---------|
 **conf.configmap** | configmap to be used | string | legal-config | yes
 **conf.appName** | name of the app | string | legal | yes
-**conf.minioSecretName** | Secret name for minio service | string | legal-minio-secret | yes
-**conf.postgresSecretName** | Secret name for postgres service | string | legal-postgres-secret | yes
-**conf.rabbitmqSecretName** | Secret name for rabbitmq service | string | rabbitmq-secret | yes
-**conf.bootstrapSecretName** | Secret name for cronjob | string | datafier-secret | yes
+**conf.replicas** | Number of pods for service  | integer | 1 | yes
 
 ### Istio variables
 
diff --git a/devops/gc/deploy/templates/cronjob.yaml b/devops/gc/deploy/templates/cronjob.yaml
index c95611df05f4e029e3a29f7366a0b6172d275573..74e0d4681e35df386f10b1c6c0d0ffe82124236b 100644
--- a/devops/gc/deploy/templates/cronjob.yaml
+++ b/devops/gc/deploy/templates/cronjob.yaml
@@ -16,10 +16,6 @@ spec:
             envFrom:
             - configMapRef:
                 name:  {{ printf "%s-status-update" .Values.conf.configmap | quote }}
-            {{- if .Values.global.onPremEnabled }}
-            - secretRef:
-                name: {{ .Values.conf.bootstrapSecretName | quote }}
-            {{- end }}
             securityContext:
               allowPrivilegeEscalation: false
               runAsNonRoot: true
diff --git a/devops/gc/deploy/templates/legal-configmap.yaml b/devops/gc/deploy/templates/legal-configmap.yaml
index fe9c44a705e212e90ec3bc163d37b06edc2d89b5..df7fdb59aa7992f601745624f9870133074898ed 100644
--- a/devops/gc/deploy/templates/legal-configmap.yaml
+++ b/devops/gc/deploy/templates/legal-configmap.yaml
@@ -8,8 +8,4 @@ metadata:
 data:
   ACCEPT_HTTP: {{ .Values.data.acceptHttp | quote }}
   LOG_LEVEL: {{ .Values.data.logLevel | quote }}
-  {{- if .Values.global.onPremEnabled }}
-  SPRING_PROFILES_ACTIVE: "anthos"
-  {{- else }}
   SPRING_PROFILES_ACTIVE: "gcp"
-  {{- end }}
diff --git a/devops/gc/deploy/templates/legal-deploy.yaml b/devops/gc/deploy/templates/legal-deploy.yaml
index a369fd72d1342d5896db2d497b7fae5e0f42cbb3..91335f4b7955bfceb28c2f7977c58a861b182cd0 100644
--- a/devops/gc/deploy/templates/legal-deploy.yaml
+++ b/devops/gc/deploy/templates/legal-deploy.yaml
@@ -30,32 +30,30 @@ spec:
         envFrom:
         - configMapRef:
             name: {{ .Values.conf.configmap | quote }}
-        {{- if .Values.global.onPremEnabled }}
-        - secretRef:
-            name: {{ .Values.conf.minioSecretName | quote }}
-        - secretRef:
-            name: {{ .Values.conf.postgresSecretName | quote }}
-        - secretRef:
-            name: {{ .Values.conf.rabbitmqSecretName | quote }}
-        {{- end }}
         securityContext:
           allowPrivilegeEscalation: false
           runAsNonRoot: true
         ports:
         - containerPort: 8080
-        livenessProbe:
+        readinessProbe:
           failureThreshold: 3
           httpGet:
-            path: /health/liveness
-            port: 8081
-          initialDelaySeconds: 150
-          periodSeconds: 10
-        readinessProbe:
+            path: /api/legal/v1/_ah/readiness_check
+            port: 8080
+            scheme: HTTP
+          periodSeconds: 15
+          successThreshold: 1
+          timeoutSeconds: 1
+        livenessProbe:
           failureThreshold: 3
           httpGet:
-            path: /health/readiness
-            port: 8081
+            path: /api/legal/v1/_ah/liveness_check
+            port: 8080
+            scheme: HTTP
+          initialDelaySeconds: 120
           periodSeconds: 10
+          successThreshold: 1
+          timeoutSeconds: 1
         resources:
           requests:
             cpu: {{ .Values.data.requestsCpu | quote }}
diff --git a/devops/gc/deploy/templates/legal-service-account.yaml b/devops/gc/deploy/templates/legal-service-account.yaml
deleted file mode 100644
index eec72f12889eec74d3de43ae6527a860bcd876ea..0000000000000000000000000000000000000000
--- a/devops/gc/deploy/templates/legal-service-account.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-{{- if .Values.global.onPremEnabled }}
-apiVersion: v1
-kind: ServiceAccount
-metadata:
-  name: {{ .Values.data.serviceAccountName | quote }}
-  namespace: {{ .Release.Namespace | quote }}
-{{- end }}
diff --git a/devops/gc/deploy/templates/legal-service.yaml b/devops/gc/deploy/templates/legal-service.yaml
index acc44bcadbba89c97edee0d5ea455c4960aba429..5c86a14d24bf935529e6f6e0b2978c91a13ef7b7 100644
--- a/devops/gc/deploy/templates/legal-service.yaml
+++ b/devops/gc/deploy/templates/legal-service.yaml
@@ -2,10 +2,8 @@ apiVersion: v1
 kind: Service
 metadata:
   name: {{ .Values.conf.appName | quote }}
-  {{- if not .Values.global.onPremEnabled }}
   annotations:
     cloud.google.com/neg: '{"ingress": true}'
-  {{- end }}
   namespace: {{ .Release.Namespace | quote }}
   labels:
     app: {{ .Values.conf.appName | quote }}
diff --git a/devops/gc/deploy/templates/legal-virtual-service.yaml b/devops/gc/deploy/templates/legal-virtual-service.yaml
index e0db744aaed1e9783546d1aea5ca08eec98da7bc..9b33ee1e567e35096992964450c84295b2af37fb 100644
--- a/devops/gc/deploy/templates/legal-virtual-service.yaml
+++ b/devops/gc/deploy/templates/legal-virtual-service.yaml
@@ -5,13 +5,7 @@ metadata:
   namespace: {{ .Release.Namespace | quote }}
 spec:
   hosts:
-    {{- if and .Values.global.domain .Values.global.onPremEnabled }}
-    - {{ printf "osdu.%s" .Values.global.domain | quote }}
-    {{- else if .Values.global.domain }}
     - {{ .Values.global.domain | quote }}
-    {{- else }}
-    - "*"
-    {{- end }}
   gateways:
     - service-gateway
   http:
diff --git a/devops/gc/deploy/values.yaml b/devops/gc/deploy/values.yaml
index 44869ff8f15fe8f9f4fd6fd8d35eaf0fa11509e2..85778826cd3e374819accbec2fd350b8625b9fd9 100644
--- a/devops/gc/deploy/values.yaml
+++ b/devops/gc/deploy/values.yaml
@@ -29,10 +29,6 @@ data:
 conf:
   configmap: "legal-config"
   appName: "legal"
-  minioSecretName: "legal-minio-secret"
-  postgresSecretName: "legal-postgres-secret"
-  rabbitmqSecretName: "rabbitmq-secret"
-  bootstrapSecretName: "datafier-secret"
   replicas: 1
 
 istio:
diff --git a/devops/gc/pipeline/override-stages.yml b/devops/gc/pipeline/override-stages.yml
index 7304544d1cb5d112f7cd7c4b839856a3bb7ee91c..abcab447c52a1186d3352e331acbca5a4fc01495 100644
--- a/devops/gc/pipeline/override-stages.yml
+++ b/devops/gc/pipeline/override-stages.yml
@@ -57,3 +57,44 @@ gc-containerize-cronjob-gcr:
   variables:
     IMAGE_NAME: "$GC_LEGALSTATUS_IMAGE_NAME"
     BUILD_PATH: "devops/$GC_VENDOR/bootstrap_legalstatus_update/Dockerfile"
+
+download_gc_plugins:
+  image: maven:3.8.3-openjdk-17-slim
+  stage: build
+  variables:
+    GC_OSM_PACKAGE_REGISTRY_URL: "https://community.opengroup.org/api/v4/projects/1476/packages/maven"
+    GC_OSM_VERSION: "0.27.0-rc3"
+    GC_OBM_PACKAGE_REGISTRY_URL: "https://community.opengroup.org/api/v4/projects/1475/packages/maven"
+    GC_OBM_VERSION: "0.27.0-rc2"
+    GC_OQM_PACKAGE_REGISRTY_URL: "https://community.opengroup.org/api/v4/projects/1477/packages/maven"
+    GC_OQM_VERSION: "0.27.0-rc2"
+  artifacts:
+    paths:
+      - ./tmp-gc/*.jar
+    when: always
+    expire_in: 1 days
+  script:
+    - mvn dependency:copy -DrepoUrl=$GC_OSM_PACKAGE_REGISTRY_URL -Dartifact="org.opengroup.osdu:gc-osm-datastore:$GC_OSM_VERSION:jar:plugin" -Dtransitive=false -DoutputDirectory="./tmp-gc"
+    - mvn dependency:copy -DrepoUrl=$GC_OBM_PACKAGE_REGISTRY_URL -Dartifact="org.opengroup.osdu:gc-obm-gs:$GC_OBM_VERSION:jar:plugin" -Dtransitive=false -DoutputDirectory="./tmp-gc"
+    - mvn dependency:copy -DrepoUrl=$GC_OQM_PACKAGE_REGISRTY_URL -Dartifact="org.opengroup.osdu:gc-oqm-pubsub:$GC_OQM_VERSION:jar:plugin" -Dtransitive=false -DoutputDirectory="./tmp-gc"
+  only:
+    variables:
+      - $GC == '1'
+
+gc-containerize-gitlab:
+  needs: ["compile-and-unit-test", "download_gc_plugins"]
+
+gc-containerize-gcr:
+  needs: ["compile-and-unit-test", "download_gc_plugins"]
+
+gc-baremetal-deploy:
+  rules:
+    - when: never
+
+gc-baremetal-test:
+  rules:
+    - when: never
+
+gc-baremetal-osdutest:
+  rules:
+    - when: never
diff --git a/provider/legal-gc/README.md b/provider/legal-gc/README.md
index 2b56b3de784bfd7685833ee0b26f602a07b2adec..95242e80b32e9e8f69b93b6937c58148fda5110c 100644
--- a/provider/legal-gc/README.md
+++ b/provider/legal-gc/README.md
@@ -64,10 +64,6 @@ This service uses specific implementations of DestinationResolvers based on the
 
 ## Service Configuration
 
-### Baremetal
-
-[Baremetal service configuration](docs/baremetal/README.md)
-
 ### Google Cloud
 
 [Google Cloud service configuration](docs/gc/README.md)
@@ -147,8 +143,12 @@ mvn clean install -DskipTests
 
 After configuring your environment as specified above, you can follow these steps to build and run the application. These steps should be invoked from the *repository root.*
 
+
 ```bash
-cd provider/legal-gc/ && mvn spring-boot:run -Dspring-boot.run.jvmArguments="--add-opens java.base/java.lang=ALL-UNNAMED --add-opens  java.base/java.lang.reflect=ALL-UNNAMED"
+CMD java --add-opens java.base/java.lang=ALL-UNNAMED \
+         --add-opens java.base/java.lang.reflect=ALL-UNNAMED \
+         -Dloader.main=org.opengroup.osdu.legal.LegalApplication \
+         -jar /app/legal-${PROVIDER_NAME}.jar
 ```
 
 ## Testing
@@ -164,10 +164,6 @@ $ (cd testing/legal-test-core/ && mvn clean install)
 
 This section describes how to run cloud OSDU E2E tests.
 
-### Baremetal test configuration
-
-[Baremetal service configuration](docs/baremetal/README.md)
-
 ### Google Cloud test configuration
 
 [Google Cloud service configuration](docs/google_cloud/README.md)
diff --git a/provider/legal-gc/cloudbuild/Dockerfile.cloudbuild b/provider/legal-gc/cloudbuild/Dockerfile.cloudbuild
index 2958f2283a91fa9e13dbccfbab16c4903697c4c7..84bebb6498dfdca4ebc197008cae08673280003d 100644
--- a/provider/legal-gc/cloudbuild/Dockerfile.cloudbuild
+++ b/provider/legal-gc/cloudbuild/Dockerfile.cloudbuild
@@ -4,6 +4,12 @@ ARG PROVIDER_NAME
 ENV PROVIDER_NAME $PROVIDER_NAME
 ARG PORT
 ENV PORT $PORT
+ENV LOADER_PATH="gc/"
+
+COPY tmp-gc/gc-oqm-pubsub-*.jar gc/oqm-pubsub.jar
+COPY tmp-gc/gc-obm-gs-*.jar gc/obm-gs.jar
+COPY tmp-gc/gc-osm-datastore-*.jar gc/osm-datastore.jar
+
 # Copy the jar to the production image from the builder stage.
 COPY provider/legal-${PROVIDER_NAME}/target/legal-${PROVIDER_NAME}-*-spring-boot.jar legal-${PROVIDER_NAME}.jar
 # Add a non-root user
@@ -13,4 +19,10 @@ RUN groupadd -g 10001 -r nonroot \
 USER 10001:10001
 # Run the web service on container startup.
 #--add-opens args used to open modules and allow illegal(reflection\private classes and fields) access from the code.
-CMD java --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED -Djava.security.egd=file:/dev/./urandom -Dserver.port=${PORT} -Dlog4j.formatMsgNoLookups=true -jar /app/legal-${PROVIDER_NAME}.jar
+CMD java --add-opens java.base/java.lang=ALL-UNNAMED \
+         --add-opens java.base/java.lang.reflect=ALL-UNNAMED \
+         -Djava.security.egd=file:/dev/./urandom \
+         -Dserver.port=${PORT} \
+         -Dlog4j.formatMsgNoLookups=true \
+         -Dloader.main=org.opengroup.osdu.legal.LegalApplication \
+         -jar /app/legal-${PROVIDER_NAME}.jar
diff --git a/provider/legal-gc/docs/baremetal/README.md b/provider/legal-gc/docs/baremetal/README.md
deleted file mode 100644
index fccf2bf85d72d4851882087410c3f5cca0ee3c0f..0000000000000000000000000000000000000000
--- a/provider/legal-gc/docs/baremetal/README.md
+++ /dev/null
@@ -1,380 +0,0 @@
-## Service Configuration for Baremetal
-
-## Run args
-
-In order to run Legal with Java 17 additional run args must be provided:
-
-```bash
---add-opens java.base/java.lang=ALL-UNNAMED --add-opens  java.base/java.lang.reflect=ALL-UNNAMED
-```
-
-Full command:
-
-```bash
-java -jar legal.jar --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED
-```
-
-## Environment variables:
-
-Define the following environment variables.
-
-Must have:
-
-| name                                      | value         | description                                                                                                                                                                                                                                                                                                | sensitive? | source |
-|-------------------------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------|--------|
-| `SPRING_PROFILES_ACTIVE`                  | ex `anthos`   | Spring profile that activate default configuration for Google Cloud environment                                                                                                                                                                                                                            | false      | -      |
-| `<POSTGRES_PASSWORD_ENV_VARIABLE_NAME>`   | ex `password` | Potgres user, name of that variable not defined at the service level, the name will be received through partition service. Each tenant can have it's own ENV name value, and it must be present in ENV of Indexer service, see [Partition properties set](#Properties-set-in-Partition-service)            | yes        | -      |
-| `<MINIO_SECRETKEY_ENV_VARIABLE_NAME>`     | ex `password` | Minio password, name of that variable not defined at the service level, the name will be received through partition service. Each tenant can have it's own ENV name value, and it must be present in ENV of Indexer service, see [Partition properties set](#Properties-set-in-Partition-service)          | false      | -      |
-| `<AMQP_PASSWORD_ENV_VARIABLE_NAME>`       | ex `password` | RabbitMQ password, name of that variable not defined at the service level, the name will be received through partition service. Each tenant can have it's own ENV name value, and it must be present in ENV of Indexer service, see [Partition properties set](#Properties-set-in-Partition-service)       | false      | -      |
-| `<AMQP_ADMIN_PASSWORD_ENV_VARIABLE_NAME>` | ex `password` | RabbitMQ Admin password, name of that variable not defined at the service level, the name will be received through partition service. Each tenant can have it's own ENV name value, and it must be present in ENV of Indexer service, see [Partition properties set](#Properties-set-in-Partition-service) | false      | -      |
-
-Defined in default application property file but possible to override:
-
-| name                                     | value                                        | description                                                                                                                                                         | sensitive? | source                              |
-|------------------------------------------|----------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------|-------------------------------------|
-| `LOG_PREFIX`                             | `legal`                                      | Logging prefix                                                                                                                                                      | no         | -                                   |
-| `AUTHORIZE_API`                          | `http://entitlements/entitlements/v1`        | Entitlements API endpoint                                                                                                                                           | no         | output of infrastructure deployment | |
-| `PARTITION_API`                          | ex `http://partition/api/partition/v1`       | Partition service endpoint                                                                                                                                          | no         | -                                   |
-| `PARTITION_AUTH_ENABLED`                 | `false`                                      | Disable auth token provisioning for requests to Partition service                                                                                                   | no         | -                                   |
-| `PARTITION_PROPERTIES_LEGAL_BUCKET_NAME` | ex `legal.bucket.name`                       | Name of partition property for legal bucket name value                                                                                                              | yes        | -                                   |
-
-These variables define service behavior, and are used to switch between `baremetal` or `gc` environments, their overriding and usage in mixed mode was not tested.
-Usage of spring profiles is preferred.
-
-| name                            | value                                      | description                                                                                                                                        | sensitive? | source |
-|---------------------------------|--------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|------------|--------|
-| `OPENID_PROVIDER_CLIENT_ID`     | `*****`                                    | Client id that represents this service and serves to request tokens, example `workload-identity-legal`                                             | yes        | -      |
-| `OPENID_PROVIDER_CLIENT_SECRET` | `*****`                                    | This client secret that serves to request tokens                                                                                                   | yes        | -      |
-| `OPENID_PROVIDER_URL`           | `https://keycloack.com/auth/realms/master` | URL of OpenID Connect provider, it will be used as `<OpenID URL> + /.well-known/openid-configuration` to auto configure endpoint for token request | no         | -      |
-| `PARTITION_AUTH_ENABLED`        | ex `true` or `false`                       | Disable or enable auth token provisioning for requests to Partition service                                                                        | no         | -      |
-| `OSMDRIVER`                     | `postgres`                                 | Osm driver mode that defines which KV storage will be used                                                                                         | no         | -      |
-| `OBMDRIVER`                     | `minio`                                    | Obm driver mode that defines which object storage will be used                                                                                     | no         | -      |
-| `OQMDRIVER`                     | `rabbitmq`                                 | Oqm driver mode that defines which message broker will be used                                                                                     | no         | -      |
-| `SERVICE_TOKEN_PROVIDER`        | `GCP` or `OPENID`                          | Service account token provider, `GCP` means use Google service account `OPEIND` means use OpenId provider like `Keycloak`                          | no         | -      |
-
-### Properties set in Partition service:
-
-Note that properties can be set in Partition as `sensitive` in that case in property `value` should be present not value itself, but ENV variable name.
-This variable should be present in environment of service that need that variable.
-
-Example:
-```
-    "elasticsearch.port": {
-      "sensitive": false, <- value not sensitive 
-      "value": "9243"  <- will be used as is.
-    },
-      "elasticsearch.password": {
-      "sensitive": true, <- value is sensitive 
-      "value": "ELASTIC_SEARCH_PASSWORD_OSDU" <- service consumer should have env variable ELASTIC_SEARCH_PASSWORD_OSDU with elastic search password
-    }
-```
-
-
-## Postgres configuration:
-
-### Properties set in Partition service:
-
-**prefix:** `osm.postgres`
-
-It can be overridden by:
-
-- through the Spring Boot property `osm.postgres.partition-properties-prefix`
-- environment variable `OSM_POSTGRES_PARTITION_PROPERTIES_PREFIX`
-
-**Propertyset:**
-
-| Property                         | Description |
-|----------------------------------|-------------|
-| osm.postgres.datasource.url      | server URL  |
-| osm.postgres.datasource.username | username    |
-| osm.postgres.datasource.password | password    |
-
-<details><summary>Example of a definition for a single tenant</summary>
-
-```
-
-curl -L -X PATCH 'http://partition.com/api/partition/v1/partitions/opendes' -H 'data-partition-id: opendes' -H 'Authorization: Bearer ...' -H 'Content-Type: application/json' --data-raw '{
-  "properties": {
-    "osm.postgres.datasource.url": {
-      "sensitive": false,
-      "value": "jdbc:postgresql://127.0.0.1:5432/postgres"
-    },
-    "osm.postgres.datasource.username": {
-      "sensitive": false,
-      "value": "postgres"
-    },
-    "osm.postgres.datasource.password": {
-      "sensitive": true,
-      "value": "<POSTGRES_PASSWORD_ENV_VARIABLE_NAME>" <- (Not actual value, just name of env variable)
-    }
-  }
-}'
-
-```
-
-</details>
-
-### Schema configuration:
-
-```
-CREATE TABLE <partitionId>."LegalTagOsm"(
-id text COLLATE pg_catalog."default" NOT NULL,
-pk bigint NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
-data jsonb NOT NULL,
-CONSTRAINT LegalTagOsm_id UNIQUE (id)
-);
-CREATE INDEX LegalTagOsm_dataGin ON <partitionId>."LegalTagOsm" USING GIN (data);
-
-```
-
-Example of filling table with LegalTag
-
-```
-
-INSERT INTO <partitionId>."LegalTagOsm"(
-id, data)
-VALUES ('726612843', '{
-  "id": 726612843,
-  "name": "opendes-gae-integration-test-1639485896236",
-  "isValid": true,
-  "properties": {
-    "COO": [
-      "US"
-    ],
-    "dataType": "Transferred Data",
-    "contractId": "A1234",
-    "originator": "MyCompany",
-    "personalData": "No Personal Data",
-    "expirationDate": "Dec 31, 9999",
-    "exportClassification": "EAR99",
-    "securityClassification": "Public"
-  },
-  "description": ""
-}');
-
-```
-
-## RabbitMQ configuration:
-
-### Properties set in Partition service:
-
-**prefix:** `oqm.rabbitmq`
-
-It can be overridden by:
-
-- through the Spring Boot property `oqm.rabbitmq.partition-properties-prefix`
-- environment variable `OQM_RABBITMQ_PARTITION_PROPERTIES_PREFIX`
-
-**Property Set** (for two types of connection: messaging and admin operations):
-
-| Property                    | Description              |
-|-----------------------------|--------------------------|
-| oqm.rabbitmq.amqp.host      | messaging hostname or IP |
-| oqm.rabbitmq.amqp.port      | - port                   |
-| oqm.rabbitmq.amqp.path      | - path                   |
-| oqm.rabbitmq.amqp.username  | - username               |
-| oqm.rabbitmq.amqp.password  | - password               |
-| oqm.rabbitmq.admin.schema   | admin host schema        |
-| oqm.rabbitmq.admin.host     | - host name              |
-| oqm.rabbitmq.admin.port     | - port                   |
-| oqm.rabbitmq.admin.path     | - path                   |
-| oqm.rabbitmq.admin.username | - username               |
-| oqm.rabbitmq.admin.password | - password               |
-
-<details><summary>Example of a single tenant definition</summary>
-
-```
-
-curl -L -X PATCH 'https://dev.osdu.club/api/partition/v1/partitions/opendes' -H 'data-partition-id: opendes' -H 'Authorization: Bearer ...' -H 'Content-Type: application/json' --data-raw '{
-  "properties": {
-    "oqm.rabbitmq.amqp.host": {
-      "sensitive": false,
-      "value": "localhost"
-    },
-    "oqm.rabbitmq.amqp.port": {
-      "sensitive": false,
-      "value": "5672"
-    },
-    "oqm.rabbitmq.amqp.path": {
-      "sensitive": false,
-      "value": ""
-    },
-    "oqm.rabbitmq.amqp.username": {
-      "sensitive": false,
-      "value": "guest"
-    },
-    "oqm.rabbitmq.amqp.password": {
-      "sensitive": true,
-      "value": "<AMQP_PASSWORD_ENV_VARIABLE_NAME>" <- (Not actual value, just name of env variable)
-    },
-
-     "oqm.rabbitmq.admin.schema": {
-      "sensitive": false,
-      "value": "http"
-    },
-     "oqm.rabbitmq.admin.host": {
-      "sensitive": false,
-      "value": "localhost"
-    },
-    "oqm.rabbitmq.admin.port": {
-      "sensitive": false,
-      "value": "9002"
-    },
-    "oqm.rabbitmq.admin.path": {
-      "sensitive": false,
-      "value": "/api"
-    },
-    "oqm.rabbitmq.admin.username": {
-      "sensitive": false,
-      "value": "guest"
-    },
-    "oqm.rabbitmq.admin.password": {
-      "sensitive": true,
-      "value": "<AMQP_ADMIN_PASSWORD_ENV_VARIABLE_NAME>" <- (Not actual value, just name of env variable)
-    }
-  }
-}'
-
-```
-
-</details>
-
-### Exchanges & queues configuration:
-
-At RabbitMq should be created exchange with name:
-
-**name:** `legaltags-changed`
-
-It can be overridden by:
-
-- through the Spring Boot property `pub-sub-legal-tags-topic`
-- environment variable `PUB_SUB_LEGAL_TAGS_TOPIC`
-
-Legal service responsible for publishing only.
-Consumer side `legaltags-changed` topic configuration located in
-[Storage Baremetal Rabbit documentation](https://community.opengroup.org/osdu/platform/system/storage/-/tree/master/provider/storage-gc/docs/anthos#exchanges-and-queues-configuration)
-
-![Screenshot](./pics/rabbit.PNG)
-
-## Minio configuration:
-
-### Properties set in Partition service:
-
-**prefix:** `obm.minio`
-
-It can be overridden by:
-
-- through the Spring Boot property `obm.minio.partition-properties-prefix`
-- environment variable `OBM_MINIO_PARTITION_PROPERTIES_PREFIX`
-
-**Propertyset** (for two types of connection: messaging and admin operations):
-
-| Property                         | Description |
-|----------------------------------|-------------|
-| obm.minio.endpoint               | - url       |
-| obm.minio.credentials.access.key | - username  |
-| obm.minio.credentials.secret.key | - password  |
-
-<details><summary>Example of a single tenant definition</summary>
-
-```
-
-curl -L -X PATCH 'https://dev.osdu.club/api/partition/v1/partitions/opendes' -H 'data-partition-id: opendes' -H 'Authorization: Bearer ...' -H 'Content-Type: application/json' --data-raw '{
-  "properties": {
-    "obm.minio.endpoint": {
-      "sensitive": false,
-      "value": "localhost"
-    },
-    "obm.minio.credentials.access.key": {
-      "sensitive": false,
-      "value": "minioadmin"
-    },
-    "obm.minio.credentials.secret.key": {
-      "sensitive": false,
-      "value": "<MINIO_SECRETKEY_ENV_VARIABLE_NAME>" <- (Not actual value, just name of env variable)
-    }
-  }
-}'
-
-```
-
-</details>
-
-## Object store configuration <a name="ObjectStoreConfig"></a>
-### Used Technology
-MinIO (or any other supported by OBM)
-
-### Per-tenant buckets configuration
-These buckets must be defined in tenants’ dedicated object store servers. OBM connection properties of these servers (url, etc.) are defined as specific properties in tenants’ PartitionInfo registration objects at the Partition service as described in accordant sections of this document.
-
-<table>
-  <tr>
-   <td>Bucket Naming template 
-   </td>
-   <td>Permissions required
-   </td>
-  </tr>
-  <tr>
-   <td>&lt;PartitionInfo.name>-legal-service-configuration
-
-<strong>OR</strong>
-<p>
-&lt;PartitionInfo.projectId>-&lt;PartitionInfo.name>-legal-config
-   </td>
-   <td>CreateBucket, CRUDObject
-   </td>
-  </tr>
-</table>
-
-### Running E2E Tests
-
-This section describes how to run cloud OSDU E2E tests (testing/legal-test-baremetal).
-
-You will need to have the following environment variables defined.
-
-| name                                 | value                                            | description                                                                                                                                                                                                                    | sensitive?                              | source |
-|--------------------------------------|--------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------|--------|
-| `HOST_URL`                           | `http://localhsot:8080/api/legal/v1/`            | -                                                                                                                                                                                                                              | yes                                     | -      |
-| `MY_TENANT`                          | `osdu`                                           | OSDU tenant used for testing                                                                                                                                                                                                   | yes                                     | -      |
-| `SKIP_HTTP_TESTS`                    | ex `true`                                        | jetty server returns 403 when running locally when deployed jettyserver is not used and the app returns a 302 so just run against deployed version only when checking http -> https redirects. Use 'true' for Google Cloud Run | yes                                     | -      |
-| `BAREMETAL_PROJECT_ID`               | ex `osdu-anthos`                                 | project id used to specify bucket name                                                                                                                                                                                         | no                                      | -      |
-| `TEST_OPENID_PROVIDER_CLIENT_ID`     | `********`                                       | Client Id for `$INTEGRATION_TESTER`                                                                                                                                                                                            | yes                                     | --     |
-| `TEST_OPENID_PROVIDER_CLIENT_SECRET` | `********`                                       |                                                                                                                                                                                                                                | Client secret for `$INTEGRATION_TESTER` | --     |
-| `TEST_OPENID_PROVIDER_URL`           | `https://keycloak.com/auth/realms/osdu`          | OpenID provider url                                                                                                                                                                                                            | yes                                     | --     |
-| `TEST_MINIO_ACCESS_KEY`              | ex `true`                                        | Minio access key                                                                                                                                                                                                               | no                                      | -      |
-| `TEST_MINIO_SECRET_KEY`              | `********`                                       | Minio secret                                                                                                                                                                                                                   | yes                                     | --     |
-| `TEST_MINIO_URL`                     | `https://s3.ref.gc.gnrg-osdu.projects.epam.com/` | Minio url                                                                                                                                                                                                                      | --                                      |
-| `PARTITION_API`                      | ex `http://localhost:8080/api/partition/v1 `     | Partition service host                                                                                                                                                                                                         | no                                      | --     |
-
-
-**Entitlements configuration for integration accounts**
-
-| INTEGRATION_TESTER                                                                                                                                   |
-|------------------------------------------------------------------------------------------------------------------------------------------------------|
-| users<br/>service.entitlements.user<br/>service.legal.admin<br/>service.legal.editor<br/>service.legal.user<br/>data.test1<br/>data.integration.test |
-
-Execute following command to build code and run all the integration tests:
-
-```bash
-# Note: this assumes that the environment variables for integration tests as outlined
-#       above are already exported in your environment.
-$ (cd testing/legal-test-core/ && mvn clean install)
-$ (cd testing/legal-test-baremetal/ && mvn clean test)
-```
-
-## License
-
-Copyright © Google LLC
-Copyright © EPAM Systems
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-[http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
\ No newline at end of file
diff --git a/provider/legal-gc/docs/baremetal/pics/rabbit.PNG b/provider/legal-gc/docs/baremetal/pics/rabbit.PNG
deleted file mode 100644
index e1c67734b91a536659fdf0b940a93208d749e3c8..0000000000000000000000000000000000000000
Binary files a/provider/legal-gc/docs/baremetal/pics/rabbit.PNG and /dev/null differ
diff --git a/provider/legal-gc/docs/gc/README.md b/provider/legal-gc/docs/gc/README.md
index 8407e3e18fe157a33d529072dfabe1b1cb2892e9..ea40d97139b926298f17d8f055d51575c3342a98 100644
--- a/provider/legal-gc/docs/gc/README.md
+++ b/provider/legal-gc/docs/gc/README.md
@@ -9,10 +9,12 @@ In order to run Legal with Java 17 additional run args must be provided:
 --add-opens java.base/java.lang=ALL-UNNAMED --add-opens  java.base/java.lang.reflect=ALL-UNNAMED
 ```
 
-Full command:
 
 ```bash
-java -jar legal.jar --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED
+CMD java --add-opens java.base/java.lang=ALL-UNNAMED \
+         --add-opens java.base/java.lang.reflect=ALL-UNNAMED \
+         -Dloader.main=org.opengroup.osdu.legal.LegalApplication \
+         -jar /app/legal-${PROVIDER_NAME}.jar
 ```
 
 ## Environment variables
@@ -46,10 +48,6 @@ Usage of spring profiles is preferred.
 | name                     | value                  | description                                                                                                               | sensitive? | source |
 |--------------------------|------------------------|---------------------------------------------------------------------------------------------------------------------------|------------|--------|
 | `PARTITION_AUTH_ENABLED` | ex `true` or `false`   | Disable or enable auth token provisioning for requests to Partition service                                               | no         | -      |
-| `OQMDRIVER`              | `rabbitmq` or `pubsub` | Oqm driver mode that defines which message broker will be used                                                            | no         | -      |
-| `OSMDRIVER`              | `datastore`            | Osm driver mode that defines which KV storage will be used                                                                | no         | -      |
-| `OBMDRIVER`              | `gcs`                  | Obm driver mode that defines which object storage will be used                                                            | no         | -      |
-| `SERVICE_TOKEN_PROVIDER` | `GCP` or `OPENID`      | Service account token provider, `GCP` means use Google service account `OPEIND` means use OpenId provider like `Keycloak` | no         | -      |
 
 ### Running Locally
 
diff --git a/provider/legal-gc/kubernetes/deployments/deployment-os-legal-service.yml b/provider/legal-gc/kubernetes/deployments/deployment-os-legal-service.yml
deleted file mode 100644
index bae0a1cd5fc9e6b0bba0abb8cb06e12b2b316fdd..0000000000000000000000000000000000000000
--- a/provider/legal-gc/kubernetes/deployments/deployment-os-legal-service.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
-  name: os-legal-service
-  labels:
-    app: os-legal-service
-spec:
-  ports:
-    - name: http
-      port: 80
-      targetPort: 8080
-  selector:
-    app: os-legal-service
----
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
-  name: os-legal-service
-spec:
-  replicas: 1
-  template:
-    metadata:
-      labels:
-        app: os-legal-service
-        version: v1
-    spec:
-      containers:
-        - name: os-legal-app
-          envFrom:
-            - configMapRef:
-                name: os-service-config
-          image: gcr.io/opendes/os-legal-app
-          imagePullPolicy: Always
-          ports:
-            - containerPort: 8080
diff --git a/provider/legal-gc/pom.xml b/provider/legal-gc/pom.xml
index 064b351c0f91e9d01d0a0ead0a59dbbb522dedfc..0e7bba340873f80b4f9036d04b46a7beb887ffc5 100644
--- a/provider/legal-gc/pom.xml
+++ b/provider/legal-gc/pom.xml
@@ -13,216 +13,13 @@
   <version>0.27.0-SNAPSHOT</version>
   <packaging>jar</packaging>
   <name>legal-gc</name>
-  <description>Legal service for Hybrid Cloud</description>
-
-  <dependencyManagement>
-    <dependencies>
-      <dependency>
-        <groupId>com.google.cloud</groupId>
-        <artifactId>libraries-bom</artifactId>
-        <version>26.15.0</version>
-        <type>pom</type>
-        <scope>import</scope>
-      </dependency>
-      <!--for MinIO-->
-      <dependency>
-        <groupId>org.jetbrains.kotlin</groupId>
-        <artifactId>kotlin-stdlib</artifactId>
-        <version>1.6.0</version>
-        <scope>compile</scope>
-      </dependency>
-      <dependency>
-        <groupId>com.squareup.okio</groupId>
-        <artifactId>okio</artifactId>
-        <version>2.7.0</version>
-        <scope>compile</scope>
-      </dependency>
-      <dependency>
-        <groupId>com.squareup.okhttp3</groupId>
-        <artifactId>okhttp</artifactId>
-        <version>4.9.2</version>
-        <scope>compile</scope>
-      </dependency>
-    </dependencies>
-  </dependencyManagement>
+  <description>Legal service for Google Cloud</description>
 
   <dependencies>
-    <dependency>
-      <groupId>org.projectlombok</groupId>
-      <artifactId>lombok</artifactId>
-      <optional>true</optional>
-    </dependency>
     <dependency>
       <groupId>org.opengroup.osdu.legal</groupId>
-      <artifactId>legal-core</artifactId>
+      <artifactId>legal-core-plus</artifactId>
       <version>0.27.0-SNAPSHOT</version>
-      <exclusions>
-        <exclusion>
-          <groupId>com.google.api-client</groupId>
-          <artifactId>google-api-client</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.opengroup.osdu</groupId>
-      <artifactId>core-lib-gc-spring6</artifactId>
-      <version>0.26.0-rc4</version>
-    </dependency>
-    <dependency>
-      <groupId>jakarta.servlet</groupId>
-      <artifactId>jakarta.servlet-api</artifactId>
-      <version>6.0.0</version>
-      <scope>provided</scope>
-    </dependency>
-    <dependency>
-    		<groupId>org.mortbay.jetty</groupId>
-    		<artifactId>jetty</artifactId>
-    		<version>6.1.26</version>
-    </dependency>
-
-    <dependency>
-      <groupId>jakarta.inject</groupId>
-      <artifactId>jakarta.inject-api</artifactId>
-      <version>2.0.1</version>
-    </dependency>
-
-    <dependency>
-      <groupId>io.jsonwebtoken</groupId>
-      <artifactId>jjwt</artifactId>
-      <version>0.9.1</version>
-      <exclusions>
-        <exclusion>
-          <groupId>com.fasterxml.jackson.core</groupId>
-          <artifactId>jackson-databind</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-
-    <!-- https://mvnrepository.com/artifact/io.github.resilience4j/resilience4j-circuitbreaker -->
-    <dependency>
-      <groupId>io.github.resilience4j</groupId>
-      <artifactId>resilience4j-circuitbreaker</artifactId>
-      <version>${resilience4jVersion}</version>
-    </dependency>
-    <!-- https://mvnrepository.com/artifact/io.github.resilience4j/resilience4j-retry -->
-    <dependency>
-      <groupId>io.github.resilience4j</groupId>
-      <artifactId>resilience4j-retry</artifactId>
-      <version>${resilience4jVersion}</version>
-    </dependency>
-    <!-- https://mvnrepository.com/artifact/commons-lang/commons-lang -->
-    <dependency>
-      <groupId>commons-lang</groupId>
-      <artifactId>commons-lang</artifactId>
-      <version>2.6</version>
-    </dependency>
-
-    <!-- Test Dependencies -->
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter-test</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.security</groupId>
-      <artifactId>spring-security-test</artifactId>
-      <scope>test</scope>
-    </dependency>
-
-    <!-- Test Dependencies -->
-    <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-      <version>4.13.1</version>
-      <scope>test</scope>
-    </dependency>
-    <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 -->
-    <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-api-mockito2</artifactId>
-      <version>2.0.2</version>
-      <scope>test</scope>
-    </dependency>
-    <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 -->
-    <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-module-junit4</artifactId>
-      <version>2.0.2</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.mockito</groupId>
-      <artifactId>mockito-core</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-core</artifactId>
-      <version>3.9.6</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-utils</artifactId>
-      <version>3.0.24</version>
-      <scope>test</scope>
-    </dependency>
-
-    <!-- https://mvnrepository.com/artifact/com.github.stefanbirkner/system-rules -->
-    <dependency>
-      <groupId>com.github.stefanbirkner</groupId>
-      <artifactId>system-rules</artifactId>
-      <version>1.2.0</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>ch.qos.logback.contrib</groupId>
-      <artifactId>logback-json-classic</artifactId>
-      <version>0.1.5</version>
-    </dependency>
-    <dependency>
-      <groupId>ch.qos.logback.contrib</groupId>
-      <artifactId>logback-jackson</artifactId>
-      <version>0.1.5</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>spring-webmvc</artifactId>
-    </dependency>
-
-    <dependency>
-      <groupId>org.opengroup.osdu</groupId>
-      <artifactId>oqm</artifactId>
-      <version>0.25.0</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.opengroup.osdu</groupId>
-      <artifactId>osm</artifactId>
-      <version>0.25.0</version>
-      <exclusions>
-        <exclusion>
-            <groupId>org.postgresql</groupId>
-            <artifactId>postgresql</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.postgresql</groupId>
-      <artifactId>postgresql</artifactId>
-      <version>42.7.3</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.opengroup.osdu</groupId>
-      <artifactId>obm</artifactId>
-      <version>0.25.0</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter-actuator</artifactId>
     </dependency>
   </dependencies>
 
@@ -231,6 +28,7 @@
       <plugin>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-maven-plugin</artifactId>
+        <version>3.2.2</version>
         <executions>
           <execution>
             <goals>
@@ -239,7 +37,7 @@
             <configuration>
               <classifier>spring-boot</classifier>
               <mainClass>
-                org.opengroup.osdu.legal.LegalApplication
+                org.springframework.boot.loader.launch.PropertiesLauncher
               </mainClass>
             </configuration>
           </execution>
diff --git a/provider/legal-gc/scripts/config.sh b/provider/legal-gc/scripts/config.sh
deleted file mode 100644
index 102b1bc9b5e86f5a8d93cc5697a7dd0739fbeb5e..0000000000000000000000000000000000000000
--- a/provider/legal-gc/scripts/config.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/bash
-
-if [ "$PROJECT_ID" = "" ]
-then
-    export PROJECT_ID=$(gcloud config get-value project)
-fi
diff --git a/provider/legal-gc/scripts/deploy.sh b/provider/legal-gc/scripts/deploy.sh
deleted file mode 100644
index f0cc445aba0893308d566d7be2937b4d6d9ae300..0000000000000000000000000000000000000000
--- a/provider/legal-gc/scripts/deploy.sh
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/bash
-
-# deploy script
-
-# Exit as soon as a command fails
-set -e
-
-SCRIPTS_DIR=$(dirname $0)
-DROP_DIR=$(dirname $SCRIPTS_DIR)
-
-# Go to drop directory
-cd $DROP_DIR
-# convert to full path
-DROP_DIR=`pwd`
-echo "Current working directory: $DROP_DIR"
-
-DEPLOY_DIR=$DROP_DIR/deploy
-
-if [ -s $DEPLOY_DIR ]; then
-  rm -rf $DEPLOY_DIR/*
-else
-  mkdir $DEPLOY_DIR
-fi
-
-DEPLOY_SCRIPTS_DIR=$DEPLOY_DIR/scripts
-
-mkdir -p $DEPLOY_SCRIPTS_DIR
-
-echo "Copy artifacts to folder: $DEPLOY_DIR"
-cp $DROP_DIR/app.yaml $DEPLOY_DIR
-cp $DROP_DIR/legal-gcp-*.jar  $DEPLOY_DIR
-cp $DROP_DIR/testing.zip  $DEPLOY_DIR
-cp $SCRIPTS_DIR/* $DEPLOY_SCRIPTS_DIR
-chmod a+x $DEPLOY_SCRIPTS_DIR/*.sh
-
-# Go to deploy directory
-cd $DEPLOY_DIR
-echo "Current working directory: $DEPLOY_DIR"
-
-source $DEPLOY_SCRIPTS_DIR/config.sh
-
-echo "Deploying to gcp"
-$DEPLOY_SCRIPTS_DIR/deploy2gcp.sh
-echo "Deployed to gcp"
\ No newline at end of file
diff --git a/provider/legal-gc/scripts/deploy2gcp.sh.tmpl b/provider/legal-gc/scripts/deploy2gcp.sh.tmpl
deleted file mode 100644
index f1c95a339c8923ea9234dd0ddd57a1aa8ea83756..0000000000000000000000000000000000000000
--- a/provider/legal-gc/scripts/deploy2gcp.sh.tmpl
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/bin/bash
-
-# Exit as soon as a command fails
-set -e
-
-{{$definitionName := getenv "BUILD_DEFINITIONNAME" -}}
-{{$sourceBranchName := getenv "BUILD_SOURCEBRANCHNAME" -}}
-{{$buildNumber := getenv "BUILD_BUILDNUMBER" -}}
-
-BUILD_DEFINITIONNAME={{$definitionName}}
-BUILD_SOURCEBRANCHNAME={{$sourceBranchName}}
-BUILD_BUILDNUMBER={{$buildNumber}}
-
-SCRIPTS_DIR=$(dirname $0)
-DEPLOY_DIR=$(dirname $SCRIPTS_DIR)
-
-# Go to deploy directory
-cd $DEPLOY_DIR
-# convert to full path
-DEPLOY_DIR=`pwd`
-echo "Current working directory: $DEPLOY_DIR"
-
-source $SCRIPTS_DIR/config.sh
-
-echo "This script will deploy the app to $PROJECT_ID"
-
-if [ "$REGION" = "" ]
-then
-    REGION=$(gcloud config get-value compute/region)
-fi
-
-echo "Environment"
-echo "  Project = $PROJECT_ID"
-echo "  Compute zone = $CLOUDSDK_COMPUTE_ZONE"
-echo "  Build definition = $BUILD_DEFINITIONNAME"
-echo "  Source branch = $BUILD_SOURCEBRANCHNAME"
-echo "  Build number = $BUILD_BUILDNUMBER"
-echo "  Directory = $DEPLOY_DIR"
-
-SERVICE_NAME="os-legal"
-
-VERSION_NUMBER=$BUILD_BUILDNUMBER
-VERSION_NUMBER=$(echo "$VERSION_NUMBER" | tr _ - | tr . - | tr '[:upper:]' '[:lower:]')
-
-count=$(gcloud app services list --project $PROJECT_ID | grep $SERVICE_NAME | wc -l)
-if [ $count -gt 0 ]; then
-  CURRENT_VERSION=$(gcloud app services describe $SERVICE_NAME --project $PROJECT_ID --format=json | jq --raw-output '.split.allocations | keys[0]')
-else
-  CURRENT_VERSION=""
-fi
-
-echo "Current version = $CURRENT_VERSION"
-echo "Version to be deployed = $VERSION_NUMBER"
-
-if [ "$VERSION_NUMBER" != "$CURRENT_VERSION" -o "$BUILD_FORCE_DEPLOY" = "true" -o "$BUILD_FORCE_DEPLOY" = "True" -o "$BUILD_FORCE_DEPLOY" = "TRUE" ]
-then
-    # If the version $VERSION_NUMBER already exists, but not serving traffic, gcloud app deploy will fail. In this case, simply start that version and migrate traffic to it
-    doesVersionExist=`gcloud app versions list --service=$SERVICE_NAME --project=$PROJECT_ID | grep $VERSION_NUMBER | wc -l`
-    if [ "$doesVersionExist" -eq "1" ]
-    then
-        echo "Starting version $VERSION_NUMBER"
-        gcloud app versions start $VERSION_NUMBER --service=$SERVICE_NAME --project=$PROJECT_ID --quiet
-        echo "Migrating all traffic to version $VERSION_NUMBER"
-        gcloud app services set-traffic $SERVICE_NAME --splits $VERSION_NUMBER=1 --project=$PROJECT_ID --quiet
-    else
-        export LEGAL_HOSTNAME="$SERVICE_NAME-dot-$PROJECT_ID.appspot.com"
-
-        echo "Replacing app.yaml contents with env variables"
-        sed -i -e "s|ENVIRONMENT|$ENVIRONMENT|g" app.yaml
-        sed -i "s|GOOGLE_CLOUD_PROJECT_PLACE_HOLDER|$PROJECT_ID|g" app.yaml
-
-        echo "Content of app.yaml:"
-        cat app.yaml
-
-        echo "Deploying $LEGAL_HOSTNAME service"
-        gcloud app deploy --project=$PROJECT_ID --version=$VERSION_NUMBER app.yaml
-        echo "$LEGAL_HOSTNAME service deployed successfully"
-    fi
-else
-    echo "Not deploying the application because $VERSION_NUMBER is already deployed and force deploy flag is not set to true"
-fi
diff --git a/provider/legal-gc/scripts/stage-artifacts.sh b/provider/legal-gc/scripts/stage-artifacts.sh
deleted file mode 100644
index ba890ad42a62902bc9a4a1a9771544db98cfbf05..0000000000000000000000000000000000000000
--- a/provider/legal-gc/scripts/stage-artifacts.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/bash
-
-# Exit as soon as a command fails
-set -e
-
-if [ ! $# = 1 ]; then
-    echo "Usage: $0 dir"
-    exit 1
-fi
-
-STAGE_DIR=$1
-
-cd $BUILD_REPOSITORY_LOCALPATH/provider/legal-gcp/scripts
-
-source ./config.sh
-
-#apply gomplate to deploy2gcp.sh.tmpl
-gomplate -f ./deploy2gcp.sh.tmpl -o ./deploy2gcp.sh
-chmod a+x ./*.sh
-echo "Contents of deploy2gcp.sh:"
-cat ./deploy2gcp.sh
-
-cd ..
-
-# Upload all build and deploy scripts as artifacts
-cp -R ./scripts $STAGE_DIR
-# Upload the build generated .jar file as an artifact
-cp ./target/legal-gcp-*-spring-boot.jar $STAGE_DIR
-
-echo "Staging deployment artifacts to folder: $STAGE_DIR"
-cp ./src/main/appengine/app.yaml $STAGE_DIR
-
-# set current directory back to build repo root
-cd $BUILD_REPOSITORY_LOCALPATH
-
-# Zip integration tests and upload it as artifact
-pushd testing
-zip -r testing.zip *
-cp testing.zip $STAGE_DIR
-popd
-
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/LegalApplication.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/LegalApplicationGC.java
similarity index 75%
rename from provider/legal-gc/src/main/java/org/opengroup/osdu/legal/LegalApplication.java
rename to provider/legal-gc/src/main/java/org/opengroup/osdu/legal/LegalApplicationGC.java
index 820211b15bfd9b06ea74a15c514eb8c4453fed42..88f6adc4dcaaf0135dc9ff1118e4cd780e6936da 100644
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/LegalApplication.java
+++ b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/LegalApplicationGC.java
@@ -21,20 +21,22 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.builder.SpringApplicationBuilder;
 import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
 import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.FilterType;
 import org.springframework.context.annotation.PropertySource;
 
-@ComponentScan(value = {"org.opengroup.osdu"})
+@ComponentScan(value = {"org.opengroup.osdu"},
+    excludeFilters = {@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = LegalApplication.class)})
 @PropertySource("classpath:swagger.properties")
 @SpringBootApplication
-public class LegalApplication extends SpringBootServletInitializer {
+public class LegalApplicationGC extends SpringBootServletInitializer {
 
   @Override
   protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
-    return application.sources(LegalApplication.class);
+    return application.sources(LegalApplicationGC.class);
   }
 
   public static void main(String[] args) {
-    SpringApplication.run(LegalApplication.class, args);
+    SpringApplication.run(LegalApplicationGC.class, args);
   }
 
 }
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/CacheConfig.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/CacheConfig.java
deleted file mode 100644
index 508e5043911fdeae982b0670fb61474df754ea83..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/CacheConfig.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *  Copyright 2020-2023 Google LLC
- *  Copyright 2020-2023 EPAM Systems, Inc
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package org.opengroup.osdu.legal.config;
-
-import lombok.RequiredArgsConstructor;
-import org.opengroup.osdu.core.common.cache.ICache;
-import org.opengroup.osdu.core.common.cache.VmCache;
-import org.opengroup.osdu.core.common.partition.PartitionInfo;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@RequiredArgsConstructor
-public class CacheConfig {
-
-  @Bean
-  public ICache<String, PartitionInfo> partitionInfoCache() {
-    return new VmCache<>(600, 2000);
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/GcpAppServiceConfig.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/GcpAppServiceConfig.java
deleted file mode 100644
index d6ab7962516224ad2676834f1e3b5b24ca887b11..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/GcpAppServiceConfig.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2021 Google LLC
- * Copyright 2021 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.config;
-
-import lombok.Data;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@ConfigurationProperties
-@Data
-public class GcpAppServiceConfig {
-
-  private String pubSubLegalTagsTopic;
-  private boolean enableFullBucketName;
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/PartitionPropertyNames.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/PartitionPropertyNames.java
deleted file mode 100644
index 1f1bf8083be25e97b86ce2d1c2aa79c08be99029..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/config/PartitionPropertyNames.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2020-2023 Google LLC
- * Copyright 2020-2023 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opengroup.osdu.legal.config;
-
-import lombok.Data;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.context.annotation.Configuration;
-
-@Data
-@Configuration
-@ConfigurationProperties(prefix = "partition.properties")
-public class PartitionPropertyNames {
-  private String legalBucketName;
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/countries/StorageReaderFactoryImpl.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/countries/StorageReaderFactoryImpl.java
deleted file mode 100644
index b992050986c352a2687cbab3d5cc99ab69ed98be..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/countries/StorageReaderFactoryImpl.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2020-2023 Google LLC
- * Copyright 2020-2023 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.countries;
-
-import lombok.RequiredArgsConstructor;
-import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
-import org.opengroup.osdu.core.common.partition.PartitionPropertyResolver;
-import org.opengroup.osdu.core.gcp.obm.driver.Driver;
-import org.opengroup.osdu.legal.config.PartitionPropertyNames;
-import org.opengroup.osdu.legal.provider.interfaces.IStorageReader;
-import org.opengroup.osdu.legal.provider.interfaces.IStorageReaderFactory;
-import org.springframework.stereotype.Component;
-
-@Component
-@RequiredArgsConstructor
-public class StorageReaderFactoryImpl implements IStorageReaderFactory {
-
-  private final Driver storage;
-
-  private final PartitionPropertyResolver partitionPropertyResolver;
-
-  private final PartitionPropertyNames partitionPropertyNames;
-
-  @Override
-  public IStorageReader getReader(TenantInfo tenant, String projectRegion) {
-    return new StorageReaderImpl(
-        tenant, storage, partitionPropertyResolver, partitionPropertyNames);
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/countries/StorageReaderImpl.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/countries/StorageReaderImpl.java
deleted file mode 100644
index ddd7cb6499e5de0855a83d4caeb04e837e3f5975..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/countries/StorageReaderImpl.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright 2020-2023 Google LLC
- * Copyright 2020-2023 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opengroup.osdu.legal.countries;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
-import org.opengroup.osdu.core.common.partition.PartitionPropertyResolver;
-import org.opengroup.osdu.core.gcp.obm.driver.Driver;
-import org.opengroup.osdu.core.gcp.obm.driver.ObmDriverRuntimeException;
-import org.opengroup.osdu.core.gcp.obm.model.Blob;
-import org.opengroup.osdu.core.gcp.obm.persistence.ObmDestination;
-import org.opengroup.osdu.legal.config.PartitionPropertyNames;
-import org.opengroup.osdu.legal.provider.interfaces.IStorageReader;
-
-import java.util.Objects;
-
-@RequiredArgsConstructor
-@Slf4j
-public class StorageReaderImpl implements IStorageReader {
-
-  private PartitionPropertyResolver partitionPropertyResolver;
-  private PartitionPropertyNames partitionPropertyNames;
-
-  private TenantInfo tenantInfo;
-  private Driver storage;
-
-  protected static final String BUCKET_NAME = "legal-config";
-  private static final String FILE_NAME = "Legal_COO.json";
-
-  public StorageReaderImpl(
-      TenantInfo tenantInfo,
-      Driver storage,
-      PartitionPropertyResolver partitionPropertyResolver,
-      PartitionPropertyNames partitionPropertyNames) {
-    this.tenantInfo = tenantInfo;
-    this.storage = storage;
-    this.partitionPropertyResolver = partitionPropertyResolver;
-    this.partitionPropertyNames = partitionPropertyNames;
-  }
-
-  @Override
-  public byte[] readAllBytes() {
-    byte[] content = null;
-    try {
-      String tenantBucketName = getTenantBucketName();
-      ObmDestination destination = getDestination();
-      if (Objects.isNull(storage.getBucket(tenantBucketName, destination))) {
-        log.warn("Bucket %s is not existing.".formatted(tenantBucketName));
-        return new byte[0];
-      }
-      Blob blob = storage.getBlob(tenantBucketName, FILE_NAME, destination);
-      if (Objects.isNull(blob)) {
-        log.warn("File %s in bucket %s is not existing.".formatted(FILE_NAME, tenantBucketName));
-      } else {
-        content = storage.getBlobContent(tenantBucketName, FILE_NAME, destination);
-      }
-    } catch (ObmDriverRuntimeException e) {
-      log.error(e.getMessage(), e);
-    }
-    return content == null ? new byte[0] : content;
-  }
-
-  protected String getTenantBucketName() {
-    return partitionPropertyResolver
-        .getOptionalPropertyValue(
-            partitionPropertyNames.getLegalBucketName(), tenantInfo.getDataPartitionId())
-        .orElseGet(
-            () ->
-                this.tenantInfo.getProjectId()
-                    + "-"
-                    + this.tenantInfo.getName()
-                    + "-"
-                    + BUCKET_NAME);
-  }
-
-  private ObmDestination getDestination() {
-    return getDestination(tenantInfo.getDataPartitionId());
-  }
-
-  private ObmDestination getDestination(String dataPartitionId) {
-    return ObmDestination.builder().partitionId(dataPartitionId).build();
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/jobs/AboutToExpireLegalTagPublisherImpl.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/jobs/AboutToExpireLegalTagPublisherImpl.java
deleted file mode 100644
index 45df6710acc6c0621fb7e5278d2733614601ccf8..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/jobs/AboutToExpireLegalTagPublisherImpl.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.opengroup.osdu.legal.jobs;
-
-import org.opengroup.osdu.core.common.model.http.DpsHeaders;
-import org.opengroup.osdu.legal.provider.interfaces.IAboutToExpireLegalTagPublisher;
-import org.opengroup.osdu.legal.jobs.models.AboutToExpireLegalTags;
-
-import org.springframework.stereotype.Service;
-
-@Service
-public class AboutToExpireLegalTagPublisherImpl implements IAboutToExpireLegalTagPublisher {
-    @Override
-    public void publish(String projectId, DpsHeaders headers, AboutToExpireLegalTags aboutToExpireLegalTags) {
-        // to be implemented
-    }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/jobs/LegalTagPublisherImpl.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/jobs/LegalTagPublisherImpl.java
deleted file mode 100644
index 0ef72160906a8369ce4605cfe35a0b02797b6609..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/jobs/LegalTagPublisherImpl.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2021 Google LLC
- * Copyright 2021 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.jobs;
-
-import static java.util.Arrays.asList;
-
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonElement;
-import java.time.Instant;
-import java.util.HashMap;
-import java.util.Map;
-import jakarta.annotation.PostConstruct;
-import lombok.RequiredArgsConstructor;
-import org.opengroup.osdu.core.common.model.http.DpsHeaders;
-import org.opengroup.osdu.core.common.model.legal.StatusChangedTags;
-import org.opengroup.osdu.core.gcp.oqm.driver.OqmDriver;
-import org.opengroup.osdu.core.gcp.oqm.model.OqmDestination;
-import org.opengroup.osdu.core.gcp.oqm.model.OqmMessage;
-import org.opengroup.osdu.core.gcp.oqm.model.OqmTopic;
-import org.opengroup.osdu.legal.config.GcpAppServiceConfig;
-import org.opengroup.osdu.legal.logging.AuditLogger;
-import org.opengroup.osdu.legal.provider.interfaces.ILegalTagPublisher;
-import org.springframework.stereotype.Service;
-
-@Service
-@RequiredArgsConstructor
-public class LegalTagPublisherImpl implements ILegalTagPublisher {
-
-  private final AuditLogger auditLogger;
-  private final GcpAppServiceConfig config;
-  private final OqmDriver driver;
-
-  private OqmTopic oqmTopic = null;
-
-  @PostConstruct
-  void postConstruct() {
-    oqmTopic = OqmTopic.builder().name(config.getPubSubLegalTagsTopic()).build();
-  }
-
-  public void publish(String projectId, DpsHeaders headers, StatusChangedTags statusChangedTags)
-      throws Exception {
-
-    OqmDestination oqmDestination = OqmDestination.builder().partitionId(headers.getPartitionId())
-        .build();
-
-    String json = generatePubSubMessage(statusChangedTags);
-
-    Map<String, String> attributes = new HashMap<>();
-    attributes.put(DpsHeaders.ACCOUNT_ID, headers.getPartitionIdWithFallbackToAccountId());
-    attributes.put(DpsHeaders.DATA_PARTITION_ID, headers.getPartitionIdWithFallbackToAccountId());
-    headers.addCorrelationIdIfMissing();
-    attributes.put(DpsHeaders.CORRELATION_ID, headers.getCorrelationId());
-
-    OqmMessage oqmMessage = OqmMessage.builder().data(json).attributes(attributes).build();
-
-    driver.publish(oqmMessage, oqmTopic, oqmDestination);
-
-    auditLogger.publishedStatusChangeSuccess(
-        asList(Long.toString(Instant.now().getEpochSecond()), statusChangedTags.toString()));
-
-  }
-
-  private String generatePubSubMessage(StatusChangedTags statusChangedTags) {
-    Gson gson = new GsonBuilder().create();
-    JsonElement statusChangedTagsJson = gson.toJsonTree(statusChangedTags, StatusChangedTags.class);
-
-    return statusChangedTagsJson.toString();
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/logging/formatter/GoogleJsonFormatter.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/logging/formatter/GoogleJsonFormatter.java
new file mode 100644
index 0000000000000000000000000000000000000000..2e4f231a62651abdd6eda4c4b9123474d4f986f9
--- /dev/null
+++ b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/logging/formatter/GoogleJsonFormatter.java
@@ -0,0 +1,31 @@
+/*
+ *  Copyright 2020-2024 Google LLC
+ *  Copyright 2020-2024 EPAM Systems, Inc
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+package org.opengroup.osdu.legal.logging.formatter;
+
+import ch.qos.logback.contrib.jackson.JacksonJsonFormatter;
+import java.io.IOException;
+import java.util.Map;
+
+public class GoogleJsonFormatter extends JacksonJsonFormatter {
+	@Override
+	public String toJsonString(Map map) throws IOException {
+		map.put("severity", map.get("level"));
+		map.remove("level");
+		return super.toJsonString(map);
+	}
+}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/mappers/osm/OsmTypeMapperImpl.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/mappers/osm/OsmTypeMapperImpl.java
deleted file mode 100644
index 967851aabaf47b8baa0e47869030cbd3bf64cd26..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/mappers/osm/OsmTypeMapperImpl.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright 2021 Google LLC
- * Copyright 2021 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.mappers.osm;
-
-import static org.springframework.beans.factory.config.BeanDefinition.SCOPE_SINGLETON;
-
-import com.google.cloud.Timestamp;
-import com.google.cloud.datastore.Key;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import org.opengroup.osdu.core.common.model.legal.LegalTag;
-import org.opengroup.osdu.core.gcp.osm.persistence.IdentityTranslator;
-import org.opengroup.osdu.core.gcp.osm.translate.Instrumentation;
-import org.opengroup.osdu.core.gcp.osm.translate.TypeMapper;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
-import org.springframework.context.annotation.Scope;
-import org.springframework.stereotype.Component;
-
-/**
- * All Entity classes used in translation should be registered here even if don't need custom
- * settings. Each class is represented as Instrumentation object. At least class objects and rules
- * for Identity translation should be provided.oi
- */
-@Component
-@Scope(SCOPE_SINGLETON)
-@ConditionalOnProperty(name = "osmDriver")
-public class OsmTypeMapperImpl extends TypeMapper {
-
-  public OsmTypeMapperImpl() {
-    super(Arrays.asList(
-        new Instrumentation<>(LegalTag.class,
-            new HashMap<String, String>() {{
-              put("countryOfOrigin", "COO");
-              put("createdDate", "created");
-            }},
-            new HashMap<String, Class<?>>() {{
-              put("created", Timestamp.class);
-              put("expirationDate", Timestamp.class);
-              put("isValid", Boolean.class);
-            }},
-            new IdentityTranslator<>(LegalTag::getId,
-                (r, o) -> r.setId(((Key) o).getId())),
-            Collections.singletonList("id"))));
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/security/SecurityConfiguration.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/security/SecurityConfiguration.java
deleted file mode 100644
index b92b7d0584e6f38f64c0dea6c1e23c677ea4f19a..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/security/SecurityConfiguration.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- *  Copyright 2020-2024 Google LLC
- *  Copyright 2020-2024 EPAM Systems, Inc
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.opengroup.osdu.legal.security;
-
-import static org.springframework.security.config.Customizer.withDefaults;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
-import org.springframework.security.config.annotation.web.builders.HttpSecurity;
-import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
-import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;
-import org.springframework.security.config.http.SessionCreationPolicy;
-import org.springframework.security.web.SecurityFilterChain;
-
-@Configuration
-@EnableWebSecurity
-@EnableMethodSecurity
-public class SecurityConfiguration {
-
-  private static final String[] AUTH_ALLOW_LIST = {
-    "/",
-    "/index.html",
-    "/api-docs.yaml",
-    "/api-docs/swagger-config",
-    "/api-docs/**",
-    "/swagger",
-    "/swagger-ui.html",
-    "/swagger-ui/**",
-    "/legaltags",
-    "/legaltags/**",
-    "/legaltags:batchRetrieve",
-    "/legaltags:validate",
-    "/legaltags:properties",
-    "/legaltags:query",
-    "/jobs/updateLegalTagStatus",
-    "/info",
-    "/_ah/liveness_check",
-    "/_ah/readiness_check",
-    "/health/**"
-  };
-
-  @Bean
-  public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
-    http.cors(AbstractHttpConfigurer::disable)
-        .csrf(AbstractHttpConfigurer::disable)
-        .sessionManagement(
-            session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
-        .authorizeHttpRequests(
-            authorize ->
-                authorize.requestMatchers(AUTH_ALLOW_LIST).permitAll().anyRequest().denyAll())
-        .httpBasic(withDefaults());
-    return http.build();
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/tags/LegalTagRepositoryFactoryGcpImpl.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/tags/LegalTagRepositoryFactoryGcpImpl.java
deleted file mode 100644
index 500c6d6e68a8eb86c7b0279627978b195fd1c032..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/tags/LegalTagRepositoryFactoryGcpImpl.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2021 Google LLC
- * Copyright 2021 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.tags;
-
-import java.util.HashMap;
-import java.util.Map;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.java.Log;
-import org.apache.commons.lang3.StringUtils;
-import org.opengroup.osdu.core.common.model.http.AppException;
-import org.opengroup.osdu.core.common.model.http.DpsHeaders;
-import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
-import org.opengroup.osdu.legal.provider.interfaces.ILegalTagRepository;
-import org.opengroup.osdu.legal.provider.interfaces.ILegalTagRepositoryFactory;
-import org.opengroup.osdu.legal.tags.dataaccess.OsmLegalTagRepository;
-import org.springframework.context.annotation.Primary;
-import org.springframework.stereotype.Service;
-
-@Service
-@Primary
-@Log
-@RequiredArgsConstructor
-public class LegalTagRepositoryFactoryGcpImpl implements ILegalTagRepositoryFactory {
-
-  private final Map<String, ILegalTagRepository> tenantRepositories = new HashMap<>();
-  private final TenantInfo tenantInfo;
-  private final OsmLegalTagRepository osmLegalTagRepository;
-
-
-  @Override
-  public ILegalTagRepository get(String tenantName) {
-    if (StringUtils.isBlank(tenantName)) {
-      throw invalidTenantGivenException(tenantName);
-    }
-    return osmLegalTagRepository;
-  }
-
-  AppException invalidTenantGivenException(String tenantName) {
-    return new AppException(403, "Forbidden",
-        String.format("You do not have access to the %s, value given %s",
-            DpsHeaders.DATA_PARTITION_ID, tenantName));
-  }
-}
diff --git a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/tags/dataaccess/OsmLegalTagRepository.java b/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/tags/dataaccess/OsmLegalTagRepository.java
deleted file mode 100644
index a523a56bf509db3ccdfa0c683eebd2f976d30729..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/java/org/opengroup/osdu/legal/tags/dataaccess/OsmLegalTagRepository.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Copyright 2021 Google LLC
- * Copyright 2021 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.tags.dataaccess;
-
-
-import static org.opengroup.osdu.core.gcp.osm.model.where.predicate.Eq.eq;
-import static org.springframework.beans.factory.config.BeanDefinition.SCOPE_SINGLETON;
-
-import com.google.common.base.Preconditions;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Objects;
-import java.util.concurrent.locks.ReentrantLock;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.java.Log;
-import org.opengroup.osdu.core.common.model.http.AppException;
-import org.opengroup.osdu.core.common.model.legal.LegalTag;
-import org.opengroup.osdu.core.common.model.legal.ListLegalTagArgs;
-import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
-import org.opengroup.osdu.core.gcp.osm.model.Destination;
-import org.opengroup.osdu.core.gcp.osm.model.Kind;
-import org.opengroup.osdu.core.gcp.osm.model.Namespace;
-import org.opengroup.osdu.core.gcp.osm.model.query.GetQuery;
-import org.opengroup.osdu.core.gcp.osm.service.Context;
-import org.opengroup.osdu.core.gcp.osm.service.Transaction;
-import org.opengroup.osdu.legal.provider.interfaces.ILegalTagRepository;
-import org.springframework.context.annotation.Scope;
-import org.springframework.stereotype.Repository;
-
-@Repository
-@Scope(SCOPE_SINGLETON)
-@Log
-@RequiredArgsConstructor
-public class OsmLegalTagRepository implements ILegalTagRepository {
-
-  private final Context context;
-  private final TenantInfo tenantInfo;
-
-  public static final Kind LEGAL_TAGS_ENTITY_NAME = new Kind("LegalTagOsm");
-  private ReentrantLock lock = new ReentrantLock();
-
-  private Destination getDestination() {
-    return Destination.builder().partitionId(tenantInfo.getDataPartitionId())
-        .namespace(new Namespace(tenantInfo.getName())).kind(LEGAL_TAGS_ENTITY_NAME).build();
-  }
-
-  @Override
-  public Long create(LegalTag legalTag) {
-    Preconditions.checkNotNull(legalTag, "Legal tag is null!");
-    Preconditions.checkNotNull(legalTag.getId(), "Legal tag's id is null!");
-
-    Long id = -1L;
-    if (Objects.nonNull(legalTag)) {
-
-      Transaction txn = null;
-      GetQuery<LegalTag> query = new GetQuery<>(LegalTag.class, getDestination(),
-          eq("name", legalTag.getName()));
-      try {
-        txn = context.beginTransaction(getDestination());
-        lock.lock();
-        if (context.findOne(query).isPresent()) {
-          txn.rollbackIfActive();
-          throw new AppException(409,
-              "A LegalTag already exists for the given name",
-              "A LegalTag already exists for the given name");
-        } else {
-          LegalTag result = context.createAndGet(legalTag, getDestination());
-          txn.commitIfActive();
-          return result.getId();
-        }
-      } finally {
-        lock.unlock();
-        if (Objects.nonNull(txn)) {
-          txn.rollbackIfActive();
-        }
-
-      }
-    }
-    return id;
-  }
-
-  @Override
-  public Collection<LegalTag> get(long[] ids) {
-    List<LegalTag> output = new ArrayList<>();
-
-    if (Objects.nonNull(ids) && ids.length > 0) {
-      for (long id : ids) {
-        GetQuery<LegalTag> osmQuery = new GetQuery<>(LegalTag.class, getDestination(),
-            eq("id", id));
-        LegalTag legalTag = context.getOne(osmQuery);
-        if (Objects.nonNull(legalTag)) {
-          output.add(legalTag);
-        }
-      }
-    }
-    return output;
-  }
-
-  @Override
-  public Boolean delete(LegalTag legalTag) {
-    context.deleteById(LegalTag.class, getDestination(), legalTag.getId());
-    return true;
-  }
-
-  @Override
-  public LegalTag update(LegalTag newLegalTag) {
-    LegalTag legalTag = null;
-    if (Objects.nonNull(newLegalTag)) {
-      Transaction txn = context.beginTransaction(getDestination());
-      try {
-        legalTag = context.upsertAndGet(newLegalTag, getDestination());
-        txn.commitIfActive();
-      } finally {
-        txn.rollbackIfActive();
-      }
-    }
-
-    return legalTag;
-  }
-
-  @Override
-  public Collection<LegalTag> list(ListLegalTagArgs args) {
-    GetQuery<LegalTag> osmQuery = new GetQuery<>(LegalTag.class, getDestination(),
-        eq(IS_VALID, args.getIsValid()));
-    List<LegalTag> results = context.getResultsAsList(osmQuery);
-    if (Objects.nonNull(results) && !results.isEmpty()) {
-      return results;
-    }
-    return Collections.emptyList();
-  }
-}
diff --git a/provider/legal-gc/src/main/resources/application-anthos.properties b/provider/legal-gc/src/main/resources/application-anthos.properties
deleted file mode 100644
index 10a6cbe192d9bfdd20218d8ed952c4d4bfd093c2..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/main/resources/application-anthos.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-partition-auth-enabled=false
-obmDriver=minio
-osmDriver=postgres
-oqmDriver=rabbitmq
\ No newline at end of file
diff --git a/provider/legal-gc/src/main/resources/application.properties b/provider/legal-gc/src/main/resources/application.properties
index bced51b354510336680c98a67770302614157c4c..a300ae2e7731a2b458d974bee1540363ec7deb80 100644
--- a/provider/legal-gc/src/main/resources/application.properties
+++ b/provider/legal-gc/src/main/resources/application.properties
@@ -35,3 +35,5 @@ management.server.port=${MANAGEMENT_SERVER_PORT:8081}
 management.endpoints.web.base-path=${MANAGEMENT_ENDPOINTS_WEB_BASE:/}
 management.endpoints.web.exposure.include=health
 management.health.probes.enabled=true
+
+osdu.service=legal
\ No newline at end of file
diff --git a/provider/legal-gc/src/main/resources/logback.xml b/provider/legal-gc/src/main/resources/logback.xml
index 8d6d9b1400206861a237843f40787180ea67fdc7..7eaf77ec03619b29dcae3c3a25a6fb2c995577c8 100644
--- a/provider/legal-gc/src/main/resources/logback.xml
+++ b/provider/legal-gc/src/main/resources/logback.xml
@@ -23,7 +23,7 @@
           <timestampFormatTimezoneId>Etc/UTC</timestampFormatTimezoneId>
           <appendLineSeparator>true</appendLineSeparator>
 
-          <jsonFormatter class="org.opengroup.osdu.core.gcp.logging.formatter.GoogleJsonFormatter">
+          <jsonFormatter class="org.opengroup.osdu.legal.logging.formatter.GoogleJsonFormatter">
             <prettyPrint>false</prettyPrint>
           </jsonFormatter>
         </layout>
diff --git a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/InvalidCooRule.java b/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/InvalidCooRule.java
deleted file mode 100644
index ff0e64c61904ce662dbbf3434cd219217c63b25b..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/InvalidCooRule.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package org.opengroup.osdu.legal;
-
-import org.opengroup.osdu.core.common.model.legal.Properties;
-import org.opengroup.osdu.core.common.model.legal.validation.rules.Rule;
-
-public class InvalidCooRule extends Rule {
-    @Override
-    public boolean shouldCheck(Properties properties) {
-        return true;
-    }
-
-    @Override
-    protected String hasError(Properties properties) {return String.format("Invalid country of origin set. It should match one of the ISO alpha 2 codes and be a country with no restriction on data residency. Found: %s.", properties.getCountryOfOrigin());}
-}
diff --git a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/MockRule.java b/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/MockRule.java
deleted file mode 100644
index 0966cd72b1b96a02ec4d6f7347a04d4c7ea6488d..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/MockRule.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package org.opengroup.osdu.legal;
-
-import org.opengroup.osdu.core.common.model.legal.Properties;
-import org.opengroup.osdu.core.common.model.legal.validation.rules.Rule;
-
-public class MockRule extends Rule {
-    @Override
-    public boolean shouldCheck(Properties properties) {
-        return true;
-    }
-
-    @Override
-    protected String hasError(Properties properties) {return "";}
-}
\ No newline at end of file
diff --git a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/countries/PropertiesMock.java b/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/countries/PropertiesMock.java
deleted file mode 100644
index 3500a2cf691030e0e2cabff994b2c1247553f893..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/countries/PropertiesMock.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.opengroup.osdu.legal.countries;
-
-import org.opengroup.osdu.core.common.model.legal.CountryCodes;
-
-import java.util.Arrays;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-public class PropertiesMock {
-        public static Map<String,String> validOrdcs = Arrays.stream(CountryCodes.values()).filter(
-            c -> c.getResidencyRisk() != CountryCodes.RESIDENCY_RISK.EMBARGOED)
-            .collect(Collectors.toMap(CountryCodes::getAlpha2, CountryCodes::getName));
-
-        public static Map<String,String> coos = Arrays.stream(CountryCodes.values()).filter(
-            c -> c.getResidencyRisk() == CountryCodes.RESIDENCY_RISK.NO_RESTRICTION ||
-                    c.getResidencyRisk() == CountryCodes.RESIDENCY_RISK.NOT_ASSIGNED ||
-                    c.getResidencyRisk() == CountryCodes.RESIDENCY_RISK.CLIENT_CONSENT_REQUIRED)
-            .collect(Collectors.toMap(CountryCodes::getAlpha2, CountryCodes::getName));
-}
diff --git a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/countries/StorageReaderImplTests.java b/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/countries/StorageReaderImplTests.java
deleted file mode 100644
index 9cc6f58ec062cfa349db85f2469bf517dd766f8e..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/countries/StorageReaderImplTests.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Copyright 2020-2023 Google LLC
- * Copyright 2020-2023 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opengroup.osdu.legal.countries;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.InjectMocks;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.mockito.junit.MockitoJUnitRunner;
-import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
-import org.opengroup.osdu.core.common.partition.PartitionPropertyResolver;
-import org.opengroup.osdu.core.gcp.obm.driver.Driver;
-import org.opengroup.osdu.core.gcp.obm.model.Blob;
-import org.opengroup.osdu.core.gcp.obm.model.Bucket;
-import org.opengroup.osdu.core.gcp.obm.persistence.ObmDestination;
-import org.opengroup.osdu.legal.config.PartitionPropertyNames;
-
-import java.util.Optional;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.powermock.api.mockito.PowerMockito.when;
-
-@RunWith(MockitoJUnitRunner.class)
-public class StorageReaderImplTests {
-
-  private static final String TENANT_1 = "tenant1";
-  private static final String FILE_NAME = "Legal_COO.json";
-  private static final String BUCKET_FULL_NAME = "tenant1-tenant1-legal-config";
-
-  @Mock private TenantInfo tenantInfo;
-
-  @Mock private Driver storage;
-
-  @Mock private PartitionPropertyNames partitionPropertyNames;
-
-  @Mock private PartitionPropertyResolver partitionPropertyResolver;
-
-  @InjectMocks private StorageReaderImpl sut;
-
-  @Before
-  public void setup() {
-    MockitoAnnotations.initMocks(this);
-  }
-
-  @Test
-  public void should_returnAllBytes_when_bucketExistsAndFileExist() {
-    when(tenantInfo.getName()).thenReturn(TENANT_1);
-    when(tenantInfo.getDataPartitionId()).thenReturn(TENANT_1);
-    when(tenantInfo.getProjectId()).thenReturn(TENANT_1);
-    when(storage.getBucket(BUCKET_FULL_NAME, getDestination())).thenReturn(new Bucket(TENANT_1));
-    when(storage.getBlob(BUCKET_FULL_NAME, FILE_NAME, getDestination()))
-        .thenReturn(Blob.builder().build());
-    byte[] expectedBytes = "test".getBytes();
-    when(storage.getBlobContent(BUCKET_FULL_NAME, FILE_NAME, getDestination()))
-        .thenReturn(expectedBytes);
-
-    byte[] bytes = sut.readAllBytes();
-    assertEquals(expectedBytes, bytes);
-  }
-
-  @Test
-  public void should_returnEmptyArray_when_bucketNotExists() {
-    when(tenantInfo.getName()).thenReturn(TENANT_1);
-    when(tenantInfo.getDataPartitionId()).thenReturn(TENANT_1);
-    when(tenantInfo.getProjectId()).thenReturn(TENANT_1);
-
-    byte[] bytes = sut.readAllBytes();
-    assertTrue(bytes.length == 0);
-  }
-
-  @Test
-  public void should_returnEmptyArray_when_FileBucketNull() {
-    when(tenantInfo.getName()).thenReturn(TENANT_1);
-    when(tenantInfo.getDataPartitionId()).thenReturn(TENANT_1);
-    when(tenantInfo.getProjectId()).thenReturn(TENANT_1);
-    when(storage.getBucket(BUCKET_FULL_NAME, getDestination())).thenReturn(new Bucket(TENANT_1));
-    when(storage.getBlob(BUCKET_FULL_NAME, FILE_NAME, getDestination()))
-        .thenReturn(Blob.builder().build());
-    when(storage.getBlobContent(BUCKET_FULL_NAME, FILE_NAME, getDestination())).thenReturn(null);
-
-    byte[] bytes = sut.readAllBytes();
-    assertTrue(bytes.length == 0);
-  }
-
-  @Test
-  public void should_returnBucketName_fromPartition() {
-    when(partitionPropertyNames.getLegalBucketName()).thenReturn("partition-bucket-name");
-    when(partitionPropertyResolver.getOptionalPropertyValue(
-            partitionPropertyNames.getLegalBucketName(), tenantInfo.getDataPartitionId()))
-        .thenReturn(Optional.of("partition-bucket-name"));
-    StorageReaderImpl storageReader =
-        new StorageReaderImpl(
-            tenantInfo, storage, partitionPropertyResolver, partitionPropertyNames);
-
-    String resultBucketName = storageReader.getTenantBucketName();
-    assertEquals("partition-bucket-name", resultBucketName);
-  }
-
-  private ObmDestination getDestination() {
-    return ObmDestination.builder().partitionId(TENANT_1).build();
-  }
-}
diff --git a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/tags/LegalTagRepositoryFactoryTest.java b/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/tags/LegalTagRepositoryFactoryTest.java
deleted file mode 100644
index 6f60d27dcf9e974cc85e04a9604e01a76b1d059b..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/tags/LegalTagRepositoryFactoryTest.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2021 Google LLC
- * Copyright 2021 EPAM Systems, Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.opengroup.osdu.legal.tags;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.opengroup.osdu.core.common.model.http.AppException;
-import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
-import org.opengroup.osdu.legal.provider.interfaces.ILegalTagRepositoryFactory;
-import org.opengroup.osdu.legal.tags.dataaccess.OsmLegalTagRepository;
-
-public class LegalTagRepositoryFactoryTest {
-
-  private static final String TENANT_1 = "tenant1";
-  private OsmLegalTagRepository osmLegalTagRepository;
-
-  @Before
-  public void init() {
-  }
-
-  @Test(expected = AppException.class)
-  public void should_throwAppException_when_givenBlankName() {
-    TenantInfo tenantInfo = new TenantInfo();
-    tenantInfo.setName(TENANT_1);
-    ILegalTagRepositoryFactory sut = new LegalTagRepositoryFactoryGcpImpl(tenantInfo,
-        osmLegalTagRepository);
-    sut.get("");
-  }
-
-  @Test(expected = AppException.class)
-  public void should_throwAppException_when_tenantIsNull() {
-    TenantInfo tenantInfo = new TenantInfo();
-    ILegalTagRepositoryFactory sut = new LegalTagRepositoryFactoryGcpImpl(tenantInfo,
-        osmLegalTagRepository);
-    sut.get(null);
-  }
-
-}
diff --git a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/tags/LegalTestUtils.java b/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/tags/LegalTestUtils.java
deleted file mode 100644
index 4f87242610b93f161d50573c680cfbcac6417e4a..0000000000000000000000000000000000000000
--- a/provider/legal-gc/src/test/java/org/opengroup/osdu/legal/tags/LegalTestUtils.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.opengroup.osdu.legal.tags;
-
-import org.opengroup.osdu.core.common.model.legal.Properties;
-import org.opengroup.osdu.legal.tags.dto.LegalTagDto;
-import org.opengroup.osdu.legal.tags.dto.UpdateLegalTag;
-import org.opengroup.osdu.core.common.model.legal.LegalTag;
-
-import static org.opengroup.osdu.core.common.model.legal.Properties.DEFAULT_EXPIRATIONDATE;
-
-import java.util.ArrayList;
-import java.sql.Date;
-
-public class LegalTestUtils {
-    public static LegalTag createValidLegalTag(String name){
-        LegalTag legalTag = new LegalTag();
-        legalTag.setProperties(createValidProperties());
-        legalTag.setName(name);
-        legalTag.setIsValid(false);
-        legalTag.setDefaultId();
-        return legalTag;
-    }
-    public static Properties createValidProperties(){
-        Properties properties = new Properties();
-        properties.setCountryOfOrigin(new ArrayList<String>(){{add("USA");}});
-        properties.setExpirationDate(new Date(System.currentTimeMillis()));
-        properties.setOriginator("MyCompany");
-        properties.setContractId("Unknown");
-        properties.setDataType("Tranferred Data");
-        properties.setPersonalData("Sensitive Personal Information");
-        properties.setSecurityClassification("Confidential");
-        properties.setExportClassification("ECCN");
-        return properties;
-    }
-    public static UpdateLegalTag createUpdateLegalTag(String name){
-        UpdateLegalTag legalTag = new UpdateLegalTag();
-        legalTag.setExpirationDate(DEFAULT_EXPIRATIONDATE);
-        legalTag.setContractId("abc123");
-        legalTag.setName(name);
-        legalTag.setDescription("myDescription");
-        return legalTag;
-    }
-    public static LegalTagDto createValidLegalTagDto(String name){
-        return LegalTagDto.convertTo(createValidLegalTag(name));
-    }
-}