diff --git a/gxcloudstorage-awss3-v1/pom.xml b/gxcloudstorage-awss3-v1/pom.xml index e5f2ab5ae..4235dfb1c 100644 --- a/gxcloudstorage-awss3-v1/pom.xml +++ b/gxcloudstorage-awss3-v1/pom.xml @@ -13,12 +13,13 @@ gxcloudstorage-awss3-v1 GeneXus AWS S3 (V1) Cloud Storage - - - ${project.groupId} - gxclassR - ${project.version} - + + + ${project.groupId} + gxclassR + ${project.version} + test + com.genexus gxcloudstorage-common diff --git a/gxcloudstorage-awss3-v1/src/main/java/com/genexus/db/driver/ExternalProviderS3V1.java b/gxcloudstorage-awss3-v1/src/main/java/com/genexus/db/driver/ExternalProviderS3V1.java index 830e92e11..bebdc4c84 100644 --- a/gxcloudstorage-awss3-v1/src/main/java/com/genexus/db/driver/ExternalProviderS3V1.java +++ b/gxcloudstorage-awss3-v1/src/main/java/com/genexus/db/driver/ExternalProviderS3V1.java @@ -8,7 +8,6 @@ import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import com.amazonaws.HttpMethod; -import com.genexus.Application; import com.genexus.util.GXService; import com.genexus.util.StorageUtils; import com.genexus.StructSdtMessages_Message; @@ -29,6 +28,7 @@ import java.util.Date; import java.util.List; + public class ExternalProviderS3V1 extends ExternalProviderBase implements ExternalProvider { private static Logger logger = LogManager.getLogger(ExternalProviderS3V1.class); @@ -74,10 +74,6 @@ public String getName(){ return NAME; } - public ExternalProviderS3V1(String service) throws Exception{ - this(Application.getGXServices().get(service)); - } - public ExternalProviderS3V1() throws Exception{ super(); initialize(); diff --git a/gxcloudstorage-awss3-v2/pom.xml b/gxcloudstorage-awss3-v2/pom.xml index 283598786..2cf8236c8 100644 --- a/gxcloudstorage-awss3-v2/pom.xml +++ b/gxcloudstorage-awss3-v2/pom.xml @@ -18,6 +18,7 @@ ${project.groupId} gxclassR ${project.version} + test com.genexus diff --git a/gxcloudstorage-awss3-v2/src/main/java/com/genexus/db/driver/ExternalProviderS3V2.java b/gxcloudstorage-awss3-v2/src/main/java/com/genexus/db/driver/ExternalProviderS3V2.java index a250db53b..c5576bc4e 100644 --- a/gxcloudstorage-awss3-v2/src/main/java/com/genexus/db/driver/ExternalProviderS3V2.java +++ b/gxcloudstorage-awss3-v2/src/main/java/com/genexus/db/driver/ExternalProviderS3V2.java @@ -19,7 +19,6 @@ import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; -import com.genexus.Application; import com.genexus.util.GXService; import com.genexus.util.StorageUtils; import com.genexus.StructSdtMessages_Message; @@ -80,10 +79,6 @@ public String getName() { return NAME; } - public ExternalProviderS3V2(String service) throws Exception { - this(Application.getGXServices().get(service)); - } - public ExternalProviderS3V2() throws Exception { super(); initialize(); diff --git a/gxcloudstorage-azureblob/pom.xml b/gxcloudstorage-azureblob/pom.xml index af5675dce..ca586d19a 100644 --- a/gxcloudstorage-azureblob/pom.xml +++ b/gxcloudstorage-azureblob/pom.xml @@ -18,6 +18,7 @@ ${project.groupId} gxclassR ${project.version} + test com.genexus diff --git a/gxcloudstorage-azureblob/src/main/java/com/genexus/db/driver/ExternalProviderAzureStorage.java b/gxcloudstorage-azureblob/src/main/java/com/genexus/db/driver/ExternalProviderAzureStorage.java index 332aa47c0..ed25d917b 100644 --- a/gxcloudstorage-azureblob/src/main/java/com/genexus/db/driver/ExternalProviderAzureStorage.java +++ b/gxcloudstorage-azureblob/src/main/java/com/genexus/db/driver/ExternalProviderAzureStorage.java @@ -1,6 +1,5 @@ package com.genexus.db.driver; -import com.genexus.Application; import com.genexus.StructSdtMessages_Message; import com.genexus.util.GXService; import com.genexus.util.StorageUtils; @@ -47,9 +46,6 @@ public class ExternalProviderAzureStorage extends ExternalProviderBase implement private String privateContainerName; private String publicContainerName; - public ExternalProviderAzureStorage(String service) throws Exception { - this(Application.getGXServices().get(service)); - } private void init() throws Exception { try { diff --git a/gxcloudstorage-common/pom.xml b/gxcloudstorage-common/pom.xml index 0d255c645..8f8724f1c 100644 --- a/gxcloudstorage-common/pom.xml +++ b/gxcloudstorage-common/pom.xml @@ -16,9 +16,24 @@ ${project.groupId} - gxclassR + gxcommon ${project.version} + + org.apache.logging.log4j + log4j-core + ${log4j.version} + + + org.apache.logging.log4j + log4j-api + ${log4j.version} + + + org.apache.logging.log4j + log4j-api + ${log4j.version} + diff --git a/gxcloudstorage-common/src/main/java/com/genexus/db/driver/ExternalProviderBase.java b/gxcloudstorage-common/src/main/java/com/genexus/db/driver/ExternalProviderBase.java index 9d6fc7ed1..852495cb1 100644 --- a/gxcloudstorage-common/src/main/java/com/genexus/db/driver/ExternalProviderBase.java +++ b/gxcloudstorage-common/src/main/java/com/genexus/db/driver/ExternalProviderBase.java @@ -32,6 +32,17 @@ public ExternalProviderBase(GXService s) { init(); } + + /** + * Starts the necessary processes required for the usage of an External Object. + * This method ensures that the Provider is installed correctly before any + * operations are performed. It should be called at the beginning to set up + * the environment for the External Object. + */ + public void start() { + + } + private void init() { String aclS = getPropertyValue(DEFAULT_ACL, DEFAULT_ACL_DEPRECATED, ""); if (aclS.length() > 0) { diff --git a/gxcloudstorage-googlecloudstorage/pom.xml b/gxcloudstorage-googlecloudstorage/pom.xml index 7decd8b39..05eeecf7f 100644 --- a/gxcloudstorage-googlecloudstorage/pom.xml +++ b/gxcloudstorage-googlecloudstorage/pom.xml @@ -18,6 +18,7 @@ ${project.groupId} gxclassR ${project.version} + test com.genexus diff --git a/gxcloudstorage-googlecloudstorage/src/main/java/com/genexus/db/driver/ExternalProviderGoogle.java b/gxcloudstorage-googlecloudstorage/src/main/java/com/genexus/db/driver/ExternalProviderGoogle.java index 729245e9b..7c39c45a0 100644 --- a/gxcloudstorage-googlecloudstorage/src/main/java/com/genexus/db/driver/ExternalProviderGoogle.java +++ b/gxcloudstorage-googlecloudstorage/src/main/java/com/genexus/db/driver/ExternalProviderGoogle.java @@ -1,6 +1,5 @@ package com.genexus.db.driver; -import com.genexus.Application; import com.genexus.StructSdtMessages_Message; import com.genexus.util.GXService; import com.genexus.util.StorageUtils; @@ -57,10 +56,6 @@ public ExternalProviderGoogle() throws Exception{ initialize(); } - public ExternalProviderGoogle(String service) throws Exception{ - this(Application.getGXServices().get(service)); - } - public ExternalProviderGoogle(GXService providerService) throws Exception{ super(providerService); initialize(); diff --git a/gxcloudstorage-ibmcos/pom.xml b/gxcloudstorage-ibmcos/pom.xml index 5ba1e55c1..4299e1acb 100644 --- a/gxcloudstorage-ibmcos/pom.xml +++ b/gxcloudstorage-ibmcos/pom.xml @@ -18,6 +18,7 @@ ${project.groupId} gxclassR ${project.version} + test com.genexus diff --git a/gxcloudstorage-ibmcos/src/main/java/com/genexus/db/driver/ExternalProviderIBM.java b/gxcloudstorage-ibmcos/src/main/java/com/genexus/db/driver/ExternalProviderIBM.java index 5d3977647..b38c8eb4b 100644 --- a/gxcloudstorage-ibmcos/src/main/java/com/genexus/db/driver/ExternalProviderIBM.java +++ b/gxcloudstorage-ibmcos/src/main/java/com/genexus/db/driver/ExternalProviderIBM.java @@ -1,9 +1,7 @@ package com.genexus.db.driver; -import com.genexus.Application; import com.genexus.StructSdtMessages_Message; import com.genexus.util.GXService; -import com.genexus.util.GXServices; import com.genexus.util.StorageUtils; import com.ibm.cloud.objectstorage.ClientConfiguration; import com.ibm.cloud.objectstorage.HttpMethod; @@ -25,7 +23,6 @@ import java.util.Date; import java.util.List; - public class ExternalProviderIBM extends ExternalProviderBase implements ExternalProvider { private static Logger logger = LogManager.getLogger(ExternalProviderIBM.class); @@ -57,14 +54,10 @@ public class ExternalProviderIBM extends ExternalProviderBase implements Externa private String endpointUrl; private int defaultExpirationMinutes = DEFAULT_EXPIRATION_MINUTES; - /* For compatibility reasons with GX16 U6 or lower*/ - public ExternalProviderIBM() throws Exception { - this(GXServices.STORAGE_SERVICE); - } - - public ExternalProviderIBM(String service) throws Exception { - this(Application.getGXServices().get(service)); - } + public ExternalProviderIBM() throws Exception{ + super(); + init(); + } public ExternalProviderIBM(GXService providerService) throws Exception { super(providerService); diff --git a/gxcloudstorage-tests/pom.xml b/gxcloudstorage-tests/pom.xml index ce7d00c0a..41c583267 100644 --- a/gxcloudstorage-tests/pom.xml +++ b/gxcloudstorage-tests/pom.xml @@ -20,36 +20,36 @@ ${project.version} - com.genexus + ${project.groupId} gxcloudstorage-common ${project.version} - com.genexus + ${project.groupId} gxcloudstorage-ibmcos ${project.version} test - com.genexus + ${project.groupId} gxcloudstorage-googlecloudstorage ${project.version} test - com.genexus + ${project.groupId} gxcloudstorage-azureblob ${project.version} test - com.genexus + ${project.groupId} gxcloudstorage-awss3-v1 ${project.version} test - com.genexus + ${project.groupId} gxcloudstorage-awss3-v2 ${project.version} test diff --git a/java/src/main/java/com/genexus/Application.java b/java/src/main/java/com/genexus/Application.java index 9b3c0e3f4..1366d03f2 100644 --- a/java/src/main/java/com/genexus/Application.java +++ b/java/src/main/java/com/genexus/Application.java @@ -184,7 +184,7 @@ private static ExternalProvider getExternalProviderImpl(String service) throw new InternalError("Unrecognized External Provider class (ClassNotFound) : " + providerService.getName() + " / " + providerService.getClassName()); } try { - externalProviderImpl = (ExternalProvider) providerClass.getConstructor(String.class).newInstance(service); + externalProviderImpl = (ExternalProvider) providerClass.getConstructor(GXService.class).newInstance(providerService); } catch (Exception e) {